SOAP adapter - Tricky scenarios

Can anyone tell me if there are any tricky scenarios with SOAP adapter?
-Naveen.

Hi Naveen,
Here are some scenario which you could practise on..
<a href="/people/rahul.nawale2/blog/2006/05/31/how-to-use-client-authentication-with-soap-adapter">How to use client authentication with SOAP adapter</a>
Try the one mentioned in this thread.. Create Client Proxy Java
Have fun!
cheers,
Prashanth
P.S Please mark helpful answers

Similar Messages

  • 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

  • Acknowledgement for asynch scenario using SOAP adapter

    Hi,
    My scenario is SOAP to proxy asynchronous (using PI 7.1)
    Sender is able to send the messages to XI using HTTPs protocol (SOAP adapter). since this is an asynchronous scenario XI could not send back any application acknowledge .
    I understand if handshake is successful sender can see HTTP code 200 which is success.
    1) Is it possible that though HTTP connection is successful and sender could not pass payload.
    2) Is there any configuration needs to be done in PI 7.1 to send an acknowledge back to assure the sender that XI received payload.
    3) Can we do the above using non BPM scenario.
    or if BPM scenario is mandatory.
    Thanks in advance.

    Hi Vamsi,
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP:Header/>
    <SOAP:Body/>
    </SOAP:Envelope>
    above acknowledgement is seen on SOAP UI as soon as SOAP UI delivers the message to the PI (irrespective of what will happen with the message in the PI).
    As you know in case of Async scenario Application Ack is not possible !
    But if you want to be sure if payload is received successfully the you can use BPM wherein you can have a switch which will check the existance of payload. and as per your requirment you can take a decision.
    Thanks,
    Sunil Singh

  • Soap adapter scenario error

    Hi,
    We are trying to sender messages with attachments from Portal using XI (SYNC) and the scenario is like this:
    Web Service <-> XI <-> web service
    I have completed all the required design and configurations to receive the data using SOAP adapter and send using SOAP adapters.
    For testing with the generated WSDL from Integration directory, when I try to send the SOAP request to server using the XMLSpy I am getting following warning.
    HTTP error: could not POST file on the server (500)
    Does it mean that WSDL generated from the configuration is not correct ?
    Thanks
    Sunil

    Prasad,
    I did not enter the name space and interface in the url while defining the web service.
    Here is what I did in order to define web service for the scenario in the intgration directory after desiging the interface in the IR.
    1.Selected the define web service under tools in the ID.
    2. To specify the URL I have entered the following info as per help documentation for service without party:
    http://<hostname>:50000/XISOAPAdapter/MessageServlet?channel=:DEngine:BMP_Request.
    3. In the specify interface I have selected the outbound interface.
    4. Then specified the service,interface name and inteface namespace as they are required.
    5. With the generated WSDL from XI, using XML Spy I tried to send the request to server and I got the HTTP POST 500 error as I mentioned in the beginning. And here is the error message after I clicked OK on the error message in the XML CDATA tag.
    com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapter:ADAPTER.SOAP_EXCEPTION:soap fault: Server did not recognize the value of HTTP Header SOAPAction:
    Please correct me if I did not followed the procedure correctly in this scenario.
    Thanks
    Sunil

  • Real time scenario for AXIS framework in SOAP adapter

    Hello,
    Can anybody please suggest some real time scenario where AXIS framework can be used
    and what are the advanteges and disadvantages of using AXIS framework
    regards,
    Loveena

    Hi !
    have a look on these links
    Using the Axis Framework in the SOAP Adapter
    http://help.sap.com/saphelp_NW04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/content.htm
    http://help.sap.com/saphelp_nwpi71/helpdata/en/69/a6fb3fea9df028e10000000a1550b0/frameset.htm
    Have a look at this Pdf
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b092777b-ee47-2a10-17b3-c5f59380957f
    Thanks !
    Abhishek

  • Third Party WebService call: SOAP Lookup vs SOAP Adapter Scenario.

    Hello Experts,
    What are the pros and cons of using SOAP Look up in Message Mapping for webService call.
    Previously my scenario was a standard SOAP Adapter Scenario. But it had BPM, so I have designed it via SOAP look up in Message Map to avoid BPM.
    I want to know what are the merits and demerits (In terms of Performance - Payload size:Runtime, Maintanence, Configurability,etc) of using SOAP Look up instead of standard SOAP Scenario.
    Regards,
    Sudharshan N A

    HI,
    I am assuming that you migth have visted this link
    SOAP Lookup - /people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function
    SOAP Look-ups are very much possible and performance wise also its preferrable as compare to BPM.
    Its pretty much simple and easy way to handle it with UDFs.
    The performance could also depend upon what kind of things you need to achive or replacing with BPM.
    If you will be dealing with too many resources in BPM then that creates the performance overloaded issues.
    UDFs also have the performance problems nased on the payload size but very minimal.
    Thanks
    swarup

  • Error while using  soap adapter in webservice to sap system scenario

    Hi everybody,
    i got the error while using saop adapter in scenario(sender webservice----->sap system)
    error is
    HTTP error:couldnot post file
    '/XISOAPAdapter/MessageServlet:Channel=:BS1:SPA.&amp;
    version+3.0&amp;sender.Service=BS1&amp;interface=http%3ASP%5OUTBOUND'on server 'XI03'(500)

    check with ur basis people

  • Issue with Receiver SOAP adapter for synchronous scenario

    Hello All,
    We are facing a strange issue with the SOAP adapter in the interface we have setup. This is the 1st time we are using SOAP adapter in our system (PI 7.11 SP7). We are making a synchronous HTTP call to the web service exposed by another system in our landscape. The payload is send with SOAP envelope and there are no credentials to be maintained in PI settings.
    The issue is that we are always getting timeout exception in PI audit logs after sending the request (3 minutes - standard timeout value, no additional config for this). But target system has confirmed that they are sending the response back. We tested from our server OS level and have received the response back in the same screen (to verify there is no firewall/port issue in between the systems). But when tried from RWB, it is always giving the timeout exception and we are not able to see any other log.
    We have tried checking in the NWA logs as well after increasing the logging level to ALL for com.sap.aii.adapter.soap. But surprisingly, we didn't get any logs at all for the outgoing SOAP call or incoming response and hence we are unable to trace the issue.
    We have setup another synchronous inbound SOAP interface (PI exposing the webservice) and it is working fine. We are also able to trace the logs in both audit log and NWA logs.
    Is there anywhere else we can check for the logs? Audit logs is showing timeout error and we are not able to see anything in NWA logs.
    Does the target system need to maintain PI credentials in the header when they send the synchronous response back?
    Are there any specific settings which should be checked to enable the sync communication? (this should not be the case since the inbound interface is working fine)
    Please help.
    Thanks
    Justin

    Hi Amit,
    Thanks for the reply.
    Yes we had tested successfully via SOAP UI as well (forgot to mention that). We are getting back the expected response in SOAP UI without using any credentials. We got the same response when we tested it through OS commands from PI server.
    The WS is hosted by the target system and they haven't maintained any credentials at their end. So when PI is trying to access, we don't need to provide any credentials. My question is, whether the target system should keep any credentials to send the synchronous response back to PI (java stack). We have tried that as well but since there aren't any logs, we are unable to verify whether the credentials are coming correctly.
    The service interfaces are correct and PI configuration are OK. I will try the XPI inspector for logs as you have suggested.
    Thanks
    Justin

  • SET_PAYLOAD_FAILED error in SOAP to Proxy scenario

    Hi PI Experts,
    We have an inbound syncronus interface (Non sap system to SAP) using the SOAP to Proxy scenario.
    When we test the interface using any soap tool like soapui it is working fine but when the interface is triggered end to end from source system then the below error is getting dispalyed on source system.
    500 Internal Server Error
    In XI below is the error message -
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Inbound Message
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIProxy</SAP:Category>
      <SAP:Code area="ABAP">SET_PAYLOAD_FAILED</SAP:Code>
      <SAP:P1>IN</SAP:P1>
      <SAP:P2>REQUEST</SAP:P2>
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Internal error when completing the message object (setting the payload, direction: IN message: REQUEST)</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Can any please let me know what is the issue here?
    Appreciate your help.
    Regards,
    Jitender

    We had a similar issue with a Synchronous Interface
    The interface worked perfectly when sending the request directly to the integration server, but when sending it using SOAP the issue appeared.
    It was very tricky to solve it because we had similar interfaces that worked without any issues.
    SOLUTION: Create a new Service interface with a new name different from the one failing. And make sure The Message Types are in the same namespace as the service interface.
    Why?:
    The issue turned out to be in the sender agreement, and name-spacing issues.
    Our Outbound Service Interface belonged to one SWCV and ns, We will call it "ns1:SI_A_OUT".
    In PI 7.3, and I believe 7.11 also, the you no longer assign a default interface in the to the SOAP communication channel sender agreement pair.
    Therefore the SOAP adapter determines the soap method from the payload. If The internal message type in the soap message belong to different namespace, the the java method  getMessage() does not find the correct XML node, therefore does not find the payload.
    <"ns1:SI_A_OUT">
    ...<ns2:MT_element>
    getMessage( ns1:MT_element)
    We are not sure if the issue is the implementation of the SOAP protocol or in the WSDL generation. But this issues seem to create orphan object during runtime, and even if you re-implement the complete interface, the sender agreement seems to be corrupt.
    Therefore the only was we could solve this, was to move our MT to the same namespace as the service interface and rename the interface "ns1:SI_A2_OUT"
    Hope this helps someone.
    Juan Francisco Zurita Duque
    NNIT A/S

  • Error in using XI-SOAP adapter, but no error  with SAP-BC

    Hi,
    I am working on RFC->XI->Webmethod (.asp) scenatio.
    I am using SOAP adapter.
    Whin I am not using "Do not use SOAP Envelop".
    I am getting "com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML" Error in SXMB_MONI.
    But when I am using "Do not use SOAP Envelop" then I am not getting any error. in SXMB_MONI status showing Successfully Processed. But the responce i am getting is "You are not authorized to view this page  // HTTP 401.1 - Unauthorized: Logon Failed"
    But same web-service is working fine while connected with SAP-BC.
    Please Help why scenario is working with BC, but not with XI.
    Thanks & Regards

    Hi Bhavesh,
    Thanks for reply.
    I am getting all success in message monitoring, but still web-services sying they are not getting any message.
    I am attaching all 4 logs for one synchronous communication of message monitoring.
    I am not able to understand where message going and why XI showing success every where.
    ********1st(Sent Messages)
    Success SOAP: response message leaving the adapter
    Success Application attempting to send an XI message asynchronously using connection AFW.
    Success Trying to put the message into the send queue.
    Success The response message for message cf4fd921-4a74-11db-9312-001279933263(INBOUND) was successfully transmitted to the calling application.
    Success The message status set to DLVD.
    Success The application sent the message asynchronously using connection AFW. Returning to application.
    ********2nd (Sent Messages)
    Success RFC adapter received sRFC for Z_PA_SAP_TO_Webservice from D02/230. Attempting to send message synchronously
    Success Application attempting to send an XI message synchronously using connection AFW.
    Success Trying to put the message into the call queue.
    Success Message successfully put into the queue.
    Success The message was successfully retrieved from the call queue.
    Success The message status set to DLNG.
    Success The message was successfully transmitted to endpoint http://XYZ.com:8000/sap/xi/engine?type=entry using connection AFW.
    Success The application sent the message synchronously using connection AFW. Returning to application.
    Success The message status set to DLVD
    **********3rd (Received Messages)
    Success Using connection AFW. Trying to put the message into the receive queue.
    Success The XI response message for message d0372be1-4a74-11db-91d7-001279933263(INBOUND) was successfully returned to the calling application.
    Success The message status set to DLVD.
    **********4th (Received Messages)
    Success The message was successfully received by the messaging system. Profile: XI URL: http://XYZ.com:50000/MessagingSystem/receive/AFW/XI
    Success Using connection AFW. Trying to put the message into the request queue.
    Success Message successfully put into the queue.
    Success The message was successfully retrieved from the request queue.
    Success The message status set to DLNG.
    Success Delivering to channel: IF_O_502_WebserviceBusService_SOAP_In_02
    Success SOAP: request message entering the adapter
    Success SOAP: completed the processing
    Success SOAP: response message received d0372be1-4a74-11db-91d7-001279933263
    Success The message status set to DLVD.
    Success The message was successfully delivered to the application using connection AFW.

  • Error while invoking the ABAP Proxy via SOAP Adapter

    Hi,
    My scenario involves SOAP Client invoking a webservice hosted in PI which in turn invokes the ABAP Proxy asyncronously.
    SOAP Client -> PI -> ECC (ABAP Proxy) . This works fine.
    Next , I have exposed the ECC Service Interface as webservice using SOA Manager transaction. Now, once the service is created using SOAManager, i replaced the XI Adapter with SOAP Adapter and provided the target URL as the URL provided by the SOAManager.
    SOAP Client -> PI -> ECC (ABAP Proxy via SOAP Adapter)
    With this approach, i am encountering the below error message
    2009-05-29 12:17:55 Error Adapter Framework caught exception: null
    2009-05-29 12:17:55 Error Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException.
    Any ideas on the above errror message? Any pointers or inputs will be appreciated.
    Thanks,
    Vinayak Kamath

    > 2009-05-29 12:17:55 Error Adapter Framework caught exception: null
    > 2009-05-29 12:17:55 Error Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException.
    This is a generic error message which does not have any information about the error which has occurred.
    Do you see any error messages in the SOAP client?
    Regards
    Stefan

  • Error in while calling a Soap Adapter using the UDF

    hi,
    i am trying to make a call to Soap Adapter using a UDF.
    The code of the UDF is as follows :
    InputStream isPayloadStream = null;
    AbstractTrace trace= container.getTrace();
    String sService="Business Component";
    String sChannelName="Soap Channel(Sender)";
    SystemAccessor accessor=null;
    trace.addInfo("entered UDF");
    StringBuffer sb = new StringBuffer(" ");
    trace.addInfo("creating the reference file");
    sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
    sb.append("<ns0:MT_123082_UDF xmlns:ns0=\"http//infosys.com/pi/projects/png/n1\">\n");
    sb.append("<INTERCHANGECONTRLNOS>" + var1 + "</INTERCHANGECONTRLNOS>");
    sb.append("<PGPARTNERID>"var2"</PGPARTNERID>""\n""</ns0:MT_123082_UDF>");
    trace.addInfo("trigerring the SOAP channel ");
    try{
    Channel channel = LookupService.getChannel(sService,sChannelName);
    accessor = LookupService.getSystemAccessor(channel);
    isPayloadStream = new ByteArrayInputStream((sb.toString()).getBytes());
    trace.addInfo("creating the xml payload ");
    XmlPayload payload = LookupService.getXmlPayload(isPayloadStream);
    Payload result=accessor.call(payload);
    catch (Exception e){
    trace.addInfo(e.getMessage());
    finally{
    if ( accessor !=null) {
    accessor.close();
    return " ";
    The above code is throwing an error while end to end testing.
    the scenario is such,while graphical mapping a UDF will be used, which will create an Xml payload, and send this payload to another SOAP to file scenario.
    The error in the sxmb_moni is:  "Error when calling an adapter by using the communication channel CC_123085_UDF_SOAP_OUT (Party: , Service: BC_123082_REMADV_D96A, Object ID: fa9c6ee15efc30c68ec34b08034d87d1) XI AF API call failed. Module exception: 'failed to set up the channel fa9c6ee15efc30c68ec34b08034d87d1'. Cause Exception: 'Channel stopped by administrative task.'."
    Please can anyone suggest how this error can be rectified.
    regards,
    Meenakshi

    Hi,
    i have checked the communication channel and the XML. The following error occurs everytime i try to run the scenario.
    Error:
    Error when calling an adapter by using the communication channel CC_123082_UDFRECEIVER_SOAP_IN (Party: , Service: BC_123082_REMADV_D96A, Object ID: 2a895589066d30d4b2686e9d3a8d4c8d) XI AF API call failed. Module exception: 'SOAP Error'. Cause Exception: 'SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 400 Bad Request'
    Please let me know how this error can be resolved.
    Regards,
    Meenakshi

  • Invoking a Webservice using a SOAP adapter

    Hi,
          I have the following scenario.
    SAP ABAP outbound proxy <-> SAP XI <--> External webservice.
    The above call is a synchronous call from SAP R/3 and a receiver soap adapter is configured for the Webservice.
    I am getting the following error messages when I try to run the scenario.
    1)ADAPTER.SOAP_EXCEPTION.
    2)<SAP:AdditionalText>
    soap fault: Server did not recognize the value of HTTPHeaderSOAPAction
    </SAP:AdditionalText>
    What could be the possible reasons for the error message?
    In the target URL of the soap adapter I am specifying the path till .asmx.
    Thanks,
    Leo

    Hi,
    There are 2 pieces of data that must be provided in the SOAP receiver adapter.  Both of them can be obtained from the WSDL of the soap service provider.
    1.  Target URL, which can be obtain from the attribute "location" of the "address" element in the WSDL.
    2.  SOAP Action, which can be obtain from the "soapAction" attibute of the "operation" element in the WSDL.
    Regards,
    Bill

  • SOAP to IDocs Scenario...IDocs getting locked at SAP

    Dear Experts
    We are sending measuring point details to SAP system from 3rd Party. Scenario is working fine for small amount of load. If more number of messages triggered (say 100) IDocs at SAP are getting stuck u201CMeasPoint 10000211 currently locked -> document processing not possibleu201D.
    I tried configuring Sender SOAP adapter as EOIO and specified the Queue name as Test Queue. Still IDocs are getting stuck at SAP ECC. Now one more issues messages are getting stuck in queue SMQ2. We can control the flow by using BPM in PI. I donu2019t want to use BPM for this. Can we control this from SAP or using Trigger by background program in Partner profiles?
    Please suggest. Thank You.
    SAP Error Details:-MeasPoint 10000211 currently locked -> document processing not possible
    Message no. IR007
    Diagnosis
    The object you want to access is locked, either
    u2022     By yourself in another session, or
    u2022     By another user
    u2022     or by the system, which is still processing data for this object
    System Response
    The system cannot access the object.
    Procedure
    u2022     If you are locking the object yourself in another session, exit processing in the other session and continue processing in this session.
    u2022     If the object is locked by another user, you can
    o     contact the other user
    o     wait until the other user has finished processing the object
    u2022     If the object is locked because the system is still processing its data, wait a while, and then call up the object again.

    1. Create a new process code "Z" and check the enque state of the objects before passing back to standard processing modules. Id also change to process immediate as part of this change
    or
    2. I think assuming RBDAPP01 is still used you may be able to make use of an exit there to do the same thing .. check and wait before processing.
    or
    3. In message mapping place a UDF that has some kind of wait timer in it (this is random and wont always work cause you wont know when the lock is dropped) but should work.
    or
    4. Dont use IDOC's create an abap proxy to do the work as a sync process. Processing will need to finish in the proxy and return to the PI stack before the next message is processed in the EOIO queue - this would be the prefered option as far as im concerned, it guarenteed to work and as long as your proxy sticks to the standard rouintes it should be upgrade friendly.
    or
    5. Use a proxy as above but dont do any processing, just use the proxy to build the IDOC and post it - then check the status of the locks until you are ready then rinse and repeat ..... but like scratching your right ear with your left hand .. but it will work.

  • WHAT IS THE BEST WAY TO CREATE AN XSD FILE (TO BE USED BY SOAP ADAPTER)

    Dear friends
    I have a simple scenario.
    OUTBOUND DATA  -->  SOAP ADAPTER  --> ( XI )  -->  RFC ADAPTER  --> INBOUND DATA
    The XML file that I got from mapping area of IR (Design) is as follows
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_NAME_SOURCE xmlns:ns0="http://test3.com">
       <FIRSTNAME>DAVE</FIRSTNAME>
       <LASTNAME>SMITH</LASTNAME>
    </ns0:MT_NAME_SOURCE>
    If you notice, there are only 2 fields.
    I need to create an XSD file and import it as an external object, which I can use for SOAP Adapter.
    Which is the best way to create it.
    Also, I need to know if there is any step by step of sending a message from XML SPY. I have downloaded this software, but am not able to undertand how to use this.
    Hope to hear from any experts on this forum.
    Thanks in advance
    Ram

    Hi Ram,
    See the below blog..
    It shows how to send SOAP message using XML Spy.
    It also shows how to generate wsdl.
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    Regards,
    Sumit

Maybe you are looking for

  • IPhone dock 30-pin connector to line-out 3.5mm adapter/cable?

    Hi folks, I'm looking for a compact adaptor or cable to go from my iPhone 30-pin connector to a 3.5mm cable (or 3.5mm plug). Wondering if there are any recommendations, as some pre-date the iPhone and thus prompt the iPhone to switch to airport mode.

  • EDI-transaction doubt

    hi, can any one explain elaborately wat is the use of bd71, bd64 and sara. Thanks in advance, Ganesh

  • Error code 50 installing Adobe creative cloud

    I cannot get rid of this error message when trying to install adobe creative cloud desktop.  I was able to remove the old installation using the cleaner too, but cannot get a new installation to install.

  • Any non-public patches for the never patched Adobe Illustrator CS4?

    I've been having lots of bugs with CS4 and Illustrator in Javascript. Sometimes AI just locks up, produces a random error unless restarted before trying again, or otherwise has a bug such as the one where in some circumstances the "paste()" command p

  • Dock .mac sync issues

    Guys, I am running two machines both installed with 10.5.1. I subscribe to .mac and get the best of my mac's but I have noticed that dock items are not being sync'ed properly. iTunes is one application I cannot get to stay on the dock even when I rig