powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Перевод кодировки сообщения SOAP
1 сообщений из 1, страница 1 из 1
Перевод кодировки сообщения SOAP
    #35414603
Aniddi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго вам времени суток,
относительно недавно занялась данным вопросом и застряла с следующей проблемой:

Имееться:
2 WSDL один с коддировкой RPC другой с кодировкой Doc Literal
1 SOAP message с коддировкой Doc Literal соответсвующий WSDL

Нужно:
создать SOAP с коддировкой RPC с теми же данными. Для примера у меня есть готовый SOAP RPC созданный "вручную".

Есть ли готовые программы и возможно ли выплнить эту задачу в принципе если да то каким образом (хотя бы в общих чертах) ?

Файлы:
SOAP Doc Literal -
автор<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<BNP_spcTest_spcWebService_Run_Input xmlns="http://siebel.com/asi/BNPTestWeb">
<ListOfDgAccount xmlns="http://www.siebel.com/xml/DG%20Account">
<Account>
<IntegrationId>759369</IntegrationId>
</Account>
</ListOfDgAccount>
<InputArg>2</InputArg>
</BNP_spcTest_spcWebService_Run_Input>
</soap:Body>
</soap:Envelope>

SOAP RPC -
автор<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://siebel.com/asi/BNPTestWeb" xmlns:types="http://siebel.com/asi/BNPTestWeb/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<tns:Run>
<Input_spcIO href="#id1" />
<InputArg xsi:type="xsd:string">2</InputArg>
</tns:Run>
<q1:ListOfDgAccountTopElmt id="id1" xsi:type="q1:ListOfDgAccountTopElmt" xmlns:q1="http://www.siebel.com/xml/DG%20Account">
<ListOfDgAccount href="#id2" />
</q1:ListOfDgAccountTopElmt>
<q2:ListOfDgAccount id="id2" xsi:type="q2:ListOfDgAccount" xmlns:q2="http://www.siebel.com/xml/DG%20Account">
<Account href="#id3" />
</q2:ListOfDgAccount>
<soapenc:Array id="id3" xmlns:q3="http://www.siebel.com/xml/DG%20Account" soapenc:arrayType="q3:Account[1]">
<Item href="#id4" />
</soapenc:Array>
<q4:Account id="id4" xsi:type="q4:Account" xmlns:q4="http://www.siebel.com/xml/DG%20Account">
<IntegrationId xsi:type="xsd:string">759369</IntegrationId>
</q4:Account>
</soap:Body>
</soap:Envelope>


WSDL DOC -
автор<?xml version="1.0" encoding="UTF-8" ?><?Siebel-Property-Set EscapeNames="false"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsdLocal0="http://www.siebel.com/xml/DG%20Account"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://siebel.com/asi/BNPTestWeb" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://siebel.com/asi/BNPTestWeb">
<types>
<xsd:schema elementFormDefault="qualified" xmlns:xsdLocal0="http://www.siebel.com/xml/DG%20Account"
attributeFormDefault="unqualified" targetNamespace="http://www.siebel.com/xml/DG%20Account"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Copyright (C) 2001-2004 Siebel Systems, Inc. All rights reserved. Siebel XSD Generation</xsd:documentation>
</xsd:annotation>
<xsd:element name="ListOfDgAccount" type="xsdLocal0:ListOfDgAccount"></xsd:element>
<xsd:complexType name="ListOfDgAccountTopElmt">
<xsd:sequence>
<xsd:element name="ListOfDgAccount" maxOccurs="1" minOccurs="1" type="xsdLocal0:ListOfDgAccount"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ListOfDgAccount">
<xsd:sequence>
<xsd:element name="Account" maxOccurs="unbounded" minOccurs="0" type="xsdLocal0:Account"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Account">
<xsd:sequence>
<xsd:element name="Id" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="Created" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="Updated" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="ConflictId" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="ModId" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="AccountFirstName" maxOccurs="1" minOccurs="0" type="xsdLocal0:string50"></xsd:element>
<xsd:element name="AccountLastName" maxOccurs="1" minOccurs="0" type="xsdLocal0:string50"></xsd:element>
<xsd:element name="AccountTypeCode" maxOccurs="1" minOccurs="1" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="IntegrationId" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
<xsd:element name="Location" maxOccurs="1" minOccurs="0" type="xsdLocal0:string50"></xsd:element>
<xsd:element name="Name" maxOccurs="1" minOccurs="1" type="xsdLocal0:string100"></xsd:element>
<xsd:element name="Type" maxOccurs="1" minOccurs="0" type="xsdLocal0:string30"></xsd:element>
</xsd:sequence>
<xsd:attribute name="operation" type="xsd:string"></xsd:attribute>
<xsd:attribute name="searchspec" type="xsd:string"></xsd:attribute>
</xsd:complexType>
<xsd:simpleType name="string50">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"></xsd:maxLength>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="string30">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="30"></xsd:maxLength>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="string100">
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"></xsd:maxLength>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
<xsd:schema elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="http://siebel.com/asi/BNPTestWeb"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="BNP_spcTest_spcWebService_Run_Input">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="xsdLocal0:ListOfDgAccount"></xsd:element>
<xsd:element name="InputArg" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="BNP_spcTest_spcWebService_Run_Output">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="xsdLocal0:ListOfDgAccount"></xsd:element>
<xsd:element name="OutputArg" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</types>
<message name="BNP_spcTest_spcWebService_Run_Input">
<part name="BNP_spcTest_spcWebService_Run_Input" element="tns:BNP_spcTest_spcWebService_Run_Input"></part>
</message>
<message name="BNP_spcTest_spcWebService_Run_Output">
<part name="BNP_spcTest_spcWebService_Run_Output" element="tns:BNP_spcTest_spcWebService_Run_Output"></part>
</message>
<portType name="WebTestDocLit">
<operation name="Run">
<input message="tns:BNP_spcTest_spcWebService_Run_Input"></input>
<output message="tns:BNP_spcTest_spcWebService_Run_Output"></output>
</operation>
</portType>
<binding name="WebTestDocLit" type="tns:WebTestDocLit">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"></soap:binding>
<operation name="Run">
<soap:operation soapAction="document/http://siebel.com/asi/BNPTestWeb:Run"></soap:operation>
<input>
<soap:body use="literal"></soap:body>
</input>
<output>
<soap:body use="literal"></soap:body>
</output>
</operation>
</binding>
<service name="BNP_spcWebTestDocLit">
<port binding="tns:WebTestDocLit" name="WebTestDocLit">
<soap:address location="http://172.31.37.140:7360/eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute&UserName=sadmin&Password=sadmin"></soap:address>
</port>
</service>
</definitions>

WSDL RPC -
автор<?xml version="1.0" encoding="UTF-8" ?><?Siebel-Property-Set EscapeNames="false"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsdLocal0="http://www.siebel.com/xml/DG%20Account"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://siebel.com/asi/BNPTestWeb" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://siebel.com/asi/BNPTestWeb">
<types>
<xsd:schema elementFormDefault="qualified" xmlns:xsdLocal0="http://www.siebel.com/xml/DG%20Account"
attributeFormDefault="unqualified" targetNamespace="http://www.siebel.com/xml/DG%20Account"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
<xsd:documentation>Copyright (C) 2001-2004 Siebel Systems, Inc. All rights reserved. Siebel XSD Generation</xsd:documentation>
</xsd:annotation>
<xsd:element name="ListOfDgAccount" type="xsdLocal0:ListOfDgAccount"></xsd:element>
<xsd:complexType name="ListOfDgAccountTopElmt">
<xsd:sequence>
<xsd:element name="ListOfDgAccount" maxOccurs="1" minOccurs="1" type="xsdLocal0:ListOfDgAccount"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ListOfDgAccount">
<xsd:sequence>
<xsd:element name="Account" maxOccurs="1" minOccurs="0" type="xsdLocal0:ArrayOfAccount"></xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ArrayOfAccount">
<xsd:complexContent mixed="false">
<xsd:restriction base="soapenc:Array">
<xsd:attribute aPrefix:arrayType="xsdLocal0:Account[]" ref="soapenc:arrayType" xmlns:aPrefix="http://schemas.xmlsoap.org/wsdl/"></xsd:attribute>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="Account">
<xsd:sequence>
<xsd:element name="Id" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="Created" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="Updated" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="ConflictId" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="ModId" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="AccountFirstName" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="AccountLastName" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="AccountTypeCode" maxOccurs="1" minOccurs="1" type="xsd:string"></xsd:element>
<xsd:element name="IntegrationId" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="Location" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
<xsd:element name="Name" maxOccurs="1" minOccurs="1" type="xsd:string"></xsd:element>
<xsd:element name="Type" maxOccurs="1" minOccurs="0" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</types>
<message name="BNP_spcTest_spcWebService_Run_Input">
<part name="Input_spcIO" type="xsdLocal0:ListOfDgAccountTopElmt"></part>
<part name="InputArg" type="xsd:string"></part>
</message>
<message name="BNP_spcTest_spcWebService_Run_Output">
<part name="Output_spcIO" type="xsdLocal0:ListOfDgAccountTopElmt"></part>
<part name="OutputArg" type="xsd:string"></part>
</message>
<portType name="Web_spcTest">
<operation name="Run">
<input message="tns:BNP_spcTest_spcWebService_Run_Input"></input>
<output message="tns:BNP_spcTest_spcWebService_Run_Output"></output>
</operation>
</portType>
<binding name="Web_spcTest" type="tns:Web_spcTest">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"></soap:binding>
<operation name="Run">
<soap:operation soapAction="rpc/http://siebel.com/asi/BNPTestWeb:Run"></soap:operation>
<input>
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://siebel.com/asi/BNPTestWeb"
use="encoded"></soap:body>
</input>
<output>
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://siebel.com/asi/BNPTestWeb"
use="encoded"></soap:body>
</output>
</operation>
</binding>
<service name="BNP_spcWebTest">
<port binding="tns:Web_spcTest" name="Web_spcTest">
<soap:address location="http://172.31.37.140:7360/eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute&UserName=sadmin&Password=sadmin"></soap:address>
</port>
</service>
</definitions>
Заранее спасибо за помощь .
Дина
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Перевод кодировки сообщения SOAP
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]