Sender SOAP EOIO Queue - Urgent

Hi all,
Could any one help me with this.
We have a scenario, where we send Mat. Master data to R/3. There is a thrid party app from which a SOAP request is sent to R/3 as there is webservice exposed on XI.
When the SOAP sender adapter sends the soap request to XI, I would like to serialize the messages using QOS: EOIO. So that when they reach the target system which is R/3, the data does not get duplicated and is in some desired sequence.
Coming to the actual tricky part,
While defining the sender SOAP adapter, in the QueueID field, I would like to give a dynamic name. As I wanted to have different queue for each Material.
Is it possilbe?
The main reason for this is: Being EOIO if one fails all the subsequent messages will be in HOLD status which would sometimes make J2EE engine scream.
Can any one help me with this.
reg

Hi ,
Help me understand one thing ..since you are trying to keep things in order you are using EOIO ..
So hypothetically even if you have dynamic queue for each message ..then they wont be in order would they ...i.e. qos for each wil EO for each message .
Now In order ...to overcome this ....you can either use the serialisation concept of bpm or ...
better
for SOAP to idoc ..scenario .
Use one of the given idocs ...extend if the need be ..write some kind of validation in the idoc posting function module ..
trigger by background job ...the works you know ..
and you will be good to go ..
besides ..the messages in EOIO ..will fail till such time you take care of the valdation during mapping itself ...
Which means better understanding of the data which is coming in...
which you will get only after posting a few files ...monitoring
and whenever one fails ...apply the necessary ..fix in mapping .
That way your interface will only get better ..
Since you are talking webservice on sender ...most important kind of ...validation
you can have is ...existence check....
Kindly consider
Kindly Consider..

Similar Messages

  • Queue name in QOS EOIO -Sender SOAP Adapter

    hi,
    While configuring sender soap adapter , if we specify EOIO as QOS , then there is a mandatory parameter Queue name to be specified.
    What is this Queue name ?
    and where is it created
    kindly reply
    Regards,
    loveena

    Hi D' souza
    Goto tcode -> SXMB_ADM -> register queues
    for specifying QOS EOIO you need to assign a queue
    from there you can specify the queue for Outbound side EOIO queue
    Various queue name and there meaning is as follows
    XBT*-Queues for Exactly Once.and time dependent
    XBQ*-Queues Exactly Once In Order.
    XBTI* are inbound queues for EO with time constarint
    XBTO* are outbound queues for EO with time constarint
    XBQI* are inbound queues for EOIO
    XBQO* are outbound queues for EOIO
    for beter understanding of how to configure sender soap channel you may folow this link
    http://help.sap.com/saphelp_nw04/helpdata/en/0d/5ab43b274a960de10000000a114084/frameset.htm
    thanks
    sandeep
    if helpful reward points
    Thanks
    sandeep
    if helpful rewrad points

  • Change Queue Name in Sender Soap Adapter (or make it dynamic)

    Hello SDN!!!!
    We have a scenario where we want to make a message EOIO and I have set the Queue Name in the Sender Soap Adapter and this works great. BUT it is needed to have a more specific queue name (based on order numbers not interface name) So with this being said, Is there any way to change the queue name or append to it from the Soap Sender Adapter. I see it is possible to write a Module Bean, but the Message object returned from the ModuleContext is a scaled down version of the normal message object. Any help would be greatly appreciated
    Cheers
    Devlin

    Is this the only way to change the queue name for Soap Sender? I don't think it is possible for them to do this, as their urls are static when calling us

  • Different / multiple senders to the same EOIO queue name.

    Hello,
    I'd like to know if it is possible to send from different senders, different messages to different receivers but using always same EOIO queue?
    Scenarios are:
    1) SOAP SENDER -> PI ->  SOAP RECEIVER A
    2) IDOC SENDER -> PI -> SOAP RECEIVER B
    3) PROXY ABAP -> SOAP RECEIVER C.
    All messages need to be processed by receivers in the same order they were sent from the different senders.
    How this scenario should be implemented?
    Thanks in advance.

    Hi Michal. Thanks for response!
    As far as I know,
    1- Proxy Sender adds a prefix by defaul. Is it posible to change this behaviour?
    2- By Following note 856597, I understand that you can set your own queue name in parameter &QueueId=xxxxxxxxxxxxxxxx. So there should be no problem.
    3- In Idoc Adapter, you can set a queue name by using a Function Module, but I dont know whether this adds or not a prefix. Will it add a prefix to the queue name?
    So, in case I want to use for all this adapters the same queue, then I need to set in the Soap queueId param, and in the Idoc function module, the same queue name that is generated automatically in Proxy Sender (since this is fixed queue name based on Prefix + custom queue suffix).
    4-  Is that true? Can I guarantee that from IDOC I can use same queue as used by Proxy and IDOC won't add a prefix?
    Thanks again.

  • Reading parameters from Query string : Sender SOAP adapter.

    Hello Experts,
    I have a SOAP to SOAP scenario. Here we will have multiple receivers and dynamic receiver determination is needed.
    The sender will send a Value in Query string of URL to sender SOAP adapter. This value in Query string parameter will decide the receiver at runtime.
    I need to know, how can we read values from Query string of incoming call? I did tried to search blogs & forum threads but unfortunately not able to hit the right links.
    Any inputs will be of great help.
    Should i use "Use Query String" on sender soap channel? I tried it, but i was not able to find any query string parameters in SOAP header or payload.
    Please guide me, its bit urgent.
    Regards,
    Abhi.

    > But the argument provided from their side is: They are using standard XSD and this service is provided out of box with sender application.
    If they can add a URL parameter, they can also add a field to the structure.
    > They cant control the value mapping of parameters in payload to the extent required to implement this change.
    Adding a new field to the structure would not affect any existing mapping.
    > Since they have this custom requirement of multiple receivers & receiver to be determined at runtime, they need to go for Query string.
    This can be done based on any field of the payload.
    > I need to find a way to read the query string in any case.
    This is not supported by SOAP adapter.
    > Can I use one of the header parameters to be mapped to this value  (By selecting "Use Query string" & "Keep Headers" flag in sender CC) & then extract this value from header using Dynamic configuration ?
    This feature works only for XI header fields, like message ID or QoS.
    Not for individual parameters.

  • Duplicate check not working in sender soap adapter

    Hi guys,
    I have an urgent problem.  I am using a Sender Soap Adapter (quality of service Best Effort) to receive certain web services requests and send back synchronous responses.
    I have ticked the parameters "Use Encoded Headers" and "Use Query String" to implement duplicate check.
    For this reason I am expecting XI to return errors of the following type when the sender systems posts duplicates:
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="PERSIST">MSGGUID_EXISTING</SAP:Code>
      <SAP:P1>D00B71AC7AEBDEB3E011E5E43C49D97B</SAP:P1>
      <SAP:P2>CENTRAL</SAP:P2>
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Message ID D00B71AC7AEBDEB3E011E5E43C49D97B for pipeline CENTRAL, version already exists in system</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    However, although the duplicates go into an error status, the system is responding with the following message:
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="BPE_ADAPTER">SYSTEM_FAILURE_INTERNAL</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>An internal error has occurred</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    Can anybody tell me how to force XI to return a message type "MSGGUID_EXISTING" when it catches duplicates?  Or if there is any configuration I can change?
    Many thanks,
    Aldo

    OK, this problem is resolved.
    XI seams to send the error SYSTEM_FAILURE_INTERNAL the first time it receives a duplicate message and sends the MSGGUID_EXISTING error on the following attempt to post the same message.
    Cheers.
    Aldo
    Edited by: Aldo Lazzarini on Sep 23, 2011 6:50 AM
    Edited by: Aldo Lazzarini on Sep 23, 2011 6:53 AM

  • IOException: invalid content type for SOAP: TEXT/ using Sender SOAP adapter

    Hi all,
    When I am using Sender SOAP adapter, i am getting (MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML using connection SOAP_http://sap.com/xi/XI/System) exception.
    From my RWB I can see:
    2009-05-25 16:18:39 Information The message was successfully retrieved from the call queue.
    2009-05-25 16:18:39 Information The message status was set to DLNG.
    2009-05-25 16:18:39 Error Failed to parse the XI system response.
    2009-05-25 16:18:39 Error The message was successfully transmitted to endpoint com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIMessage creation failed (inbound). Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML using connection SOAP_http://sap.com/xi/XI/System.
    2009-05-25 16:18:39 Error The message status was set to FAIL.
    2009-05-25 16:18:39 Error Returning to application. Exception: com.sap.engine.interfaces.messaging.api.exception.MessagingException: XIMessage creation failed (inbound). Reason: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Could not parse XMBMessage. Reason: java.io.IOException: invalid content type for SOAP: TEXT/HTML
    Please help if possible! Thanks!
    Mayank

    Hi,
    Check in SLD your integration engine business system have the following
    pipeline url : http://server:httpport/sap/xi/engine?type=entry
    check Http port also
    After that go to TCODE - SXMB_ADM - integrationn engine configuration and check if your server is configured as HUB with the same url or not.
    Thanks
    Kasturika Phukan

  • Sending SOAP request from XI and writing a scheduler for this

    Dear XI Experts,
    My scenario is as follows.
    We have two landscapes
    1)     XI, R/3
    2)     Client System(Remote, Other than SAP)
    Now we have to pull the data from client system using WSDL (There will be one method for pulling the data in the WSDL file). The WSDL is provided by the client. We are importing that WSDL as external definition in Integration Repository and implementing the scenario “SOAP to XI to RFC” and configuring it Integration Directory.
    Remember the client will not send the data to XI. Only we have to pull the data as mentioned above.
    Problems:-
    (i)     How to send SOAP request to the client using XI only?
    (ii)     How to write a scheduler for this?
    please help us.
    Thanks...
    Praveen Gujjeti

    Ur Suggestion
    "My proposition looks like that. in R/3 you have scheduled RFC call in some program. This RFC calls XI and XI is calling using SOAP adapter your client. Then response go back to your RFC and you can handle this data."
    As you mentioned, I am not scheduling any RFC call in R/3. If you go through my first query u can find two points where I am having some doubts......
    How to send SOAP request to the client using XI only? Is it possible to send a SOAP request from XI?
    If so,
    (ii) How to write a scheduler for this? So that it will invoke the webservice and get the data from client application(system)

  • Error while testing sender SOAP scenario from XMLSpy-but can test from RWB

    HI,
    I developed one scenario with sender SOAP adapter and Receiver side ABAP proxy.
    Now I want to test my scenario.
    I tested my scenario  successfully from RWB-->Integration server &#61664;Integration Engine. ( it posted successfully and I can see checked flag in SXMB_MONI)
    But when I tried to test the scenario fro XML spy it is throwing HTTP error 500.
    When I type my URL in internet explores it is giving “Message Servlet is in Status OK”.
    I am not sure what is the difference between there two type of testing.
    What does it mean by successful from RWB and fails from XMLSpy?
    Why I am getting this error from XMLSpy?

    Dear Ashok,
    if RWB showing you successful then message in not in error.
    XML Spy giving error HTTP 500 not it is just server error.This might be due to large payload.
    here is the description of all error related with 500+
    5xx Server Error
    The server failed to fulfill an apparently valid request.
    Response status codes beginning with the digit "5" indicate cases in which the server is aware that it has erred or is incapable of performing the request. Except when responding to a HEAD request, the server SHOULD include an entity containing an explanation of the error situation, and whether it is a temporary or permanent condition. User agents SHOULD display any included entity to the user. These response codes are applicable to any request method.
    500 Internal Server Error
    501 Not Implemented
    502 Bad Gateway
    503 Service Unavailable
    504 Gateway Timeout
    505 HTTP Version Not Supported
    506 Variant Also Negotiates (RFC 2295)
    507 Insufficient Storage (WebDAV) (RFC 4918)
    509 Bandwidth Limit Exceeded
    This status code, while used by many servers, is not an official HTTP status code.
    510 Not Extended (RFC 2774)
    first ping your server
    Tcode for this is SM49>ping
    Then in additional parameter put the server IP and execute it will show you its reachability.
    if it is not reachable then contact the server vendor,
    Else if it is timeout problemthen
    you run Tcode SXMB_ADM>intregration engine configuration
    put category RUNTIME
    then click specific configuration
    Then change/increase HTTP timeout
    **PS: Reward points if useful**
    Regards,
    Sumit Gupta

  • Error 401 while sending SOAP Request to XI

    hi friend ..
    i am getting Error 401 while sending SOAP Request to XI..
    can u suggest me where may be the error?
    thanks..

    Hi,
    Refer these threads:
    Testing XI SOAP scenario via XMLSpy
    Re: SOAP Sender ADAPTER 401 No Authorisation
    Re: XI Web Service - Code: (401) Unauthorized.
    Try soap client https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9b16d790-0201-0010-4e9b-baa5f42830d8
    Regards
    Suraj

  • HTTP error while sending SOAP request using wsdl file

    We created SOAP request using the wsdl file ; while sending SOAP request from Altova XMLSpy, we are getting the below error.
    HTTP error: could not post file
    Can you please explain how to resolve this issue
    Regards,
    Sanghamitra

    there is very little information to help you here.
    Can you confirm if this is a SOAP sender scenario or SOAP receiver scenario?
    Also do go to thru these links to help you out;
    Troubleshooting
    Troubleshooting - RFC and SOAP scenarios *** Updated on 20/04/2009 ***
    RFC -> SOAP
    RFC -> XI -> WebService - A Complete Walkthrough (Part 1)
    RFC -> XI -> WebService - A Complete Walkthrough (Part 2)
    SOAP <-> XI <-> RFC/BAPI
    Walkthrough - SOAP  XI  RFC/BAPI

  • Sender SOAP Adapter

    Hi,
    Scenario is Sender SOAP and Receiver (Server Proxy) .
    Integrated the ESS applications on .net portal using soap adapter..example salary slip, ctcview....
    If we give input as empno to soap adapter it will give you salary details back to .net portal.
    All this functional;ity are working fine..
    Now i need to check the authorization to acess this soap request. As this webservice works for all the employess in the organazation. but i need to restrict for few employees. Is there any authorization check in XI as it is there in ESS.
    If so how to use that . Now in .net portal they are useing the same user name and pwd for all the soap requests.
    Regards
    Vijay
    Edited by: vijay Kumar on May 25, 2010 11:18 AM

    Michal
    Hopefully I can help you for once!
    You can set the SOAP action to debug in the Java Admin Console.
    Set com.sap.aii.af.mp.soap and com.sap.aii.messaging set to DEBUG
    Set location
    &#61680;     Services
    &#61680;     Log Configurator
    &#61680;     Locations
    &#61680;     Choose com.sap.aii.messaging
    &#61680;     Assign Severity Debug
    See https://service.sap.com/sap/support/notes/856597 for more info...
    This note has a an attachment: tcpgw.zip for tracing the whole message...

  • '500 Connection timed out' Error in Sender SOAP Scenario

    Hi mates,
    I exposed o/b synch MI as a webservice. This webservice is received by a BPM and it triggers an IDOC generation program on R/3. BPM waits & collects the IDOCs and cosntructs the response from these IDOCs and returns it to the webservice caller.
    I'm making the SOAP call from a client program and I get the correct response in some cases where the data requested is not huge...normally with in 30 sec.
    But in some cases I get the error '500 Connection timed out' after 60 sec. The detailed message is as follows.
    <i>500 Connection timed out
    Connection timed out (-5)
    Error: -5
    Version: 6040
    Component: ICM
    Date/Time: Thu Jun 15 17:06:10 2006 
    Module: icxxthr_mt.c
    Line: 2551
    Server: hcidx1_DX1_03
    Detail: Connection to partner timed out after 60s</i>
    My BPM waits for 10 minutes and I set the parameter XI.Timeout to 600000 (i.e. 10 minutes) in module parameter table for the sender SOAP adapter as per the note 856597. And in SXMB_ADM, I set the parameter CHECK_FOR_ASYNC_RESPONSE_TIMEOUT of category SA_COMM to 600. In my client program, I set the timeout as 1 hour. All these config params are supposed to make sure that all the components involved wait for atleast 10 mins before they timeout.
    But I get timeout after 60 sec. Whats wrong/missing?
    I highly appreciate your inputs.
    thx in adv
    praveen

    Hey Praveen,
    <i>I'm making the SOAP call from a client program and I get the correct response in some cases where the data requested is not huge...normally with in 30 sec.
    But in some cases I get the error '500 Connection timed out' after 60 sec. The detailed message is as follows.</i>
    does this mean you are getting some response in some cases where u r payload is small , and if its large ur getting some timeout like this? Also is ur scenario Sync / Async?
    Assuming i understood correctly , i came a similar situation but that has to do some thing with Paging file / memory issues when the files are too huge and no. of users are high please let me know if this is the case.
    best regards
    Vara
    [PLEASE REWARD FOR POSTING]

  • Pipeline timeout in sender SOAP scenario

    Hi mates,
    I've exposed an o/b synch MI as a webservice. A BPM will receive this message and triggers an IDOC generation program on R/3. These IDOCs are collected by BPM and a response message sent to the SOAP caller.
    When I make a SOAP call, with in 60 seconds I get the error 'PL_TIMEOUT..Pipeline timeout condition satisfied'. The IDOC generation program takes more than 60 seconds to post the IDOCs. But, before this happens, SOAP caller is getting a timeout exception.
    I see in the note 856597 that default timeout for sender SOAP calls is 5 mintutes. I set XI.Timeout = 600000 ms (i.e 10 mins) as per the note. I don't see any effect. Still, the timeout happens for after 1 minute. What is wrong/missing?
    Please help me out.
    thx in adv

    Renjith,
    I set the parameter CHECK_FOR_ASYNC_RESPONSE_TIMEOUT to 120 sec to check if this has any effect. Now I dont get any error in SXMB_MONI, the satus shows 'Log version' (small blue disc icon).
    But, the SOAP caller (oXygen)receives the same (earlier) error 'org.apache.commons.httpclient.HttpRecoverableException : java.net.SocketTimeoutException: Read timed out'
    I donno if I set the right parameter. Please clarify. The other two parameters in SA_COMM category are
    CHECK_FOR_ASYNC_RESP_PERIOD
    CHECK_FOR_MAX_SYNC_CALLS
    praveen

  • Sender SOAP (Scenario)

    Hi Guys,
    Here is my scenario where client has a Java Web Aplication to get connected to my Backend System using RFC.This happens through XI.
    I produce the Outbound Interface in the Form of WebService (By generating WSDL file)
    Here we use Sender SOAP Adapter. I want to implement security level using key / certificates.
    Now important thing here is the people who are going to login donot have username on PI box.
    Now how can assign the certificate to the users who are external in my visual admin.
    Hope my scenario is clear . Kindly post u r views on this.
    With regards
    Srini

    Hi,
    I guess the Service user which you would have created will be in XI abap stack only.You need to provide the url and the userId, pwd to the web service client so that they will be bale to invoke your webservice.. you don't have to give the service user details in Soap Sender Adapter. It is just for ypur web client to acesss your webservice.
    The url will be like this:
    http://<serverhost>:<port>/XISOAPAdapter/MessageServlet?channel=<party>:<ServiceName>:<Channel Name>
    I hope it clears your doubt.
    Thanks
    Amit
    Edited by: Craig Cmehil on Jul 3, 2008 3:30 PM

Maybe you are looking for