SOAP Sender Adaptor issue

Hi All,
In a soap adaptor we understand that SOAPAction is manatory header and it should be set as header to code i.e(postMethod.addRequestHeader("SOAPAction", "http://sap.com/xi/WebService/soap1.1");
or XMLHTTP.setRequestHeader "SOAPAction", "http://sap.com/xi/WebService/soap1.1") . Is there any way to send the SOAPAction directly input SOAP xml with out setting it by any request header.
Thanks in advance,
Venkat

Hi,
here is a thread about this topic:
What is the SOAP action.
and here a blog:
/people/thomas.jung3/blog/2005/06/05/web-services-the-case-of-the-missing-soap-action-header
Regards
Patrick

Similar Messages

  • SOAP sender adapter issue

    Hi,
    We are facing a peculiar issue when using SOAP sender adapter.It is a SOAP-XI-ECC scenario.
    We have created WSDL using propose URL. Edited the address location in WSDL and included QoS=ExactlyOnce.
    When we are testing from SOAPUI, it is making a asynchronous call, which is the requirement. But when the actual sender is sending the data using the same WSDL, it is making synchronous call. Any idea if Synchronous/Asyncronous decision/setiing is made at XI end or the portal end? And what is the solution?
    Thanks,
    Vishal

    Hi Shabarish,
    As mentioned in my query I have already tested it from SOAPUI and it is making asynchronous call.
    URL is:
    [http://server/sap/xi/engine?type=entry&version=3.0&Sender.Service=BusinessService&Interface=http://namespace^MI_product_oa&QualityOfService=ExactlyOnce]
    Regards,
    Vishal

  • Soap sender adpater issue missing sender interface and namespace in the msg

    Hi Expert,
    I got a problem when try to using soap sender adapter.
    Here is the sceanrio:
    Http web service client call ---PI soap sender adapter -some routing data-business system inbound.
    Sytem information:
    SAP_ABA     700     0019     SAPKA70019     Cross-Application Component
    SAP_BASIS     700     0019     SAPKB70019     SAP Basis Component
    PI_BASIS     2005_1_700     0019     SAPKIPYJ7J     PI_BASIS 2005_1_700
    ST-PI     2008_1_700     0001     SAPKITLRD1     SAP Solution Tools Plug-In
    SAP_BW     700     0021     SAPKW70021     SAP NetWeaver BI 7.0
    ST-A/PI     01L_BCO700     0000          -     Servicetools for other App./Netweaver 04
    Here is my problem. I use soapui trigger a test msg to PI system. But in the sxmb_moni, only sender service is there.
    The sender interface and sender namespace is missing. And the msg has error called: :INTERFACE_REGISTRATION_ERROR.
    Which means I do not have a inbound interface to process the msg.
    But I suppose to redirect the msg to business system.
    Here is the configuration:
    reciever determination: soap sender service, soap outbound interface, soap interface namespace --> reciever business sytem.
    Interface ditermination: soap sender service, soap interface --> receiver interface, receiver namespace.
    Sender agreement: soap service, soap itnerface --- soap communication channel
    receiver agreement, soap service---> receiver sevice, receiver interface, reciever namespace  and reciever cummunication channel
    define of soap sender adapter:
    soap sernder, with use encoded header and use query string checked and qos as exactly once.
    Anyone has any idea here? Many thanks! And most strange thing is yesterday it works and today it failed.
    Please kindly help here.
    Thanks a lot,
    Leon

    Hi guys,
    thanks for the input.
    Hi Sven,
    I have input default interface and namespace.
    Hi sivasakthi,
    Regarding mistype, it may happen, I will do it again right away.
    And the URL is generated by the wsdl toolkit in the directory.
    I marked use encoded header and query string in the communication channel.
    I will generate the wsdl again and test it again.
    Regarding URL(endpoint of web service):
    http://hostname:50000/XISOAPAdapter/MessageServlet?channel=:AGSSAL_SOAP:AGSSAL_SOAP_CC&version=3.0&Sender.Service=AGSSAL_SOAP&Interface=urn:a1s_saplivelinkcontent.service.sap.com^MI_O_AS_DELIVERNOTIFY_SOAP
    Again thanks for you guys help.
    Best regards,
    Leon

  • SOAP Sender Adapter Issues

    Hi Experts
    I am working on SOAP to Proxy scenario where I have created the SOAP CC and generated the WSDL from Sender agreement.
    When I try to execute from SOAP UI i get the connection refused erros though I enter the credentials of PI Server
    Error getting response;java.net.Connection refused:connect
    Please throw some ideas on this what are all config on the network or Basis side needs to be done
    Thanks
    PR

    Hi,
    Most probably a firewall actively prevents your connection attempts. You can verify this by using the TELNET operating system command from your local station. For instance in Windows, you run the Command Prompt and type: "telnet 80", where is your PI's host name.
    In case you connect successfully, you need to investigate further in PI.
    But if not (which most probably will be the case if you asked me), then you need to contact the network administrators and ask them to grant access to PI for your local station, or to provide you a testing environment that is inside company's internal network (depends on company's security policies).
    Hope this helps,
    Greg

  • Web Service SOAP Sender Authentication issue

    Hi Experts,
    Synch Scenario: Webservice call from SOAP client-> XI -> RFC Bapi call to R/3 and back to SOAP client with data.
    Soap Adapter on J2ee receives and process call ok, the error we are getting is on connection from AFW to IS; the error in the security log is:
    Attempting to create outgoing ssl connection without trusted certificates ,
    Warning , /System/Security/SecureConnectionFactory ,
    com.sap.security.core.server.https.SecureConnectionFactory , 
    Any tips where to look? We have enabled Principal Propagation via assertion tickets following SAP document to carry user id to R3 for authority check when Bapi runs.
    IS self signed cert has been imported to J2ee Ticketkeystore and J2ee cert has been imported to IS Strust/StrustSOO2 store adn added to ACK list. WE are using Http between J2ee and IS...hwoever from the erroe message it looks like it is evaluatiing https library com.sap.security.core.server.https.SecureConnectionFactory ?
    Thanks in advance for any help.
    Margaret

    did u instsall CA in ur visual admin for https/ssl t owork

  • SOAP Sender Adpater Authentication issue with Siebel

    Hello PI experts,
    I have developed scenario in which,
    SAP PI version: 7.31
    Sender : Siebel
    Sender Adapter: SOAP
    Receiver: SAP ECC
    Receiver Adapter: Proxy
    Scenario has been configured and wsdl is generated properly. I tested scenario using SOAP UI which gave me proper response.
    But when scenario has been tested through Siebel UI, its giving Authorization 401 error.
    HTTP/1.1 401 Unauthorized
    server: SAP NetWeaver Application Server 7.20 / AS Java 7.31
    date: Wed, 20 Aug 2014 05:54:58 GMT
    We have tried following approaches:
    1. Appending Credentials in URL
    2. Siebel team tried sending credentials in their workflow
    Referred blog:
    http://scn.sap.com/community/pi-and-soa-middleware/blog/2012/03/07/a-closer-look-at-soap-sender-authentication
    But in all cases we got same error.
    Also, is there any possibility to turn of sender authentication for SOAP adapter ?. I tried approach of removing tags in web.xml but that also dint work.
    Please suggest some way
    Thanks,
    Gaurav Khandelwal

    Hi Gaurav,
    Can you please check with your basis is that firewall will be open to send data  through soap to PI.
    Thanks,
    Sreenivas

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

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

  • R/3 to PI using RFC Sender Adaptor as Asynchronous scenario

    Hello Folks,
              RFC Adp.           SOAP Adp.
    ECC-->XI--
    >ARIBA
    I am new to PI and doing a scenario mention above. we are using RFC sender adaptor to send the data to XI in asynchronous process.
    I have config the Sender comm. channel as below.
    Appl.  Server(Gateway):  My Ecc Server host name
    Appl. Server Service (Gateway) : My Ecc server
    Program Id : XYZ.
    Note : while creating the the Service interface and Message mapping and Operation mapping I am using the RFCname.respone message type is that ok in asynchronous process?
    And then I went to ECC in Tcode SM59 and created a RFC destination of type TCP/IP
    and put the same information as given above and test the connection which is working fine.
    I have created a FM at ECC end make it remote enabled. and calling the FM in back ground task using destination in a Work flow code.
    When I run the Work flow code It ran successfully but i went to XI side there is no msg in the SXMB_MONI.
    Then i went to the component monitoring->Adatptor engine>Comm. channnel Monitoring and found that under my RFC sender comm. channel there is an error msg saying
    Error in processing caused by: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: senderAgreement not found: lookup of binding via CPA-cache failed for AdapterType RFC, AdapterNS http://sap.com/xi/XI/System, direction INBOUND, fromParty '', fromService 'BS_ECC', toParty '', toService '', interface 'YFPS_MM_I_0242_PO_APPROVAL_OUT', NS 'urn:sap-com:document:sap:rfc:functions' for channel 'CC_0242_PO_Approval_RFC_Sender' (channelId 19585252a58335ee871e4c3a771b027f)
    Where as i have checked that in the sxi_cache t-code there is a sender agreement for my scenario under the sender agreement tab.
    Please Help me in this to resolve the above error. I am totally stuck at this point.I would really appreciate a quick answer.

    Appl. Server Service (Gateway) : My Ecc server
    Confused with this statement.....
    it should have the format sapgwXX ....
    XX is the system number which comes from the j2ee port mentioned in the XI homepage URL
    http://<hostName>:5XX00:rep/start/index.jsp
    How to configure sender RFC adapter...check this blog:
    https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/1438
    Error in processing caused by: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException:
    senderAgreement not found:
    Sender Agreement is Expected in this communication which does not seem to be present in ID....create sender agreement using the RFC communication channel....
    Regards,
    Abhishek.
    Edited by: abhishek salvi on May 2, 2009 1:24 AM

  • SAP PI 7.1 SOAP sender 500 internal server error

    Hello!
    We would like to receive messages from our business partner. As the partner sends EDIFACT we have to use the conversion from EDIFACT-text to EDIFACT-xml. That's why we have to use SOAP instead of plain HTTP.
    As the partner already sent messages over X.400 we just added a SOAP communication channel and used this channel in the sender agreement instead of the X.400 communication channel.
    We sent the following link to the customer:
    http://<server>:<j2ee port>/XISOAPAdapter/MessageServlet?channel=<party>:<service>:<SOAP sender communication channel>
    One question: is the <service> the communication component used for the partner?
    At the moment the partner receives a 500 error message. Due to our network partner the message reaches the PI system.
    Due to the information I found that also a message parsing error can cause a 500 error message I would like to add the processing sequence:
    Does anyone have an idea how to solve this problem?
    Thanks a lot!
    Regards
    Christian

    Hi Christian
    You can refer to the following SAP Library link on how to configure the SOAP sender.
    Configuring the Sender SOAP Adapter - Configuring the SOAP Adapter in the Integration Directory/PCK - SAP Library
    For the URL, the <service> is the Communication Component that the SOAP channel belongs to.
    Using the example below, the value would be P_B2B_:BC_:CC_S_SOAP_
    Actually SAP recommends a new alternative for the URL. If you scroll right to the end of the library link above.
    You have configured the sender SOAP adapter. You can trigger a call to the sender SOAP adapter using either of the following URLs. However, SAP recommends you to use the second option.
    http://hostname:portname/XISOAPAdapter/MessageServlet?channel=partyname:service name:channelnameIf you have not created a party, enter channel=servicename:channelname.
    http://hostname:port name/XISOAPAdapter/MessageServlet?senderParty=name of the sender party<&senderService>=name of the sender service<&interface>=name of the interface<&receiverParty>=name of the receiver party<&receiverService>=name of the receiver service<&interfaceNamespace>=name of the interface namespace
    You can get this by generating the WSDL from the Sender Agreement object (Sender Agreement -> Display WSDL). The generated URL will be at the last section of the WSDL.
    Also, please note that modules cannot be added to the SOAP sender adapter, also mentioned in the link.
    You cannot add your own modules to this adapter.
    An alternative would be to receive the EDIFACT Flat file as it is, and write it to at temporary File/FTP location. Then have a second channel pick it up, you can configure the second channel with module to convert it to EDIFACT XML.
    Lastly, regarding the issue about the partner getting HTTP 500 error. Please check if you are able to see any error logs in the communication channel. It might give you some pointers as to what might be wrong - invalid sender agreement, etc, etc.
    Rgds
    Eng Swee

  • SOAP sender adapter and XI adapter reusablity

    Hi,
    We are having good amount of interfaces using SOAP sender and XI Adapters (WS to Proxy scenarios).
    My question is :
    we can make reuse of Sender SOAP and Rcvr XI adapters in all scenarios.
    If we reuse these adapters in all our interfaces what are the limitations and any problems we may face in future?
    Replies will be highly helpful.
    Thanks
    Kishore
    Edited by: kishore kumar on Jan 21, 2010 7:23 PM

    SOAP sender depends on the Sender Message Interface and Namespace (in versions lower than SAP PI7.1) so if your scenarios satisfy these parameters then you can (rather should) re-use the channels.
    Similarly for the PROXY receiver channel....if the proxy is being hosted on one particular receiver SAP ECC system then the details in all the channels that you create will be the same and wont be recommended....hence even this can be re-used.
    There is no issue in re-using the channels....just that you should closely monitor these channels to ensure that they do not stop/ fail causing all the involved interfaces to stuck.
    Regards,
    Abhishek.

  • 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 replacing file sender

    Hi All,
    I had a working file  -> RFC scenario.
    The sending system was upgraded and it can send WS now.
    I created a SOAP sender and changed the sender agreement accordingly.
    I can see the message in the SXNB_MONI but it is stuck in the "Message Split According to Receiver List" section with no error.
    The payload looks ok.
    The status of the message stays an empty circle, it doesn't turn into any of the signs.
    in the adapter log I get the following error:
    com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Received HTTP response code 500 : Internal Server Error
    any ideas?

    Couple of suggestions... Dont know how do you test??
    a) Create WSDL and import in soap UI or xmlspy and test it and see what do you get?  Still looks like some issue.
    b) Go to ID and do configuration test. I want you to make sure visit all the ID objects and see the changes made are sync with all ID objects.
    Check this thread
    Queue stopped in sxmb_moni
    Hope that helps

  • 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

  • SSL / X.509 In SOAP Sender/Receiver Adapter

    Hi Friends,
    We have few third party Java based systems which need to integrate with SAP PI7.1
    For this we are using
    SOAP Sender from Third PartyTo PI
    SOAP Receiver From Pi To Third Party Systems                                 
    The Customer Wants to implement SSL.X>509 certificates for encryption and decryption. as one of the option.
    we are  Facing few issues like.
       I am assuming each of the source system webservice calls will have
    to use a username/password to authenticate with the PI system
    a.       Will this use 'basic authentication', ie., credentials sent over as
    part of the HTTP header field ?
       i.
    Assuming we use SSL for transport level security - this is still not secure as the credentials are not encrypted
    ii.      Is  there a way to send in encrypted credentials and for the PI layer to decrypt the same, validate and process the request ?
    b.      Should we consider using a single sign-on mechanism ?
    c         Should we consider using X.509 digital certificates ?
          i.      This would require that the X.509 certs are maintained in the Source & PI webserver Java key stores
    d.      Should we also consider digitally signing the payload ?
         i.      This  requires using an appropriate hashing algorithm such as SHA-1 or MD5
    SOAP Sender /receievr Adapter has few properties not specific to them.How to Acheive this.
    Regards
    Chandra Dasari

    Hi Chandra,
    You may try to implement this using the AXIS framework of the SOAP adapter. This provides functionality for handling of X.509 encryption and decryption.
    You can generate/get the digital certificate and use it for both transport level as well as message level security. You would not require any additional encoding apart from this.
    Coming to your queries:
    Q - I am assuming each of the source system web service calls will have to use a username/password to authenticate with the PI system
    A - If you are using a certificate, then they can call XI using this certificate. You can share your public certificate with each of the parties.
    Q. Will this use 'basic authentication', ie., credentials sent over as part of the HTTP header field?
    A - Depends...if you are using basic authentication, then it will not be via X.509. It will be the normal process. These two are two different things.
    Q. Assuming we use SSL for transport level security - this is still not secure as the credentials are not encrypted
    A - This problem is resolved if you are using digital certificates.
    Q. Is there a way to send in encrypted credentials and for the PI layer to decrypt the same, validate and process the request?
    A - Yes. It is possible. But then you will have to implement encryption decryption logic at both the ends separately if you are not using certificates.
    Q. Should we consider using a single sign-on mechanism?
    A - Is your third party part of your landscape? if not then you might want to check and confirm this approach with your security adviser.
    Q Should we consider using X.509 digital certificates?
    A - Yes...This would resolve most of your problems.
    Q. This would require that the X.509 certs are maintained in the Source & PI web server Java key stores
    A - Yes.
    Q. Should we also consider digitally signing the payload?
    A - If you require message level encryption along with transport layer.
    Q. This requires using an appropriate hashing algorithm such as SHA-1 or MD5. SOAP Sender /receiver Adapter has few properties not specific to them.How to achieve this.
    A - You can provide this option while generating the certificate itself.
    Please let me know if this helps.
    Cheers,
    Sarath.

Maybe you are looking for