'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

Similar Messages

  • 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

  • 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.

  • SAP PI FTP sender adapter not working with SAP ECC over Itanium

    Hi,
    We have been running normally SAP PI 7.0 SP14 with no issue for a while.
    We are now in the process of migrate the SAP ECC system from PA risc to IA platform. We are performing some tests between SAP PI and SAP ECC to check that the platform migration is not affecting us in any way and we have found that FTP adapter sender is not working anymore (receiver is working as usual).
    We place some files in the new ECC system and when PI goes to retreive the files it is like it can not read anything. It gives no error but it does not pick any file. This is not happening with the old platform.
    Does anyone have any idea?
    Thanks a lot for your help
    Diana

    Hi,
    I am using FTP connection and for the receiver it is working fine.
    Thanks
    Diana

  • Delete Operation in JDBC Sender Adapter not works

    Hi,
        I have one student table which contains the fields ID,Name,BirthMonth,BirthYear,ReadFlag fields. ReadFlag is a character field or lenght 1 which contains only values either 'Y' or ' '. 
         I want to execute delete operation in this table ie to delete the records which contains the readflag = 'Y'. So, I set the below values for the following parameters.
    DELETE FROM student WHERE READFLAG = ' Y '
    Query SQL Statement : SELECT * FROM student WHERE readflag = 'Y'
    Update SQL Statement : DELETE FROM student WHERE READFLAG = 'Y'
    Poll Interval : 60 Seconds.
        There are more records in this table which contains readflag = 'Y'. But, the Adapter does not delete those records from the table i.e delete operation is not executed. At the same time, in Comm. Channel monitoring it does not show any error, but the delete operation is not carried out in the table.
         I tried after 'COMMIT' the table also. But it does not work. What could be the reason ? or How to use Delete Operation effectively on the table ?
         Kindly help me friends to solve this problem.
    Thanking you.
    Kind Regards,
    Jeg.

    http://help.sap.com/saphelp_nw04/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm >>>
    <i>Adapter Work Method
    You must add an indicator that specifies the processing status of each data record in the adapter (data record processed/data record not processed) to the database table.
    The UPDATE statement must alter exactly those data records that have been selected by the SELECT statement. You can ensure this is the case by using an identical WHERE clause. (See Processing Parameters, SQL Statement for Query, and SQL Statement for Update below).
    <b>Processing can only be performed correctly when the isolation level for transaction is set to repeatable_read or serializable.
    Example
    SQL statement for query: SELECT * FROM table WHERE processed = 0;
    SQL statement for update: UPDATE table SET processed = 1 WHERE processed = 0;
    processed is the indicator in the database.</b></i>
    try with repeatable_read or serializable !!!
    Also go thru this thread - DELETE Querey in JDBC SENDER

  • 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

  • SAP PI  Soap Send adapter  is not available.

    Hi  Experts:
    i encounter a issue when use Soap sender adapter.  i configured  soap sender adapter senario and generate  wsdl  in the id  .
    and then  import wsdl document to the  soapui to test the webservice.  but throw some exception blow:
    <!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>ADAPTER.JAVA_EXCEPTION</code>
                   <text>java.lang.NullPointerException
    +     at com.sap.aii.af.sdk.xi.mo.xmb.XMBMessageOperator.getQualityOfServiceAsString(XMBMessageOperator.java:2109)+
    +     at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:943)+
    +     at sun.reflect.GeneratedMethodAccessor1126.invoke(Unknown Source)+
    +     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +     at java.lang.reflect.Method.invoke(Method.java:585)+
    +     at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:46)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)+
    +     at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)+
    +     at $Proxy3087.process(Unknown Source)+
    +     at com.sap.aii.af.app.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:275)+
    +     at sun.reflect.GeneratedMethodAccessor518.invoke(Unknown Source)+
    +     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)+
    +     at java.lang.reflect.Method.invoke(Method.java:585)+
    +     at com.sap.engine.services.ejb3.runtime.impl.RequestInvocationContext.proceedFinal(RequestInvocationContext.java:46)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:166)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatesTransition.invoke(Interceptors_StatesTransition.java:19)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Resource.invoke(Interceptors_Resource.java:71)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.doWorkWithAttribute(Interceptors_Transaction.java:38)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_Transaction.invoke(Interceptors_Transaction.java:22)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:189)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_StatelessInstanceGetter.invoke(Interceptors_StatelessInstanceGetter.java:16)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_SecurityCheck.invoke(Interceptors_SecurityCheck.java:21)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.Interceptors_ExceptionTracer.invoke(Interceptors_ExceptionTracer.java:16)+
    +     at com.sap.engine.services.ejb3.runtime.impl.AbstractInvocationContext.proceed(AbstractInvocationContext.java:177)+
    +     at com.sap.engine.services.ejb3.runtime.impl.DefaultInvocationChainsManager.startChain(DefaultInvocationChainsManager.java:133)+
    +     at com.sap.engine.services.ejb3.runtime.impl.DefaultEJBProxyInvocationHandler.invoke(DefaultEJBProxyInvocationHandler.java:164)+
    +     at $Proxy330.process(Unknown Source)+
    +     at com.sap.aii.adapter.soap.web.MessageServlet.callModuleProcessor(MessageServlet.java:175)+
    +     at com.sap.aii.adapter.soap.web.MessageServlet.doPost(MessageServlet.java:470)+
    +     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)+
    +     at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)+
    +     at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:162)+
    +     at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:81)+
    +     at com.sap.engine.services.servlets_jsp.server.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:124)+
    +     at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)+
    +     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:441)+
    +     at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:291)+
    +     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:396)+
    +     at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:385)+
    +     at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:76)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:240)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)+
    +     at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)+
    +     at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)+
    +     at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)+
    +     at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)+
    +     at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)+
    +     at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)+
    +     at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)+
    +     at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:457)+
    +     at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:250)+
    +     at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)+
    +     at com.sap.engine.core.thread.execution.Executable.run(Executable.java:109)+
    +     at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:314)</text>+
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    nd the find a note :sapnote_0001239995  can solve the problem in the pi 7.10 .but my pi is 7.11 .anybody know which note  should be apply to solve the problem in the pi7.11 .thanks .

    hi,
    Either you are using an incomplete URL
    you can however try with this URL format:
    http://<IPAddress OR ServerName>:<PORT_No>/XISOAPAdapter/MessageServlet?channel=:<SenderBusinessService>:<SenderSOAPCC>&version=3.0&Sender.Service=<SenderBusinessService>&Interface=<SenderInterfaceNamespace>%5E<SenderMI>
    refer blog related ur issue:
    ADAPTER.JAVA_EXCEPTION: Sender soap adapter PI 7.11
    thanks,

  • Soap Sender Adapter Preserve And Access Soap Header

    Hi,
    I would like to preserve the Soap Header created by a client and access it in a mapping using the the Soap Sender Adapter (SP16). Does anybody know how to do this?
    Kind regards,
    Heiko

    Hello Udo,
    I have found a solution to this problem. It is possible to add header entries to the DynamicConfiguration which is available by an API:
    soapMsg.append("<SOAP-ENV:Header>");
    soapMsg.append("<SAP:DynamicConfiguration xmlns:SAP=\"http://sap.com/xi/XI/Message/30\" xmlns:SOAP=\"http://schemas.xmlsoap.org/soap/envelope/\" SOAP:mustUnderstand=\"1\">");
    soapMsg.append("<SAP:Record namespace=\"http://sap.com/xi/XI/System/SOAP\" name=\"SRmsUser\">test</SAP:Record>");      
    This code snip shows Java client code to add an element to the SOAP header which corresponds to the DynamicConfiguration. In XI it will be accessable using the respective API.
    Cheers,
    Heiko

  • 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)

  • 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

  • Sender Soap Channel is not working - Service Temporarily Unavailable [503]

    dEAR FRIENDS,
    We are facing one critical issue in sender soap adapter. After upgrading our system to PI 7.1 The sender soap channle is not working. From source  system  it is not reaching PI : the log from source system as follows:
    org.springframework.ws.client.WebServiceTransportException: Service Temporarily Unavailable [503]
          at org.springframework.ws.client.core.WebServiceTemplate.handleError(WebServiceTemplate.java:627)
          at org.springframework.ws.client.core.WebServiceTemplate.doSendAndReceive(WebServiceTemplate.java:551)
          at org.springframework.ws.client.core.WebServiceTemplate.sendAndReceive(WebServiceTemplate.java:502)
          at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:351)
          at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:345)
          at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:337)
          at com.palm.txnengine.wsclient.DailyRevenuePostingWSGateWaySupport.postToSap(DailyRevenuePostingWSGateWaySupport.java:23)
          at com.palm.txnengine.wsclient.DailyRevenuePostingImpl.execute(DailyRevenuePostingImpl.java:93)
          at org.springframework.batch.core.step.tasklet.TaskletStep$2.doInChunkContext(TaskletStep.java:264)
          at org.springframework.batch.core.scope.context.StepContextRepeatCallback.doInIteration(StepContextRepeatCallback.java:67)
          at org.springframework.batch.repeat.support.RepeatTemplate.getNextResult(RepeatTemplate.java:352)
          at org.springframework.batch.repeat.support.RepeatTemplate.executeInternal(RepeatTemplate.java:212)
          at org.springframework.batch.repeat.support.RepeatTemplate.iterate(RepeatTemplate.java:143)
          at org.springframework.batch.core.step.tasklet.TaskletStep.doExecute(TaskletStep.java:239)
          at org.springframework.batch.core.step.AbstractStep.execute(AbstractStep.java:198)
          at org.springframework.batch.core.job.AbstractJob.handleStep(AbstractJob.java:348)
          at org.springframework.batch.core.job.flow.FlowJob.access$0(FlowJob.java:1)
          at org.springframework.batch.core.job.flow.FlowJob$JobFlowExecutor.executeStep(FlowJob.java:137)
          at org.springframework.batch.core.job.flow.support.state.StepState.handle(StepState.java:60)
          at org.springframework.batch.core.job.flow.support.SimpleFlow.resume(SimpleFlow.java:144)
          at org.springframework.batch.core.job.flow.support.SimpleFlow.start(SimpleFlow.java:124)
          at org.springframework.batch.core.job.flow.FlowJob.doExecute(FlowJob.java:105)
          at org.springframework.batch.core.job.AbstractJob.execute(AbstractJob.java:250)
          at org.springframework.batch.core.launch.support.SimpleJobLauncher$1.run(SimpleJobLauncher.java:110)
          at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
          at org.springframework.batch.core.launch.support.SimpleJobLauncher.run(SimpleJobLauncher.java:105)
          at org.springframework.batch.core.launch.support.CommandLineJobRunner.start(CommandLineJobRunner.java:207)
          at org.springframework.batch.core.launch.support.CommandLineJobRunner.main(CommandLineJobRunner.java:254)

    Hi,
    Please check this generic description:
    The error message 503 Service unavailable Application stopped! is displayed.
    Description:The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay MAY be indicated in a Retry-After header. If no Retry-After is given, the client SHOULD handle the response as it would for a 500 response.
    Note: The existence of the 503 status code does not imply that a server must use it when becoming overloaded. Some servers may wish to simply refuse the connection.
    Possible Tips: Because of J2EE application com.sap.aii.af.ms.app not active
    u2022 Try to (re)start the application using the Visual Administrator Choose Server --> Services --> Deploy --> View on Application or restart the J2EE engine
    u2022 The problem is that not all J2EE services can be started by the J2EE. i.e Start the Visual Administrator and select Server->Services->Deploy in the tree on the left. On the right-hand side, choose the Runtime tab page. You see a tree in the right window with all applications if you select the APPLICATION radio button. Check if they are running, otherwise choose Start. Usually the J2EE engine starts all services automatically.
    u2022 Refer SAP Note 803145,807000,791655
    May it helps.
    Regards,
    Caio Cagnani

  • 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

  • Remove XML Prefix in SOAP Sender Adapter

    Hi
    I am using a SOAP sender adapter and testing it from SOAP UI. The format that is generated from the web service is
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
       <soapenv:Body>
          <sap:SALES_ORDER xmlns:sap="http://XYZ.org/">
             <sap:HEADER>
                <sap:BATCH_ID>XYZ</sap:BATCH_ID>
                <sap:CREATE_DT>XYZ</sap:CREATE_DT>
    This format when processed in SOAP UI gave error which its not giving for other files. Clearly I need to remove this sap: tag, I can't use XML anonymizer as it is SOAP adapter and I can't select do not use soap env...Could anyone provide me Java/xslt code for the same..I tried all the codes on sdn but none of them worked.
    Regards,

    SImple Java mapping, that should help
    import java.io.InputStream;
    import java.io.OutputStream;
    import com.sap.aii.mapping.api.*;
    import org.w3c.dom.*;
    public class DeleteCDATA_DOM_mapping extends  AbstractTransformation  {
         public void traceXML(Node n,int i)
         {   AbstractTrace trace = getTrace();
              trace.addInfo(i+"$"+n.getNodeName());
              trace.addInfo(i+"$"+n.getNodeValue());
              trace.addInfo(i+"$"+n.getNodeType()+"");
         public void traceNL(NodeList nl)
              {       for (int i=0 ; i<nl.getLength();i++)
                        traceXML(nl.item(i),i);
         public void transform(TransformationInput in, TransformationOutput out)
                   throws StreamTransformationException {
                        AbstractTrace trace = getTrace();
                             try {
                                  InputStream is0=in.getInputPayload().getInputStream();
                                  StringBuffer out1 = new StringBuffer();
                                  byte[] b = new byte[4096];
                                  for (int n; (n = is0.read(b)) != -1;) {
                                       out1.append(new String(b, 0, n,"UTF-8"));
                                  String sss=out1.toString();
                                  sss=sss.replaceAll("<sap:", "<");
                                  sss=sss.replaceAll("</sap:", "<");
                                  OutputStream os = out.getOutputPayload().getOutputStream();
                                  os.write(sss.getBytes("UTF-8"));
                             } catch (Exception e) {
                                  throw new StreamTransformationException(
                                       "Exception in DeleteCDATA_DOM_mapping JAVA mapping ): "
                                            + e.getMessage());

  • HTTP Call to SOAP Sender Adapter

    Hi All,
    I'm working on a scenario where i plan to use SOAP Sender Adapter for receiving Plain HTTP Calls from the client.
    The purpose behind this exercise is to have control over the message flow in case of sender HTTP protocol in XI.
    I configured a SOAP channel and used the option 'DO Not Use SOAP Envelope'. But when i post  the message to the adapter engine using a HTTP client, it fails.
    Can somebody guide me in this case.
    Regards,
    Anurag

    Hi,
    >>>But when i post the message to the adapter engine using a HTTP client, it fails.
    with which error ?
    Regards,
    Michal Krawczyk

  • 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

Maybe you are looking for

  • How to get payment type from payment module...

    Hi, We need payment type from payment module in sale transaction for which we are trying to access BO object of Payment Module into sale Transaction. We followed steps as mentioned in www.scn.sap.com/thread/3335391 (second last reply by : Suhas). But

  • AUR Helper Scripts

    This thread is intended to provide a "locator" resource for all the AUR helper scripts out there - for searching and/or building from the AUR.  This does include some of the GUI pacman frontends, and it is ok to repost those here. I would appretiate

  • Mac Pro Hard Drive Setup Question

    Mr. FedEx brought me my Mac Pro today and I'm getting ready to set it up. I'm migrating from a PowerBook G4 17 inch and got the Mac Pro 3.0 GHz, 8 GB RAM, and four 500 GB hard drives. I figure I should do a freash install of Aperture instead of using

  • How to stop writing to FCC

    Hello All, One of the target field is mapped from source in my message mapping. Is there anyway to stop writing Integration Engine output to receiver file adapter? Thanks, Regards, Moorthy

  • Windows on external drive files

    I read on dualbootguru.com that with a properly reformatted windows disk, it is possible to install windows on an external drive. However, the re-formatting process of this disk is extremely complicated. Does anyone one have pre-formatted files to do