SOAP Sender Adapter Attachment Handling in Response message

Hi Experts,
I have a SOAP <> XI <> Proxy scenario where an external WS client sends a SOAP request and receives a SOAP response along with an attachment.
The problem is that the WS client is unable to retrieve the attachment from the SOAP response although the SXI_MONITOR shows both the payload and attachment beign sent out. In the SOAP sender I 'DO NOT' tick the 'Keep Attachment' parameter.
If I tick the 'Keep Attachment' parameter, then the payload and attachment both goes as attachment.
I need help in writing an adapter module which would ensure that the payload remains as the main payload and only the additional attachment goes out as an attachment.
Regards,
Shobhit

Hi Shobhit
You can refer this generic guide
How to create adapter modules for J2EE engine
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/3bdc14e1-0901-0010-b5a9-a01e29d75a6a
How-to create a web service with attachments (SOAP With Attachments)
How-to create a web service with attachments (SOAP With Attachments)
Rename Attachment Adapter Module
Rename Attachment Adapter Module
Hope this will help
Thanks
Gaurav

Similar Messages

  • Mail Sender Adapter - Attachment Handling

    Hello,
    I 'm using XI 3.0 SP 14.
    I have problems with my Mail-Sender-Adapter.
    The mails, I fetch, have an xml-attachment which
    represents an IDOC-structure (ORDERS.ORDERS05).
    I want to sent this attachment as payload to an SAP-System.
    The problem is now, that I have 2 Payloads (SXMB_MONI).
    One for the normal email-body and one for my original
    xml-attachment. See below:
    - <SAP:Payload xlink:href="cid:[email protected]">
      <SAP:Name>MailMessage</SAP:Name>
      <SAP:Description>mail message</SAP:Description>
      <SAP:Type>Application</SAP:Type>
      </SAP:Payload>
    - <SAP:Payload xlink:href="cid:[email protected]">
      <SAP:Name>MailAttachment-1</SAP:Name>
      <SAP:Description>mail attachment</SAP:Description>
      <SAP:Type>ApplicationAttachment</SAP:Type>
      </SAP:Payload>
      </SAP:Manifest>
      </SOAP:Body>
    The XI Runtime Workbench (SXMB_MONI) takes (in my case)
    the wrong one (email-body-attachment) and gives me
    an parsing error. (Error occurs at my IDOC-Receiver-Adapter)
    Now my question:
    Can I remove the email-body-attachment, so that
    the further processing works with my xml-attachment?
    Or how can I resolve my problem.
    best regards
    Marcel Reichert

    Hi Marcel,
    use the PayloadSwapBean module to get the attachment as main payload.
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/bf37423cf7ab04e10000000a1550b0/frameset.htm
    As parameters use:
    swap.keyName = payload-name
    swap.keyValue = MailAttachment-1
    Regards
    Stefan

  • Error while posting messages to SOAP sender adapter SP 13

    Hi Friends,
                    I have configured a SOAP sender adapter in XI 3.0 and is using the URL
    http://host:port/XISOAPAdapter/MessageServlet?channel=:BS_WEBSERVICE:CC_WEBSERVICE_SOAP to post the messages. When I open the URL in the browser I am getting the error.
    Message Servlet is in Status ERROR
    Status information:
    Servlet com.sap.aii.af.mp.soap.web.MessageServlet (Version $Id: //tc/aii/30_VAL_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 not instantiated
    ModuleProcessorRemote not instantiated
    But when I test the URL http://host:port/XISOAPAdapter/HelperServlet?action=FindChannel&channel=:BS_WEBSERVICE:CC_WEBSERVICE_SOAP to check the communication channel I am getting the right response as below.
    <?xml version="1.0" ?>
    <http://host:port/XISOAPAdapter/HelperServlet?action=FindChannel&channel=:BS_EBTR_WEBSERVICE:CC_EBTR_WEBSERVICE_SOAP> <s:ChannelInfo xmlns:s="http://sap.com/xi/WebService/xi30">
      <channelID>e7ac884596ea3d088cbfd8b434f942f2</channelID>
      <name>CC_WEBSERVICE_SOAP</name>
      <type xmlns:st="http://sap.com/xi/XI/System">st:SOAP</type>
      <direction>INBOUND</direction>
      <party />
      <service>BS_WEBSERVICE</service>
      </s:ChannelInfo
    I used the http capture to debug, In the 1st case though I am getting "Message Servlet in status error" I am seeing a 200 OK code in the http capture tool. When the message is posted from .net client proxy we are getting a 500 internal server error.
    Am not sure what causes the error ? I saw two notes in SDN related to SOAP - J2EE SP13. We are in SP13. Is this the issue ? Wanted to know your opinion before applying the notes.
    Thanks & Regards,
    Mathew

    ABAP & Java stack was on different SP levels.

  • Request Response Bean for SOAP Sender Adapter

    Hi Friends,
    Is it possible to use  Request Response Bean Module described (FIle to RFC to File here) for SOAP(sender) and JDBC(receiver) adapter?
    I want to configure SOAP to JDBC to JDBC scenario.
    http://wiki.sdn.sap.com/wiki/display/HOME/UsingRequestResponseBeanModuleinFILE+Adapter
    Scenario:
    I will do SOAP adapter call Asynchronously and JDBC receiver adapter will select data from database. This response will go back to SOAP adapter and then SOAP will divert this response to another JDBC adapter. This JDBC adapter will insert data into another database.
    I do not want to use ccBPM. Is there any design approach to implement this scenario?
    Thanks,
    Sandeep Maurya

    Hi Sandeep,
    SAP says SOAP sender adapter does not support Modules. You can serch Help.sap (for SOAP sender channel) to find the same.
    I would suggest to use AXIS adapter (provides all the functionality of SOAP) and supports the Modules as well.
    I have used the Module beans that you mentioned in the past... but it is not consistent with its processing.. sometimes it stucks with Message ID issue... I have seen same issue faced some other friends as well .. search on SDN you will find the issue with these modules...
    Using BPM would be another option...
    Thanks,
    Sunil Singh

  • Use of variable header XHeaderName1 in SOAP sender adapter

    Hi all,
    I have a doubt regarding the use of adapter-specific attributes in SOAP sender adapter. In specific:
    the SOAP client should be able to pass a variable with the SOAP request (XHeaderName1 header variable) and this should be available in mapping (Dynamic configuration)
    I've already checked the [help page|http://help.sap.com/saphelp_nw04/helpdata/en/fc/5ad93f130f9215e10000000a155106/frameset.htm] but it seems I'm doing something wrong.
    I tried with those settings in SOAP adapter configuration:
    Keep headers checked
    XHeaderName1 = Test
    I try to call the SOAP adapters in the following 2 ways, but none works (the value is not available in message mapping with Dynamic configuration)
    1. Pass "Test" value xxxx in SOAP Header as a tag
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Header>
              *<Test>xxxx</Test>*
         </SOAP-ENV:Header>
         <SOAP-ENV:Body>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    2. Pass "Test" value xxxx in SOAP URL
    http://host:50000/XISOAPAdapter/MessageServlet?channel=p:s:c&version=3.0&Sender.Service=...&Interface=...&Test=xxxx
    Could anyone give me a hint about how to pass those values in the SOAP call and eventually the correct config. of SOAP sender ?
    Thanks a lot,
    Manuel

    Hi Manuel,
    Could you give a bit more detail on how you handled the SOAP message yourself.
    I have a similar issue. I am consuming a non SAP Web Service which requires a non-standard token element to be passed back. I have created a an RFC sender to SOAP reciever scenario which works fine for the inital logon and returns the token it expects in the follow up messages.
    At present I'm at a loss so your help would be much appreciated. We have got round the immediate issue by creating and sending the SOAP message directly from SAP WAS.
    Could we use the XI Adapter and ABAP proxy in a similar way?
    Thanks,
    Tim J.

  • ASMA in SOAP Sender adapter.

    Hi All,
    Using ASMA under SOAP sender adapter I am trying to get the username of the user . I am referring below links for the same:
    /people/michal.krawczyk2/blog/2009/05/26/pixi-pseudo-principal-propagation (referring this only for getting username)
    getting user name from sopa header
    But while testing through XML SPY , i am getting error :
    Com.sap.engine.interfaces.messaging.api.exception.MessagingException: Received HTTP response code 500 : Error during parsing of SOAP header.
    Please help??.
    Thanks
    Amit

    Hi.
    I have created WSDL file using below URL:
    http://ISVSAPPIDEV:50100/XISOAPAdapter/MessageServlet?channel=:BS:CC_SOAP_Sender
    Actually its a synchronous SOAP -PI - RFC scenario. When i am pinging the PI through XML spy(ASMA AND Transport Binding is UNCHECKED in soap sender channel)  i am getting the response back from RFC,  but when i am pinging after chking the ASMA and Transport Binding in SOAP sender adapter i am getting this error(the message is itself not reaching the PI):
    Com.sap.engine.interfaces.messaging.api.exception.MessagingException: Received HTTP response code 500 : Error during parsing of SOAP header.
    Thanks
    Amit

  • Invocation of SOAP Sender Adapter using Apache SOAP

    Hi,
    I'm trying to invoke the XI SOAP Sender Adapter using the Apache SOAP API. It seems that my message header is missing a few parameters (see exception below). Does anybody know which to set?
    Regards,
    Heiko
    ==========
    Exception:
    <?xml version='1.0'?>
    <!-- see the documentation -->
    <SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>
      <SOAP:Body>
        <SOAP:Fault>
          <faultcode>SOAP:Server</faultcode>
          <faultstring>Server Error</faultstring>
          <detail>
            <s:SystemError xmlns:s='http://sap.com/xi/WebService/xi2.0'>
              <context>XIAdapter</context>
              <code>Exception</code>
              <text><![CDATA[
    com.sap.aii.af.mp.module.ModuleException
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:502)
         at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process(ModuleLocalLocalObjectImpl3.java:103)
         at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:227)
         at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process(ModuleProcessorLocalLocalObjectImpl0.java:103)
         at com.sap.aii.af.mp.soap.web.MessageServlet.callModuleProcessor(MessageServlet.java:162)
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:507)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:392)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged1(Native Method)
         at java.security.AccessController.doPrivileged(AccessController.java:321)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)
    Caused by: java.lang.Exception: Bubble configuration error: parameter 'XI.InterfaceNamespace' is missing
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.getParaRequired(XISOAPAdapterBean.java:895)
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.createDefaultMessageHeader(XISOAPAdapterBean.java:942)
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.setup(XISOAPAdapterBean.java:214)
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:496)
         ... 22 more
              ]]></text>
            </s:SystemError>
          </detail>
        </SOAP:Fault>
      </SOAP:Body>
    </SOAP:Envelope>

    Hi Heiko,
    You are missing the Namespace Parameter in the sender soap adapter configuration in XI3.0
    Thanks
    Prasad

  • Another SOAP Sender adapter "com.sap.aii.af.mp.module.ModuleException" erro

    I am working on a synchronous scenario SOAP <-> XI <-> RFC.
    This worked fine, when I run it without SOAP adapter, direct via XI Pipeline.
    Now I want to use the SOAP sender adapter, but get the error as described below this post.
    As this is a real new XI installation, some patches or updates might be required to make it work. Or some adapter modules ?
    Any suggestions on how to solve this problem will be rewarded.
    What worries me a bit is the line "  " in the error description.
    Extra info: I use SoapSonar as a test webservice client. The error is the message as received in te test client.
    <?xml version="1.0"?>
    <!-- see the documentation -->
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
      <SOAP:Body>
        <SOAP:Fault>
          <faultcode>SOAP:Server</faultcode>
          <faultstring>Server Error</faultstring>
          <detail>
            <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
              <context>XIAdapter</context>
              <code>ModuleUnknownException</code>
              <text><![CDATA[
    com.sap.aii.af.mp.module.ModuleException: either no channelID specified or no channel found for the specified party, service, and channel name, MessageServlet(Version $Id: //tc/xi/645_VAL_REL/src/_adapters/_soap/java/com/sap/aii/af/mp/soap/web/MessageServlet.java#9 $)
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:427)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:160)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         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)
              ]]></text>
            </s:SystemError>
          </detail>
        </SOAP:Fault>
      </SOAP:Body>
    </SOAP:Envelope>

    Hi Chandravadhana,
    The colon should be there :
    http://help.sap.com/saphelp_nw04/helpdata/en/69/a6fb3fea9df028e10000000a1550b0/frameset.htm
    The inbound address for SOAP messages is: http://host:port/XISOAPAdapter/MessageServlet?channel=party:service:channel
    Under party:service:channel enter the party name, the service name, and the name of the communication channel. If no party has been created, enter the following: channel=:service:channel
    Regards
    Suraj

  • Reading Header data in a SOAP Envelope for SOAP Sender Adapter

    Hello All,
    Am using a SOAP sender adapter and want to use the data inside the SOAP Header for some routing purpose(extended receiver determination). Any SOAP message coming into XI will look something like below. But XI will pass the contents of <SOAP-ENV:Body> to Payload and <SOAP-ENV:Header> to the SOAP Header category you can see that in SXMB_MONI.
    Is there a way to read the data in my SOAP Header to be later used in my extended receiver determination.
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:Q-ENV="/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
         <SOAP-ENV:Header>
              <Q-ENV:Header>
                   <Q-ENV:Sender-Id>1</Q-ENV:Sender-Id>
                   <Q-ENV:Receiver-Id></Q-ENV:Receiver-Id>
                   <Q-ENV:Correlation-Id></Q-ENV:Correlation-Id>
                   <Q-ENV:Message-Id></Q-ENV:Message-Id>
                   <Q-ENV:Date-Sent></Q-ENV:Date-Sent>
                   <Q-ENV:Document-Type></Q-ENV:Document-Type>
                   <Q-ENV:Message-Format></Q-ENV:Message-Format>
              </Q-ENV:Header>
         </SOAP-ENV:Header>
         <SOAP-ENV:Body>
              <Q-ENV:Body>
                   <Q-ENV:Content-Type>text/xml</Q-ENV:Content-Type>
                   <Q-ENV:Message-Type></Q-ENV:Message-Type>
                   <Q-ENV:Encoding>UTF-8</Q-ENV:Encoding>
                   <Q-ENV:Message-Body>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Thanks for your replies in advance.
    Regards,
    Prashanth

    Hello,
    but they were not getting any response back from XI and the sending system kept resending the message.. may be it was acting like a HTTP post.
    The method that is used by the native SOAP Adapter is always HTTP Post. Not sure why you are not getting a response, have you checked the outbound firewall of the sending party or the inbound firewall of XI? To which SOAP URL are you sending to?
    Hope this helps,
    Mark

  • Using SOAP Sender adapter in PI 7.1

    Hi Guys,
    I've created a sync scenario with SOAP sender adapter, but I have troubles with calling it.
    I use following URL: http://<host>:50000/XISOAPAdapter/MessageServlet?channel=:BS_Bus_Sys:CC_SOAP_Test as I did in XI 3.0, but I'm getting error HTTP 400 Bad Request. I'm using the request generated from the IR Configuration.
    Has something changed in 7.1 for this type of scenario?
    Thanks guys,
    Olian

    Hi! Olian,
    I think u r going in a wrong way. The above given URL is wrong and incomplete one.
    The above url comes only after generating the WSDL. You ill gives that URL to ur source team to post their data at which this URL itselfs acts as an Gateway to enter into SAP XI/PI.
    The generated WSDL contains URL like this>>
    "http:// Host:Port/XISOAPAdapter/MessageServlet?senderParty=&amp;senderService=Business Service&amp;receiverParty=&amp;receiverService=&amp;interface=SenderInterfaceI&amp;interfaceNamespace=http://XXXXXXXX" />
    Also follow the below procedure for generating the WSDL.
    Except generating WSDL remaining all development steps are same as creating File to Proxy Scenario.
    CREATING THE WEBSERVICE IN XI :
    1) In Integration Directory, go to Tools tab --> Define Web Services.
    2) Now one Wizard window will opens and follow the below steps:
    Here donu2019t go for the u2018 Proposed URLu2019, instead specify the URL as::
    http://<host>:<j2ee-port>/XISOAPAdapter/MessageServlet?channel=:<service>:<channel>
    If there is party then ::
    http://host:port/XISOAPAdapter/MessageServlet?channel=<party>:<service>:<channel>.
    3) Specify the Source Messageu2019s Message Interface.and remaining other input parameters.
    4) Specify the Sender Business Serviceu2019s details:
    5) Here, Cross check the details displayed and then click on u2018Finishu2019 button to create the Web Service
    document(WSDL)
    6) Now Save the WSDL code to the local system. At the bottom u ill get URL based on the above input
    URl:
    Note: Here in XI there is no XML Testing tool or SOAP client tool to test SOAP messages. That is why most of the people prefer either ALTOVA XML SPY Tool or SOAP CLIENT TOOL or INFO PATH.
    If your working on PI 7.1 means::
    1) Simply after creating Sender Agreement go to options above to that sender agreement instead of tools menu... and there you can observe 2 options at the bottom side.
    a) PUBLISH in SR
    b) Generate WSDL.
    2) Once after activating your ID componenets just Press or go for option Publish in SR. Then automatically it will generate WSDL and publish that WSDL in the SERVICE REGISTRY. which is latest concept in PI 7.1.
    3) Now by entering authentification details you can able to enter into service registry.
    There are 4 tabs::
    a) Service definitions
    b) Publish
    c) classifications
    d) Manage.
    Go for Service definitions::
    4) Enter your sender SOAP interface and press GO or enter.
    5) Select your interface and then at the bottom u can observe again 4 tabs:
    a) General b) End Points c) classifications d) System Details.
    6) In the general you can able to see your WSDL URL by again entering Authentification details.
    7) Now Click End Points>Test Button>Enter Authentification details-->Seelct your Interface
    Note:: Now you can test your scenario in this WEB SERVICE NAVIGATOR.
    8) There you can enter you can pass your Input data parameters in your SOAP interface and execute or test your scenario here itself without any using of external tool like Altova XML or SOAP client tool.
    I hope the above information will give you a detailed information in generating and testing webservice right.
    Regards::
    Amar Srinivas Eli

  • Using custom http headers in SOAP sender adapter

    Hi,
    my problem is exactly the same as reported [here|Re: SOAP Sender - Extract Header Values;] and [here|Variable Transport Binding - Soap Sender;
    Basically I'd like to send through the soap sender adapter some custom http headers. I check the necessary options in the advanced tab (set adapter-specific message attributes and variable transport binding), and in the variable header one I put x-StoreCode, which is the same http header I send to PI.
    But I won't see anything in the dynamic configuration section when the message is persisted in PI.
    Very surprised that I've seen this issue is a common problem others have faced before without success.
    Thanks!

    Hi Michal,
    the extra info I'm trying to send separated from the message is an http header, not part of the query string.
    If I incorporate the extra info as a parameter to the query string like this, for example:
    http://host:50000/XISOAPAdapter/MessageServlet?senderParty=&senderService=S1&receiverParty=&receiverService=&interface=Int&interfaceNamespace=urn:test&x-StoreCode=13&nosoap=true
    Then I can see the value in the dynamic configuration section:
    <SAP:Record namespace="http://sap.com/xi/XI/System/SOAP" name="SQueryString">senderParty=&senderService=S1&receiverParty=&receiverService=&interface=Int&interfaceNamespace=urn:test&x-StoreCode=13&nosoap=true</SAP:Record>
    But what I'm trying to do shoould be possible, according to sap help:
    http://help.sap.com/saphelp_nwpi71/helpdata/en/fc/5ad93f130f9215e10000000a155106/content.htm (section Define Adapter-Specific Message Attributes)

  • SOAP Sender Adapter Not working

    We have the following Synchronous sceanrio: Third Party System <> PI <> SAP ECC
    The interface works well in our DEV and PreProd environments but has stopped working in our QA environment.
    The SOAP Sender Adapter is giving me the following error:
    failed to initialize: org.apache.axis.ConfigurationException:
    java.lang.ClassNotFoundException: ------------------------- Loader Info -------------------------
    ClassLoader name: library:com.sap.aii.af.axisproviderlib] Living status: alive Direct parent loaders:   system:Frame   library:com.sap.base.technology.facade   library:engine.j2ee14.facade] Resources:  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/axis.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-discovery-0.2.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-logging-1.0.4.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-net-1.0.0-dev.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/wsdl4j-1.5.1.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/xmlsec-1.4.0.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/wss4j-1.5.6.jar 
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/opensaml-1.0.1.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/xalan-2.6.0.jar
    Currently the Quality of Service for the communication channel is set to "Best Effort" because it is a Synchronous Interface. However if I change the Quality of Service to "Exactly Once" the message is received by PI without any problems. So the problem is specific to Synchronous.
    I tried to create a new communication channel and use that but that didnt help.
    We have checked on the server and all the above mentioned .jar files are all in place.
    I have compared the Processing Sequence and Module Configuration of the Module tab (for the communication channel) with the other environments and everything seems to be fine.
    Any help would be much appreciated.
    Thanks,
    Krishneel

    Hi Krishna,
    ClassLoader name: library:com.sap.aii.af.axisproviderlib] Living status: alive Direct parent loaders:   system:Frame   library:com.sap.base.technology.facade   library:engine.j2ee14.facade] Resources:  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/axis.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-discovery-0.2.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-logging-1.0.4.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/commons-net-1.0.0-dev.jar  
    /usr/sap/XQ1/DVEBMGS01/j2ee/cluster/bin/ext/com.sap.aii.af.axisproviderlib/lib/wsdl4j-1.5.1.jar
    Have you deployed the following Jar.
    commons-discovery-0.2.jar
    ○       commons-logging-1.0.4.jar
    ○       commons-net-1.0.0-dev.jar
    ○       wsdl4j-1.5.1.jar
    Refer this
    http://help.sap.com/saphelp_nw04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/content.htm
    Edited by: Debashish Roy on Jul 18, 2011 10:10 AM

  • 'Keep Header' Option in SOAP sender adapter not working

    Hi all
    I have exposed  a webservice using a SOAP sender adapter in XI. A SOAP client is sending request to this service.
    The SOAP request has some elements in the header like wssecurity and ws addressing tags.
    When I remove the header elements and send the request my scenario works as expected but when I include the header fields I get a time out in my soap client application and cannot see any message, any where on  XI. Can somebody help me understand why this is happening.
    Thanks
    Dilip

    Hi Stefan
    In my scenario it is ok if XI ignores the soap header tags it does not understand. I want the system to ignore the header tags and go ahead and process only the payload.
    But unfortunately I keep getting a time out whenever I send a request with the header tags. When I remove the header I can sucessfully post documents.
    I tried increased the time out to 5 min but still continue to get the problem.  So am sure the problem is not exactly related to timeout, but due to the header tags.
    What do you suggest?
    Regards
    Dilip

  • How to use SOAP sender adapter

    Hi all
    i have configured the SOAP sender adapter. Now my 3rd party needs to send me a soap message. 
    I have checked that the status at the following URL is OK:
    http://host:port/XISOAPAdapter/MessageServlet?channel=:MXII_Web_Service:SOAP_MXII_Sender.
    This is fine, however
    I am unsure of the following:
    1. Does XI make a wsdl available to the 3rd party?
    2. Where does my 3rd party send the soap message to?
    3. Is the SOAP message sent via a query string?
    4. Do I need to create a web service?
    Thanks for all your help in advance
    Clinton

    Hi Moorthy
    Thanks for your answer.
    The problem was solved, we used .Net to write a webservice to our wsdl.
    I have now another problem.... When the message comes into XI it shows that no receiver found(RCVR_DETERMINATION">NO_RECEIVER_CASE_ASYNC). If I just test the scenario with a file adpter as Sender, and Receiver it is fine, but when using the SOAP adapter as Sender, it gives me the no receiver found message.
    Any help with this issue will be appreciated.
    Thanks again
    Clinton

  • Soap sender adapter show invalid content type

    Hi dear mates,
    I have a SOAP-JMS scenario working succesfully on 7.3.1. But in 30 min after ICM restart (usin SMICM) something wrong happend because all Soap sender adapter fails showing that error.
    <text>com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not parse XMBMessage due to invalid content type for SOAP: TEXT/HTML
    If I restart manually ICM still working fine until next 30 min more or less.
    I have added MP transform bean to ensure that I am sending UTF-8 propertly. But it doens't work.
    Does anybody know a clue why occurs this strange behavior?
    Thanks in advance and regards.
    José Antonio.

    Thanks Vladimir,
    This is exactly the behavior. And yesterday we have to increase the memory because it has 32gb shared in two PI instances, 16gb(DEV) and 16gb(TEST). And the memory was always full.
    Recently I found the trouble. Doing SLDCHECK have this trouble also. SLDCHECK error-Check and maintain the SLD content for the current client
    So, I re-register once again the system in rz70 and review related Bussiness System. And BS pipeline URL was wrong :S because it hasn't be wrote with path /sap/xi/engine?type=entry.
    After restart SLD I do sldcheck and it looks perfect.
    Thanks to all.
    I hope this stupid error do not disturb any other consultants.
    Best Regards.
    Jose.

Maybe you are looking for