Async-Sync conversion: JMS-SOAP-MAIL

Hi all,
I'm making a async-sync scenario:
JMS-SOAP-MAIL
The SOAP interface is synchronous and JMS and MAIL are asynchrnouse.
I have configured the sender JMS adapter as following:
Modules
<b>1- AF_Modules/RequestResponseBean - Local Enterprise Bean - 1
2- CallSapAdapter-Local Enterprise Bean - 2
3-AF_Modules/ResponseOnewayBean-3</b>
Parameters
<b>1 - passThrough - true
3-receiverChannel - Receiver Mail Adapter Name
3-receiverService - Receiver Business Service/ System</b>
But I got such errors in the adapter:
<i>2007-08-29 18:56:13     Success     Using connection JMS_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.
2007-08-29 18:56:13     Success     The XI response message for message bf7c9ea0-5650-11dc-8fae-001438c505fb(INBOUND) was successfully returned to the calling application.
2007-08-29 18:56:13     Success     The message status set to DLVD.
2007-08-29 18:56:13     Success     ROB: entering ResponseOnewayBean
2007-08-29 18:56:13     Success     ROB: resuming the transaction
2007-08-29 18:56:13     Success     ROB: calling the module processor ...
2007-08-29 18:56:13     Success     MP: Entering module processor
2007-08-29 18:56:13     Error     MP: Exception caught with cause com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectId
2007-08-29 18:56:13     Error     ROB: error during processing: com.sap.aii.af.mp.processor.ModuleProcessorException: Processing Error caused by: com.sap.aii.af.service.cpa.impl.exception.CPAObjectKeyException: Value of key must not be null: ObjectId</i>
Any idea?
Thanks!
Regards,
Hui

Hi,
Instead of using a JMS adapter can you try this with a File Adapter on the sender side?
It worked for me with a File adapter or alternately try looking into this blog if it helps ( not sure if it will  tho)
/people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
Regards
Bhavesh

Similar Messages

  • Async/Sync Bridge with SOAP response

    Hi All
    I have a interface that uses BPM for async/sync bridge(SOAP->RFC->IDOC). I now need to change this to send response back to he webservice.
    Any ideas on how to achieve this?
    Regards

    avoid the BPM.
    just do a simple SOAP to RFC scenario here - Walkthrough - SOAP  XI  RFC/BAPI

  • Async/Sync Bridge JMS/File

    Hello,
    An Async/Sync Bridge with usage of the JMS adapter is described in several blogs. Is there a chance to use the JMS Adapter as a sender system and a File Adapter as the receiver system in such a scenario?
    Any suggestions are appreciated.
    Peter

    This "How To" Wiki should help you with the parameters you will need in the JMS Adapter.
    http://wiki.sdn.sap.com/wiki/display/XI/HowTo...ContentconversionmodulewithJ2EEJMS+adapter
    You can go to/from files with no problem, and you don't need the Business Process Engine.

  • Async/Sync Operation with SOAP?

    I have created a service interface with two operations. An Asyn iDoc operation and a Sync RFC operation. I've created a web service which the partner references. If I configure the SOAP commsn channel as Best Effort (Synchronous) then the iDoc Operation returns an error 'Only asynchronous processing supported for IDoc adapter outbound processg' BUT the RFC operation works. If I configure the web service as Exactly Once (Async) then the iDoc operation works perfectly but the RFC operation doens't return a response, it becomes Async.
    Any idea how I can have an Asyn and Sync Operation in the same Service Interface, Using the same SOAP comms channel?

    I do not want to tell something wrong. I have not much experience with that topic.
    maybe there is something new in PI 7.11 that I do not know.
    In PI 7.0 the SOAP adapter determines the QoS from channel config or from URL parameters. The SOAP adapter does not read repository and so does not know, if an interface is sync or async.
    This is different, when you use WS-RM adapter with ABAP/Java proxies. Here you can use the same interface for sync and async operations.

  • Async/Sync scenario idocs- soap

    Greetings All,
             I have a scenario (on PI 7.1) where i needs to send a ZIDOC data from ECC to external web service. The web service returns response back on successfully processing the data. There is no need to update anything received from the response back to ECC (response is just a record no).
         Is it possible to achieve this without using BPM?
    (Note: I am using Java mapping to develop SOAP envelope after message mapping, as I need to add some parameter to soap header of request structure)
        I am ready with scenario (without BPM), the operation Mapping is having idoc at sender side and service interface which soap wsdl on receiver side. I did not have any mapping from response to ECC. I am not sure if it going to be work for me or not.
    I am waiting for your inputs/help and will be appreciated.
    Many Thanks,
    Sandip

    >>>Is it possible to achieve this without using BPM?
    Yes. It is possible to do idoc to soap without using BPM. You basically want asynchronous scenario.
    >>> I am not sure if it going to be work for me or not.
    >>>I am waiting for your inputs/help and will be appreciated.
    Theoratically you can ignore the response from webservice by not doing response mapping. You might see some errors  that message got interrupted in Integration Engine. I guess

  • Questions async-sync bridge with JMS

    Hi all
    SAP recommends using JMS rather than BPM to make async-sync bridge or sync-sync bridge. But how to use it in real life?
    For example, I have an async RFC function to call a sync SOAP function and the sync response  should be passed to a mail receiver. I know how to use BPM to achieve this scenario. But how should we use JMS or can we use JMS to do the same thing?
    Another question: If we use SAP own JMS service to make async-sync scenario, we need a sender JMS adapter and a receiver JMS adapter. Are the sender and receiver connected to the same queue in JMS or different queues?
    Thanks!
    Regards,
    Hui

    Hi Hui!!
    have a look in these Url's
    <b>sync/Sync Bridge in the Sender JMS Adapter</b>
    http://help.sap.com/saphelp_nw04/helpdata/en/45/20d251c20a0732e10000000a155369/frameset.htm
    You can get some idea on these links also
    /people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi - Use of Synch - Asynch bridge in ccBPM
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken] - Use of Synch - Asynch bridge in ccBPM
    Go thru following Weblogs:
    1.Walkthrough with BPM:- /people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
    2./people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm
    3./people/ravikumar.allampallam/blog/2005/02/17/bridging-the-sync-async-bridge-with-fork-xi
    4.https://www.sdn.sap.com/sdn/weblogs.sdn?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
    <b>Sync/Async communication in JMS adapter without BPM</b>
    /people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
    this thead also
    Async/sync bridge

  • Problem with JMS Correlation i Async/Sync bridge

    This is my scenario:
    I’m receiving a request message from the JMS-adapter and forward this via a async/sync bridge to CRM. I’m using a synchronous proxy in CRM. I want to send the response from this proxy back to MQ via the JMS adapter and put my original JMS Message ID in the JMS Correlation ID in the response message.
    I’ve read about how to configure this in the pdf-document “How to Correlate JMS messages”.
    I did as suggested and that is as follows.
    1.     In my receiver channel I set the Correlation Setting “Set XI Conversation ID To”=JMSMessageID.
    2.     In my integration process (“async/sync-bridge”) I set the Conversation ID in my async send step to the Conversation ID of my request message.
    3.     In my sender channel I set the Correlation Setting “Set JMSCorrelationID To”=XI Conversation ID.
    When I test my scenario I get the following error:
    “New JMS message cannot be correlated with the XI message although it is configured. Unable to set because correlation value is null. Correlation rule: XI_CONVERSATIONID, correlated property: JMSCorrelationID”
    I thought that my Conversation ID should carry the value of my initial JMS Message ID. I know that this is not null.
    Can somebody please help me?
    Kind regards.
    /Helé

    Hi Wallace,
    I tried to set the Conversation ID to the Correlation ID instead but I still get the same error.
    The sending application needs to correlate the request message with the corresponding response and since we are using MQ this is the way to do it.
    regards.
    /Helé

  • Async-Sync Bridge without BPM for SOAP WS and JDBC

    I heard you can now have async-sync communication outside of BPM by utilizing adapter modules?
    My scenarios are:
    proxy (async) -> SOAP WS (sync)
    proxy (async) -> JDBC (sync)
    I will like to capture the synchronous responses in XI and perform some basic error handling.
    I read h[File - RFC - File without a BPM - Possible from SP 19.|File - RFC - File without a BPM - Possible from SP 19.] and the release notes for 2004s SP19 and there is no reference to JDBC or SOAP.
    tia

    Hi Megha,
    Plz do refer the below links u will get an idea:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a05b2347-01e7-2910-ceac-c45577e574e0
    Sync/Async communication in Adapter without BPM (SP19)
    Sync/Async communication in JMS adapter without BPM (SP19)
    Async/Sync Communication using JMS adapter without BPM (SP 19)
    Async/Sync Communication using JMS adapter without BPM (SP 19)
    also try this
    Sync/Async communication in JMS adapter without BPM (SP19)
    File - RFC - File without a BPM - Possible from SP 19.
    Collecting IDocs without using BPM
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5059f110-0d01-0010-7c8b-fdc983be70c0
    Have a look
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5059f110-0d01-0010-7c8b-fdc983be70c0
    HTTP to RFC - A Starter Kit
    Sync/Async communication in JMS adapter without BPM (SP19)
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]
    Do refer this thread:
    JDBC Async-Sync bridge does not work
    Reward if found useful
    Regards,
    Vinod.

  • Async Sync Bridge without BPM (Proxy-Soap-Idoc)

    Hi,
    I have read some blogs how to do the Async Sync Bridge without BPM for JMS adapters. I have a requirement that I am getting a Async Proxy message to PI and then PI makes Sync Soap call then the result need to send through the Idoc adapter.
    Proxy - Soap- Idoc
    Here Proxy is a sender so no adapter required in the Config and also Soap is java based adapter and Idoc adapter is a ABAP based so I am not sure this is possible but I just wanted to check with you.
    Please let know if this is possible or not?
    PI 7.1 with EHP1
    Thanks,
    Laxman
    Edited by: Laxman  Molugu on Oct 14, 2010 2:15 PM

    The mapping programm can be defined as a user defined function. As sample of mine is "getGoogle()", which is doing some kind of address validation. The input parameter URL[0] contains source address. For that you need to import:
    org.apache.commons.logging.*;
    org.w3c.dom.*;
    javax.xml.parsers.*;
    org.xml.sax.SAXException;
    org.apache.commons.httpclient.*;
    org.apache.commons.httpclient.methods.*;
    org.apache.commons.codec.*;
    org.apache.log4j.*;
    Example code for UDF "getGoogle()" is:
    String sUrl = "http://maps.google.de/maps/api/geocode/xml?address=" + URL[0] + "&sensor=false";
    HttpClient client = new HttpClient();
    GetMethod method = new GetMethod(sUrl);
    byte[] responseBody = null;
        try {
    //      int statusCode = client.executeMethod(method);
    //      byte[] responseBody = method.getResponseBody();
    //     result.addValue(new String(responseBody));
    String sResponse = "initial";
    int statusCode = client.executeMethod(method);
    responseBody = method.getResponseBody();
    ByteArrayInputStream bis = new ByteArrayInputStream(responseBody);
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = factory.newDocumentBuilder();
    Document doc = db.parse(bis);
    doc.getDocumentElement().normalize();
    NodeList nodeLst = doc.getElementsByTagName("formatted_address");
    Node formAdr = nodeLst.item(0);
    NodeList nlFormAdr = formAdr.getChildNodes();
    sResponse = ((Node) nlFormAdr.item(0)).getNodeValue();
          // Deal with the response.
        result.addValue(sResponse);
        } catch (Exception e) {
          result.addValue(e.toString() + "######## exhrenda - googleResponse:############### URL=" + sUrl+"###########"+new String(responseBody));
        } finally {
          // Release the connection.
          method.releaseConnection();

  • Correlation and Async/Sync Communication using JMS adapter without BPM

    Hello
    1. Pls explain with simple example docs/links --- Correlation
    2. Async/Sync Communication using JMS adapter without BPM
       If i see blog --- If I go with blog --- /people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
    Pls explain --- Correlation Settings, select JMSMessageID for the XI Conversation ID.
    Pls explain --  Correlation Settings, select XI Conversation ID as jMSCorrelationID.
    Can you pls explain me this example with JMSMessageID and JMSCorrelationID context
    Regards

    Hi Henry,
    For Correlation, please go through the below link.
    /people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
    Sync / Async Bridge communication using JMS : http://help.sap.com/saphelp_nw04s/helpdata/en/45/20d251c20a0732e10000000a155369/frameset.htm
    Sync / Async communication without BPM in JMS : /people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
    /people/henrique.pinto/blog/2007/08/02/syncasync-scenarios-without-bpm
    Hope these help
    Regards
    Kiran..

  • Sync/Async communication in JMS

    HI all,
    i configured scenario as mentioned in the blog
    "Sync/Async communication in JMS adapter without BPM (SP19)
    Venkataramanan Parameswaran".
    now i am working on PI 7.0
    but i am getting the error as fallows.....
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
    SOAP:mustUnderstand="1">
      <SAP:Category>XIAdapterFramework</SAP:Category>
      <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Object not found in lookup of
    RequestOnewayBean.</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack />
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    can anybody tell me why it is?
    Thanks,
    Kumar

    Please refer these links
    Sync/Async scenarios without BPM
    Async/Sync Communication using JMS adapter without BPM (SP 19)
    http://help.sap.com/saphelp_nw70/helpdata/en/45/20d1dec20a0732e10000000a155369/frameset.htm

  • File-SOAP-File Async/Sync Bridge : Null Pointer Exception

    Hi All,
    I have a File-SOAP-File scenario (Async/Sync Bridge). This scenario was working fine in PI 7.0. However since the time we have upgraded to PI 7.1, this scenario has been failing.
    I do receive a response for web service, however the sender File adapter fails after initiating Response bean.
    2010-08-04 12:16:02 Information MP: processing local module localejbs/AF_Modules/ResponseOnewayBean
    2010-08-04 12:16:02 Information The message was successfully transmitted to endpoint http://vs06cs01.sce.com:8000/sap/xi/engine?type=entry using connection File_http://sap.com/xi/XI/System.
    2010-08-04 12:16:02 Information The message status was set to DLVD.
    2010-08-04 12:16:02 Error MP: exception caught with cause java.lang.NullPointerException:
    2010-08-04 12:16:02 Error File processing failed with java.lang.NullPointerException: 
    Our Current PI level: 7.10.7.33
    Patch Level: 33
    Please advice.
    XIer

    Hi,
    Please go through all the settings for the modules once again - check for any space or other such character present or if some name is not correctly specified.
    If you still get the error, then make some change to the channel and re-activate.
    Also, make sure you are following the below sequence in the sender file channel-
    ModuleName                                                   Type              ModuleKey
    AF_Modules/RequestResponseBean      Local Enterprise Bean     1
    CallSapAdapter                                        Local Enterprise Bean     2
    AF_Modules/ResponseOnewayBean     Local Enterprise Bean     3
    Parameters
    ModuleKey                    ParameterName                   ParameterValue
    1                                       passThrough                          true
    3                                        receiverChannel                Receiver File Adapter Name
    3                                        receiverService                  Receiver Business Service
    Hope this helps.
    Regards,
    Neetesh

  • Sync/Async communication in JMS adapter without BPM

    Hi,
    as of SP19 XI's JMS adapter offers this new feature for Sync/Async communication through JMS Adapter modules instead of using a BPE.
    Now I would be interested to know if anybody has already successfully used this feature especially using WebSphere MQ as a JMS Provider (preferredly in the mode JMS Compliant: WebSphere MQ (non-JMS)).
    I experienced some issues with the XI Message ID being used as the JMS Correlation ID which is then mapped to the MQ Correlation ID being truncated after 24 characters. So I don't exactly know whether this is due to wrong setup or some general issues with this messaging system.
    Please let me know if you have any experiences at all with this new feature (please do not just post links to the following blogs, which I have thoroughly studied as well as the How-to Guide concerning this topic)
    /people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
    /people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
    thanks & regards,
    Peter

    Hi Peter,
    we working on the same Problem. Using IBM Websphere MQ as JMS Provider for the new feature: sync/async bridge without BPE.
    we switched on a high level trace for the adapter framework and saw a problem in the receiving Object of the JMS correlation id. The notify bean receives the JMS correlationid in hex format. so the beans have two different correlations, which could not find together.
    did you have any solution to get this new feature works with IBM Websphere ?
    thanks
    joachim

  • Proxy-Soap-Jdbc  Async/Sync Bridge

    Hi,
    I have proxy soap requestsoap response-jdbc syncronous scenario. i have used async/Sync bridge for that.
    I m getting NO_RECEIVER_CASE_ASYNC, No receiver could be determined error.
    I have created :
    2 Datatype for proxy sender and jdbc receiver and 2 MT
    6 Service interface :
            one abastract syncronous for proxy sender and jdbc receiver
            one abstract asyncronus for proxy sender
            one outbound asyncrous for proxy sender
            one abstract asyncronus for jdbc receiver
            one inbound asysncronus for jdbc receiver
            one abstract syncronous for SOAP request and response
    2 message mapping for request and response
    1 operation mapping  using  abastract syncronous for proxy sender and jdbc receiver with   abstract syncronous for SOAP request and response
    BPM steps
    two container request and response
    receiver- send1- send2
    receiver for asyncrous and file request
    send1 for syncrouns for request and response
    send2 for asyncrouns response.
    Activated the IR.
    ID Part.
    Imported BPM from Design and created two business component one for SOAP receiver and one for proxy sender and jdbc receiver.
    Created 3 Reciver Determination as proxy sender to bpm, bpm to soap, bpm to jdbc receiver.
    Created 3 IInterface Determination as proxy sender to bpm, bpm to soap, bpm to jdbc receiver.
    Created 2 Receiver Agreement as  bpm to soap, bpm to jdbc receiver
    Activated and run the proxy . in sxmb_moni i m getthing No receiver could be determined error.
    I have checked the BPM ,No semantic errors found.
    cleared the cache with sxi_cache and full refresh url.
    Please suggest me with above details.
    Regards
    Laxmi Bhushan Jha

    like in operation mapping we have abstract syncronous interface which has proxy as sender and jdbc as response
    receiver to SOAP reuest and response...
    Either of us seem to be confused!
    This is your scenario (as per my understanding)
    Receive (Proxy_message) --> Transformation --> Send (Mode = Sync...SOAP message) --> Transformation --> Send (mode = Async..JDBC req)
    If the requirement is correctly understood by me then:
    You should have one ASYNC-Outbound and ASYNC-Abstract interface for your Proxy-side.....proxy to be developed on the ASYNC-Out interface.
    You should have a SYNC-ABS and SYNC-IN interface for SOAP req and resp.
    You should have one ASYNC-IN and ASYNC-ABS interface for your JDBC side.
    Mapping to be developed between PROXY_Async and SOAP_Req_Async & SOAP_Resp_Async and JDBC_Async.
    Regards,
    Abhishek.

  • Sync/Async and Async/Sync Bridge in JMS Adapter

    Hi,
    I have scenarios using both the Sync/Async and the Async/Sync Bridge in the JMS Adapter. In general this works fine. There is just one thing that caught my attention.
    In the Sync/Async Bridge, the correlation in JMS is done
        JMS Message ID of Reqeust --> JMS Correlation ID of Response
    In the Async/Sync Bridge, it is done
        JMS Correlation ID of Request --> JMS Correlation ID of Response
    which seems strange as I would have expected to work the same for both ways...
    I'm following exactly the setup described in the 'How-to correlate JMS' guide.
    Has anybody experienced the same thing or am I missing something important here?
    thanks for your help
    regards,
    Peter

    Hi,
    If I get it right the MQ queue gives a response message back to XI. The message looks okay on MQ queue, but in XI it's empty.
    So I guess the problem must be within the channel that picks it from MQ queue. Did you configure any  modules in it that might screw up the content? Is the the message empty as soon as it arrives in XI adapter engine? Pls. check in RWB Monitoring or End-to-End monitoring.
    Do you have other channels that pick up messages from that or another MQ queue which do not show such an error? Are they configured exactly the same way?
    Regards,
    Kai

Maybe you are looking for

  • Not able to Print the report

    <p>Hello All,</p><p>I am not able to print the report. When i click on the icon a blank form opens up. Is there something i need to do to see the form with some details.</p><p>Thanks</p><p>ram</p><p> </p>

  • Upgrade to iLife 06 seemed to cause partial loss of iTunes music

    Upgraded to iLife06 Shortly afterwards tried to update iPod Shuffle and noticed songs marked with ! Clicking on songs results in message that these songs cannot be found. At first thought that this only affected purchased songs, but subsequently noti

  • Re: (forte-users) Using MouseCursor

    The MouseCursor is an ATTRIBUTE not a method so your code have to look like this: aFieldWidget.MouseCursor = MC_POINTER; --- J Lejen <j_lejenyahoo.fr> wrote: Hi everybody. I would like to use the MouseCursor. I try aFieldWidget:FieldWidget=(FieldWidG

  • Time Capsule via ADSL modem: settings

    In italy there's not a cable ADSL, so we need an ADSL modem (adapter) in order to connect to the web. So now I've just purchased a new Time Capsule and I'm in order to set the connection. I would set the device this way: 1)Set bridge mode the modem t

  • Why is my 'SIGN' panel greyed out in X1 Pro  11.0? - 'signing' IS 'allowed' in permissions...

    Hi guys.  So i have been sent a PDF to sign and return by E-mail.  The problem is, the 'sign' panel is 'greyed' out, so i am unable to. I checked permissions and signing is 'allowed' for this document.  Must i enable additional features? [There is no