on 11-30-2007 11:29 AM
<b>Hi All,</b>
I<b> am trying to import a wsdl file through SE80 to generate a client proxy. The wsdl file is as follows</b>:
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsd1="http://www.opentravel.org/OTA/2002/11" xmlns:tns="https://webservices.sabre.com/websvc" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" targetNamespace="https://webservices.sabre.com/websvc">
<types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="http://www.opentravel.org/OTA/2002/11" schemaLocation="SessionValidateRQRS.xsd"/>
<xsd:import namespace="http://www.ebxml.org/namespaces/messageHeader" schemaLocation="msg-header-2_0.xsd"/>
<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
<xsd:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
<xsd:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="envelope.xsd"/>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<xsd:import namespace="http://schemas.xmlsoap.org/ws/2002/12/secext" schemaLocation="wsse.xsd"/>
</xsd:schema>
</types>
<message name="GetSessionValidateInput">
<part name="header" element="eb:MessageHeader"/>
<part name="header2" element="wsse:Security"/>
<part name="body" element="xsd1:SessionValidateRQ"/>
</message>
<portType name="SessionValidatePortType">
<operation name="SessionValidateRQ">
<input message="tns:GetSessionValidateInput"/>
</operation>
</portType>
<binding name="SessionValidateSoapBinding" type="tns:SessionValidatePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="SessionValidateRQ">
<soap:operation soapAction="OTA"/>
<input>
<soap:header message="tns:GetSessionValidateInput" part="header" use="literal"/>
<soap:header message="tns:GetSessionValidateInput" part="header2" use="literal"/>
<soap:body parts="body" use="literal"/>
</input>
</operation>
</binding>
<service name="SessionValidateRQService">
<port name="SessionValidatePortType" binding="tns:SessionValidateSoapBinding">
<soap:address location="https://webservices.sabre.com/websvc"/>
</port>
</service>
</definitions>
<b>When I tried to import this, there was an error mentioning "Proxy generation terminated: Message must have exactly one part".
Now when I removed the header and header2 from input message like below, I was able to generate the proxy. </b>
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsd1="http://www.opentravel.org/OTA/2002/11" xmlns:tns="https://webservices.sabre.com/websvc" xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" targetNamespace="https://webservices.sabre.com/websvc">
<types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="http://www.opentravel.org/OTA/2002/11" schemaLocation="SessionValidateRQRS.xsd"/>
<xsd:import namespace="http://www.ebxml.org/namespaces/messageHeader" schemaLocation="msg-header-2_0.xsd"/>
<xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
<xsd:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
<xsd:import namespace="http://schemas.xmlsoap.org/soap/envelope/" schemaLocation="envelope.xsd"/>
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<xsd:import namespace="http://schemas.xmlsoap.org/ws/2002/12/secext" schemaLocation="wsse.xsd"/>
</xsd:schema>
</types>
<message name="GetSessionValidateInput">
<part name="body" element="xsd1:SessionValidateRQ"/>
</message>
<portType name="SessionValidatePortType">
<operation name="SessionValidateRQ">
<input message="tns:GetSessionValidateInput"/>
</operation>
</portType>
<binding name="SessionValidateSoapBinding" type="tns:SessionValidatePortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="SessionValidateRQ">
<soap:operation soapAction="OTA"/>
<input>
<soap:body parts="body" use="literal"/>
</input>
</operation>
</binding>
<service name="SessionValidateRQService">
<port name="SessionValidatePortType" binding="tns:SessionValidateSoapBinding">
<soap:address location="https://webservices.sabre.com/websvc"/>
</port>
</service>
</definitions>
<b>I would like to know, if it is possible to generate the proxy without removing these nodes since these nodes are very important for my scenario.
Thank you,
Geetha</b>
Hi Geeta,
What you can do is that as you have an .WSLDL file saved in a destination. Now goto Integration Repository of XI then under Interface Objects you have "External Definitions" import the .WSDL as an external destination then now you can find the your requirments for message interfaces are imported. Then create an Outbound or Inbound Message Interface as per your requirements. Activate it in XI
If all the connections are fine with XI system and your R/3 system, your Proxy Structure is created.
Hope this Helps you...
Regards,
KishoreJ.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Geetha ,
To me your approach seems to be perfectly alright..
Just for the making it doubly sure ..Kindly go through..
http://help.sap.com/saphelp_nw04/helpdata/en/81/845f3c31727d59e10000000a114084/content.htm
@chirag
SPROXY is on of the way of Proxy generation not the sole one..
Regards,
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Chirag,
I am trying to consume a SOAP web-service like mentioned in the blog
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1012. [original link is broken] [original link is broken] [original link is broken]
Can you please help me out here?
Thank you,
Geetha
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HI,
For proxy generation you have to go to SPROXy transaction at R3 end and which will generate the ABAP classes and methods and structure which you have created in SAP XI.
Can u pls explain what you want to achieve?
Thnx
Chirag Gohil
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
83 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.