Question: SOAP Adapter

Hello friends,
I have a question on soap adapter.
I am trying to convert an IDoc into an XML and then using SOAP adapter i want to post that XML into a web service.
I searched many threads but without much help.
Can anyone of you guide me as to how to go about this problem?
Thanks,
Lakshmi

Hello lakshmi,
Although i don' have a link to Blog, but here are the steps.
1. Import the source idoc in to the external defintions from the source system.
2. Import targer Webservice WSDL
3. Create target message interface using Message Type from WSDL. You don't need to create sorce message interface as this will be the IDOC interface itself.
4. Create message mapping and Interface mapping as needed beteen source and target. remeber that you will be calling webserice asynchronously.
5. In the ID, create Interface determination, receiver determination. You will not need any sender agreement. Ask Basis guys to include a new partner profile in source system sending IDOC for Your XI system.
These are just basic steps.
Let me know if you need any elaboration.
SOAP adapter configuration link:-
http://help.sap.com/saphelp_nw04/helpdata/en/69/a6fb3fea9df028e10000000a1550b0/frameset.htm
Thanks
-Kulwant
Assign Score if useful
Edited by: Kulwant Bhatia on Dec 23, 2008 4:23 PM

Similar Messages

  • Receiver SOAP adapter - User authentication question

    XI experts,
    Here is the scenario - IDOC > XI > SOAP - Ansynchronous call..
    I need your all help to understand the user authentication on the "Receiver SOAP Adapter"... We are using "HTTP" transport protocol.
    I believe, the userid which we entered in the communication channel needs to have proper security on the web server. The Web server URL starts with "http://lsme
    01.xyz.com/...." .
    Question : Is this usrid and password will be encrypted when XI calls this web service?
    If an answer is "NO" then is there anyway we can encrypt it?
    Thanks in advance!
    Points will be given..
    MP

    XI experts,
    I need an answer to the following question....
    The Web server URL starts with "http://lsme01.xyz.com/...." .
    Question : Is this usrid and password will be encrypted when XI calls this web service?
    If an answer is "NO" then is there anyway we can encrypt it?
    Thanks in advance!
    Points will be given..
    MP

  • Mapping related errors in SOAP Adapter scenario

    Hello Friends
    I have done this several times and in this particular case I am getting some errors.
    Here is the scenario
    External  --- (SOAP) ---  XI  -
    (RFC) -
    SAP TABLE.
    Program
    I have created an XSD (External definition) to get the data to XI using SOAP Adapter.
    I have done the mapping and everything looks Ok to me. I even restarted my XI server. All other scenarios are working except for this particular scenario in question.
    When I looked at <SXMB_MONI> I see the xml string coming in correctly with proper tags and data as expected.
    However, it is failing with some mapping errors.
    Here is the error message I got in SXMB_MONI
    Any help will be greatly appreciated.
      <Trace level="1" type="T">Interface Mapping http://cincom.com/config AddConfigDNA</Trace>
      <Trace level="1" type="T">RuntimeException during appliction Java mapping com/sap/xi/tf/_AddConfigDNARequest_</Trace>
      <Trace level="1" type="T">com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:403) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.mappingtool.tf3.IllegalInstanceException: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:283) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:398) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</Trace>
      <Trace level="1" type="T">Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_AddConfigDNARequest_: com.sap.aii.utilxi.misc.api.BaseRuntimeException; RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd</Trace>
      <Trace level="1" type="T">com.sap.aii.ibrun.server.mapping.MappingRuntimeException: Runtime exception occurred during execution of application mapping program com/sap/xi/tf/_AddConfigDNARequest_: com.sap.aii.utilxi.misc.api.BaseRuntimeException; RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:73) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:403) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170) Root Cause: com.sap.aii.mappingtool.tf3.IllegalInstanceException: Cannot produce target element /ns1:ZBAPI_ADD_CONFIG_DNA. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.processNode(AMappingProgram.java:283) at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:398) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:141) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at com.sap.aii.ibrun.server.mapping.JavaMapping.executeStep(JavaMapping.java:64) at com.sap.aii.ibrun.server.mapping.Mapping.execute(Mapping.java:91) at com.sap.aii.ibrun.server.mapping.MappingHandler.run(MappingHandler.java:90) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleMappingRequest(MappingRequestHandler.java:95) at com.sap.aii.ibrun.sbeans.mapping.MappingRequestHandler.handleRequest(MappingRequestHandler.java:68) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceImpl.processFunction(MappingServiceImpl.java:79) at com.sap.aii.ibrun.sbeans.mapping.MappingServiceObjectImpl0.processFunction(MappingServiceObjectImpl0.java:131) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187) at $Proxy177.processFunction(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.call(RFCDefaultRequestHandler.java:219) at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:169) at com.sap.engine.services.rfcengine.RFCJCOServer.handleRequest(RFCJCOServer.java:156) at com.sap.mw.jco.JCO$Server.dispatchRequest(JCO.java:7701) at com.sap.mw.jco.MiddlewareJRfc$Server.dispatchRequest(MiddlewareJRfc.java:2376) at com.sap.mw.jco.MiddlewareJRfc$Server.listen(MiddlewareJRfc.java:1700) at com.sap.mw.jco.JCO$Server.listen(JCO.java:8061) at com.sap.mw.jco.JCO$Server.work(JCO.java:8181) at com.sap.mw.jco.JCO$Server.loop(JCO.java:8128) at com.sap.mw.jco.JCO$Server.run(JCO.java:8044) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(Native Method) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</Trace>
      <Trace level="1" type="E">CL_XMS_PLSRV_MAPPING~ENTER_PLSRV</Trace>
      </Trace>
      <Trace level="1" type="B" name="CL_XMS_MAIN-WRITE_MESSAGE_TO_PERSIST" />
    - <!--  ************************************
      -->
      </SAP:Trace>
      </SOAP:Header>
    - <SOAP:Body>
    - <SAP:Manifest xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:wsu="http://www.docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsuid-manifest-5CABE13F5C59AB7FE10000000A1551F7">
    - <SAP:Payload xlink:href="cid:[email protected]">
      <SAP:Name>MainDocument</SAP:Name>
      <SAP:Description>Main XML document</SAP:Description>
      <SAP:Type>Application</SAP:Type>
      </SAP:Payload>
      </SAP:Manifest>
      </SOAP:Body>
      </SOAP:Envelope>

    Hi Ram,
    This error is due to error in message mapping.The map rules you have specified for the Node: "ZBAPI_ADD_CONFIG_DNA" is not getting satisfies due to which it is unable to create the Node who occurance is mandatory.Check if map rule specified for this particular Node.
    Thanks,
    Bhargav.
    Note:Award Points if found useful

  • Error in Receiver Soap Adapter for Google API

    Hi,
    I am working on HTTP-XI-Soap scenario which on the receiver side calls google API for spell check.
    I get the following error : <b>No Deserializer found to deserialize a ':key' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.</b>
    However if I try calling the webservice individually using SOAP Client it works fine and do get desired response.The soap message that is sent by the client to the target URL is :
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:GoogleSearch" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <soapenv:Body>
          <urn:doSpellingSuggestion soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
             <key xsi:type="xsd:string">qXWD4x1QFHIo/dePqlYOLwT7kMmkv80E</key>
             <phrase <b>xsi:type="xsd:string"</b>>Bratney</phrase>
          </urn:doSpellingSuggestion>
       </soapenv:Body>
    </soapenv:Envelope>
    However if i remove the "xsi:type="xsd:string" part from the element 'phrase' and 'key' it returns the same error as it does while using with XI.
    Hence I am assuming that that the outgoing soap message elements need to have the above highlighed attribute.
    Now I want to have this attribute(xsi:type="xsd:string) in the soap message that is sent from XI.
    My question is , Is there any setting using which I can add the attributes in the above form to the outgoing message from XI.I do not want to use a adapter Module.
    Thanks & Regards,
    Sidharth

    Hi Sidharth,
    You post here the soap message that is sent by the client to the target URL, but did you look to the soap message that is sent by XI?
    Try the AF monitor http://<host>:<j2ee-port>//MessagingSystem/monitor/monitor.jsp?
    Because XI soap adapter doesn't support all tags of wsdl rpc-based, we need to adjust them...
    Look to the SOAP FAQ (SAP note number 856597) under question "Can I convert an RPC styled WSDL to a document styled WSDL?"... Look at last but one paragraph ;o)
    So, you need to change this attribute to one that it is compatible...
    Go to http://service.sap.com/xi > Media Library > Documentation and there you will find this xls document -> SAP XI 3.0 (SP11) - Supported XML Schema and WSDL (EN) in this document you have all the compatible elements of wsdl for XI.
    One more thing, you can adjust your soap request and change or add the required tags You can do it with xslt-mapping or create your won data types in XI without import the WSDL generated by google. 
    Hope it helps,
    Ricardo.
    Message was edited by: Ricardo  Quintino

  • HTTP Header fields in SOAP adapter - Part 2

    Hi All,
    With regards to my previous thread HTTP Header fields in SOAP adapter
    my header issue is solved and hence I have closed the thread but still I am not able to make the connection successful. The new problem is below
    My vendor requirement is to specify the header as "Ent-sender" but when we give the same in XI in communication channel it automatically convets into uppercase "ENT-SENDER".  Due to case-sensitive in vendor server the connection is not gettingestablished.
    Please help me out how to solve the problem.
    <b>Note:</b> Sorry for the new thread as it was created due to new problem and also the previuos thread is already too long.
    Regards,
    Dhill

    Hi Neaves,
      Thank you, I jave seen the note and find the below solution will be some what realated to my prblem.
    <u><b>The nosoap mode lets the adapter send the XI payload directly without wrapping it in the SOAP envelope. Although the main use of this mode is to send some plain text content directly to some web server, one can use this mode to send their own SOAP message (e.g., with arbitrary headers) to an external web service (See related questions). In this case, the XI payload must be formatted in the SOAP envelope.
               To use the nosoap mode, the channel must be configured to use no SOAP envelope.</b></u>
    If yes, can you please let me know how to use nosoap mode otherise let me the other possibilities.  I am already using tcpg2.zip to trace the SOAP adapter in which it was confirmed that XI is changing the header automatically into CAPS whatever case we give,
    Regards,
    Dhill

  • Following message failing in sender soap adapter

    Hi all,
    The message below fails when it is sent to our adapter with a 500 error from a webmethods server. however if I pull the soap message out of the mime, and use our client test tool, it posts fine.
    What is wrong with the message below?
    Message-ID:<28413146.1155935375732.JavaMail.webmethods@exshaw>
    MIME-Version: 1.0
    Content-Type: multipart/related; type="text/xml"; boundary=X-K12456234-X
    X-K12456234---X
    content-type: text/xml;charset=UTF-8
    content-transfer-encoding: 7bit
    Content-ID: <SES>
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/1999/XMLSchema"
    xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">
    <SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"></SOAP-ENV:Header>
    <SOAP-ENV:Body>
    <nr1:ServiceAcknowledgementRequest xmlns:nr1="http://sap.com/xi/SAPGlobal/Global">
            <MessageHeader>
                    <ID schemeID="0240">74000003400000000020060329170547</ID>
                    <CreationDateTime>2006-03-29T17:05:47Z</CreationDateTime>
                    <SenderParty>
                            <InternalID schemeID="PartnerID" schemeAgencyID="SSR_100">6000000011</InternalID>
                    </SenderParty>
                    <RecipientParty>
                            <InternalID schemeID="PartnerID" schemeAgencyID="SSR_100">0000000236</InternalID>
                    </RecipientParty>
            </MessageHeader>
            <ServiceAcknowledgement>
                    <ID schemeAgencyID="SSR_100" schemeAgencySchemeAgencyID="ZZZ">7400000340</ID>
                    <BuyerID>7400000340</BuyerID>
                    <CreationDateTime>2006-03-29T17:03:55Z</CreationDateTime>
                    <Note>Service Entry Sheet#1</Note>
                    <Item>
                            <ID>10</ID>
                            <Quantity unitCode="EA">5.0</Quantity>
                            <Product>
                                    <TypeCode>1</TypeCode>
                                    <Note>Test Service</Note>
                            </Product>
                            <Price>
                                    <NetUnitPrice>
                                            <Amount currencyCode="USD">1.0</Amount>
                                         <BaseQuantity unitCode="EA">1.0</BaseQuantity>
                                   </NetUnitPrice>
                           </Price>
                           <PurchaseOrderReference>
                                   <ID>2000000742</ID>
                                   <ItemID>1</ItemID>
                           </PurchaseOrderReference>
                    </Item>
            </ServiceAcknowledgement>
    </nr1:ServiceAcknowledgementRequest>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    X-K12456234---X—

    Hi Richard,
    I think, it is because of the Autorization Problem..i.e
    Webservice is not able to execute by SOAP adapter.. So Security Roles etc..
    Check this SAP SOAP Note for FAQ-856597 (Question No 1)
    A similar symptom is mentioned in this note....
    Regards,
    Abhy

  • Sender SOAP Adapter: zipped Payload or zipped Attachement possible?

    Hi,
    I've a SOAP --> PI --> Proxy Scenario. As the payload of the message can become quite huge (around 10MB), I'd like to zip the message.
    From the documentation it's not clear for me if the Sender SOAP Adapter can be enhanced with the standard PayloadZipBean:
    "You cannot add your own modules to this adapter" --> so is it possible to use modules provided by SAP?
    If it's not possible: is there another way to send the message zipped via SOAP, e.g. as a additional attachement to the SOAP message, and to unzip the attachement / use the content of it as message payload for mapping?
    Please note: usage of SOAP is a must for that scenario.
    Best regards
    Holger

    > File size is a question due to limited network speed between sender and PI. If I can reduce the data package to be transferred, it'd be a big help. Therefore I'd like to zip the message.
    In this case it would be sufficient to use Content-Encoding gzip.
    This is part of the HTTP protocol and will be unzipped automatically by the HTTP framework, so you need not do anything special in SOAP adapter.
    See http://tools.ietf.org/html/rfc2616#section-14.11
    Check if your SOAP client is able to use that.
    Regards
    Stefan
    Edited by: Stefan Grube on Mar 31, 2009 2:11 PM

  • PI 7.1 problems publishing a WSDL of a sender soap adapter

    We have upgraded our dev system from XI 3.0 to PI 7.1 and now I'm facing a problem with SOAP adapter. I have searched for answers here for a while but couldnu2019t find them. That why I start an own thread.
    I thought with PI 7.1 it is very easy to publish the WSDL of SOAP adapter respectively a sender agreement. All you have to do is to choose your sender agreement and select the menu item "display WSDL" There you can get the WSDL and a WSDL URL. So it would be possible to deliver this URL to my partners. But while checking this URL respectively the delivered WSDL I've found a problem.
    First of all the the WSDL URL doesn't look really good:
    http://<server>:<port>/dir/wsdl?p=1_1ce2e954fe9632818bfff6c32f370748_portTypeBindingService
    But it works. If I call this URL with a browser or with XML Spy I get the correct WSDL. Any chance to get a better readable URL?
    The next thing is the proposed soap:address location  in the WSDL. It has the following form:
    http://<server>:<port>/XISOAPAdapter/MessageServlet?senderParty=&amp;senderService=MYSERVICE&amp;receiverParty=&amp;receiverService=&amp;interface=MYINTERFACE&amp;interfaceNamespace=MYNAMESPACE"
    If I compare it with the documentation i can see that the URL is completely different.
    http://help.sap.com/saphelp_nwpi71/helpdata/en/43/951aceb1146353e10000000a11466f/frameset.htm
    But again if it works all is fine but it doesn't work at least it doesnt work with XML Spy. The reason is the use of "& a m p ;" instead of only "&".
    If I create a SOAP request with XML Spy an sent it to the XI I get the following error message: " Couldn't retrieve inbound binding for the given P/S/A values: FP=;TP=;FS=null;TS=null;AN=null;ANS=null;"
    But if I change the SOAP request parameters replacing all the "& a m p ;" with "&" then it works.
    Any chance to manage this? If I provide a WSDL on this way I want that my partners can use this "out of the box"

    Kulwant
    Yes of course I can change that manually but therefore I have to save the WSDL to my local hard disc, change the WSDL and send it to my partner via mail. This is exactly the way I've done this till now. But with PI 7.1 I like to use the new opportunities.
    Bhavesh
    I have also no Service Repository till now. That's the reason why I want to use the way described in my initial post.
    In PI 7.1 you can open the corresponding sender agreement of you SOAP adapter. There you find a menu item "display WSDL". If you choose this you get a window which displays the correct WSDL and an URL where you can find the WSDL too. If you copy this URL to a browser you get the same WSDL too.
    http://help.sap.com/saphelp_nwpi71/helpdata/en/31/daa0404dd52b54e10000000a1550b0/content.htm
    First part of my question is regarding to this URL. The URL has a strange format.
    The second part is regarding to the form of soap:address in this generated WSDL. Here I have problems with the use of this "& a m p ;" string. But I have no influence on it. If I deliver my partners the obove mentioned URL to the WSDL and the WSDL contains this soap:address URL my partner will probably have the same problem like I with my XML Spy.
    Gaurav
    I don't understand you answer. I know the correct soap address but the IB tool generates it with this "& a m p ;" string instead of only "&". Thatu2019s the point. No idea if and how I can handle this.
    But thank you for the note number. Was helpful. The number is in the online documentation too but I've read over it.
    To bad that the online documentation isn't correct regarding to the soap address. But believe me the German version is even worse. There you can find the two soap adapter settings (XI parameter: interface namespace, interface) that are no longer existed in PI 7.1
    Now I will test if a .NET application can handle this soap address correctly.
    Edited by: Gil Ritter on Nov 14, 2008 11:25 AM

  • Using the Axis Framework in the SOAP Adapter

    Hello experts,
    I am currenty checking how I can easily manipulate sender and receiver details and how I could get attachments into XI.
    I saw in the sap help that it is possible to use the AXIS framework from the SOAP adapter:
    http://help.sap.com/saphelp_nw04/helpdata/en/45/a39e244b030063e10000000a11466f/frameset.htm
    As usual, the documentation is of the same quality SAP usually provides.
    So my first question would be: This is a moduke to be used from the SOAP adapter right? I am asking because they also wirte about the AXIS adapter and its metadata.
    In oder to get it working, I created in the NWDStudio a library project, added my libraries (to the root directory) and deployed it via SDM. Deployment is succesful but its not working.
    SAPHelp says I should check for a MessageServlet - I ask myself how that could appear suddenly just by packaging some axis libraries...?
    I am using for that the ESA box (NW04s SP6) - I was not able to see whether there are some dependencies to the SP - are they?
    Thanks for your support!
    Helge

    Helge,
    Axis is outdated and has some issues ..use Apache Soap instead its much better and easy to use.
    http://ws.apache.org/soap/
    Regards
    Ravi

  • SOAP Adapter sender/receiver commnunication channel?

    Hello everybody,
    I wonder how to configure the commnunication channel for the SOAP-Adapter. If XI triggers a webService (acts like a WebService client) then XI expects a response from the WebService. The first step seems to me as a receive-step. Then I wonder how XI gets the response?
    Thanks a lot
    Mario

    hi,
    >>>The first step seems to me as a receive-step.
    why? it's a send step
    if you want to do it in a sync way then
    XI does not loose connection and it waits
    for the response
    if you want to understand little bit more
    sync calls have a look at this weblog:
    /people/arpit.seth/blog/2005/06/27/rfc-scenario-using-bpm--starter-kit
    the rfc call is done in a sync way
    the same can be done with SOAP
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions">XI FAQ - Frequently Asked Questions</a>

  • How to setup SOAP Adapter in order to include BinarySecurityToken element

    Hi,
      I am building an integration scenario where I need to configure a SOAP receiver that will include the BinarySecurityToken element (as described in http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf). The value of the element must be the hash value of the canonicalisation on the XML using SHA-1 hash algorithm and encode it in Base64. Is there a way to configure the SOAP adapter receiver channel to perform such a task? I have see the security settings in the channel and the setting in the receiver agreement but I am not sure how to produce the value as above. Any help is appreciated.
    Regards,
    S.Socratous

    Kiran look into this
    As per my knowledge any RFC - enabled function can be exposed as a webservice which can be consumed by any application written in any language directly..
    an XI message interface can also be exposed as a Webservice.
    RFC is function-oriented webservice.
    XI interface is integration webservice
    Check the following blogs for webserivces
    /people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1
    /people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions
    /people/sap.user72/blog/2005/11/22/xi-faqs-provided-by-sap-updated
    /people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    /people/siva.maranani/blog/2005/03/01/testing-xi-exposed-web-services
    /people/michal.krawczyk2/blog/2005/03/29/configuring-the-sender-rfc-adapter--step-by-step
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/2131 [original link is broken] [original link is broken] [original link is broken] [original link is broken]
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/336365d3-0401-0010-9884-a651295aeaa9
    Webservice Development
    Consuming webservice
    /thread/122211 [original link is broken]
    Regards
    Sreeram.G.Reddy

  • Security Issues: SSL on SOAP Adapter and Digital Signature in BPM

    Hi there,
    we're developing a R/3-XI-3rd Party Application scenario, where the XI/3rd Party communication is based on a webservice (SOAP adapter with SSL). Also, the messages in the XI/3rd Party communication must be digitally signed. I've got some questions on both subjects.
    1. About the SSL. I've started to investigate what will be necessary to enable the HTTPS option under SOAP Adapter (it's not enabled now). If I'm not correct, all I need to do is:
    - check whether the SAP Java Crypto Lib is installed in the Web AS;
    - generate the certificate request in the Visual Administrator and, after acquiring the certificate, store it with the KeyStorage option.
    Is that right?
    I'm considering that I won't need to use SSL in the ABAP Web AS, only the J2EE Java Engine (since the SOAP Adapter is based on J2EE).
    2. About the digital signature. As a first solution, we had decided on accessing a webservice based on another machine running a signature application. We'd send the unsigned XML and receive a signed XML. But since that needed to be done into the BPM, I thought that using a piece of Java code in a mapping would suit it better.
    But to be able to use the hashing/encrypting/encoding algorithms, which library needs to be installed? Is it the same SAP Java Crypto Lib that was installed for the SSL enabling?
    Thanks in advance!

    Hello Henrique,
    1. You're right. For detailed instructions please have a look at the online help: http://help.sap.com/nw04 - Security - Network and Transport Layer Security - Transport Layer Security on the SAP J2EE Engine
    2. The SOAP adapter supports security profiles. Please have a look at the online docu http://help.sap.com/nw04 -Process Integration - SAP Exchange Infrastructure - Runtime - Connectivty - Adapters - SOPA Adapter - Configuring the Sender SOAP adapter and from the link under Security Parameters to the Sender Agreement. You'll find some additional information in the following document: http://service.sap.com/~sapdownload/011000358700002767992005E/HowToMLSXI30_02_final.pdf
    Rgds.,
    Andreas

  • SOAP adapter: port, logging/tracing, http/https

    Hi,
    several questions concerning SOAP adapter:
    SAP XI 3.0 SP19 used.
    <b>Scenario 1:</b>
    SOAP request adressing J2EE port
    http://host:8000/XISOAPAdapter/MessageServlet?channel=Partner:Service:SOAPSenderChannel
    <b>Scenario 2:</b>
    SOAP request adressing ABAP port
    http://host:50000/XISOAPAdapter/MessageServlet?channel=Partner:Service:SOAPSenderChannel
    <b>Question 1:</b>
    What happens with a SOAP request adressed to the ABAP port?
    Obviously it is forwarded to the J2EE port but where is this forwarding function documented
    and is it allowed in every case to send SOAP messages to ABAP port?
    <b>Question 2:</b>
    What logging and tracing functionalities do i have in both scenarios before the message enters (before RWB)?
    E.g. where can i see unsuccessful requests (e.g. if there is mistyping in SenderChannel).
    Then it not visible in Runtime Workbench but whereelse?
    If the ABAP port is adressed i see something in SMICM trace file, but very cryptic and not conclusive.
    Do you know further trace/log files for both scenarios (Visual Admin?) ?
    <b>Question 3:</b>
    What is the difference if https is used concerning logs and traces?
    Do i have more or less possibilities?
    Thank you very much in advance for comments.
    Michael

    Hi
    The URL sent to the ABAP port and the J2EE port are different.
    The URL to the ABAP port is documented in this blog by Stefan,
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    http://<server>:<ABAP-port>/sap/xi/engine?type=entry&version=3.0&Sender.Service=<YourService>&Interface=<YourNamespace>%5E<YourInterface>
    Answering question 1 --> As the URL are different, the Request in case of the ABAP stack hits the Integration Engine directly - into the pipeline of XI and bypassed the Adapter Engine competely.
    As stefan's blog states - you cannot post multipart SOAP request to the IE directly.
    Question 2  - If the URL is incorrect, if the request hits XI then you will have the log in XI  ( in MONI in case of ABAP port ) and in RWB -Message Monitroing ( in case of J2EE port)
    Regards
    Bhavesh

  • SOAP adapter in XI3.0 using J2EE adapter engine

    Folks,
    I have a scenario SOAP client -> XI 3.0
    I am using XI 3.0 and the J2EE adapter framework to configure a sender SOAP adapter. I do not have a Party, just the service and the channel.
    I tried using the following url format:
    http://<server>:50000/XISOAPAdapter/MessageServlet?channel
    =:<service name>:<channel name>
    When I use this in my SOAP client , I get an 401 forbidden error in the browser. However when I type this url directly in the browser and I get:
    Message Servlet is in Status OK
    Status information:
    Servlet com.sap.aii.af.mp.soap.web.MessageServlet (Version $Id: //tc/aii/30_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#5 $) bound to /MessageServlet
    Classname ModuleProcessor: null
    Lookupname for localModuleProcessorLookupName: localejbs/ModuleProcessorBean
    Lookupname for remoteModuleProcessorLookupName: null
    ModuleProcessorClass not instantiated
    ModuleProcessorLocal is Instance of com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0
    ModuleProcessorRemote not instantiated
    A couple of questions:
    1. Inspite of configuring the sender SOAP adapter, the sender service and the interface, I still cannot see the green light for the SOAP adapter in rumtime workbench->adapter monitoring.
    Although the communication channel (in intergration builder- design)shows the status of the adapter as "active"
    Does this mean that my SOAP adapter is correctly configured and active?
    2. The above mentioned url takes the ABAP engine login/password while the J2EE engine (AFW)takes a different login/password. Which authentication should the SOAP client use?
    Thanks for your help!
    Shailesh

    Post your message to following URL:
    http://host:port/XISOAPAdapter/MessageServlet?channel=party:service:channel
    port is the J2EE port 50000 in your example.
    Check the newest manual for further details.
    Regards
    Stefan

  • Call ABAP-Proxy with SOAP adapter?

    Hi all,
    for a PI7.1-scenario I would like to use the Lookup-API in mapping. As I know I can use either RFC or SOAP channels, however I would rather call an ABAP-Proxy in my backend system instead.
    So my question is: Is it technically possible to use the SOAP-adapter to call an ABAP-Proxy?
    Your help would be appreciated, best regards
    David

    Hi Stefan,
    Interesting answer here and one that has got me curious. Hope you can help.
    1. When you say it is going to be possible to call a ABAP proxy using a  UDF in the mapping of XI ( Lookup ), would it be using the WS Adapter of PI 7.1?
    2. If 1 is yes, is there a new API code to do this, or is it the same lookup code as used previously in XI 3.0 and PI 7.0 Days?
    3. If 1 is no, can you explain maybe a little more on how this would be possible using the standard SOAP adapter of XI?
    Thanks a bunch.
    Regards
    Bhavesh

Maybe you are looking for

  • IPhone 6 Plus Stuck in Portrait Mode Only

    Today, my iPhone 6 Plus stopped switching to landscape mode and only works in portrait.  The glitch is even there when watching a video in, say, the CNN or IGN Apps. I know the iPad has a switch to lock the screen rotation, but didn't think the phone

  • Xml in JTree: how to not collpase JTree node, when renaming XML Node.

    Hi. I'm writing some kind of XML editor. I want to view my XML document in JTree and make user able to edit contents of XML. I made my own TreeModel for JTree, which straight accesses XML DOM, produced by Xerces. Using DOM Events, I made good-looking

  • 2012 MacMini FW connection oddities

    I am currently using a latest gen MacMini, OS 10.8.1, connected to 2 external fw400 HDs and a LaCie FW400 DVD burner (internal unit: Tsstcorp CDDVDW SH_S222A). No problems with both HDs. The DVD burner has behaved in strange ways since I swapped my o

  • How to turning the large dimension query in the Analyzer 6.2?

    Dear expert:I need to query a report in the Analyzer 6.2How to turning the performance in the large sparse dimension query in the Analyzer 6.2 and essbase 6.5.1? ---------------------------------------Report is look like: page : order_date sub_code i

  • Dual cloud dual hub single tier dmvpn with backup service provider

    Hi, I have a design issue with a WAN network. I have decided to use dual cloud dual hub single tier DMVPN topology (ref. to http://www.cisco.com/application/pdf/en/us/guest/netsol/ns171/c649/ccmigration_09186a008075ea98.pdf - "Dynamic Multipoint VPN