JMS Adapter - RFC (Sync ) RFC Repsonse- JMS Adapter

Hello,
We have 40K + messages coming in from a 3rd party system through JMS Adapter. We need to process the messages in R/3 using RFC (sync) adapter and send the response back to the 3rd party system   “with the messageID (CorrelationID)” using a JMS adapter.
Is there any procedure to do the same without BPM?
Thanks,
Peter

Peter,
Another easy way to decouple your process could be to send RFC data to R/3 asynchrounously (which means treat your function module as an asynch message interface, which is possible), and at the end of the inbound function module code invoke a "response function module" pointing at XI as RFC destination. This second flow will, of course, map to and write to JMS.
That should be little change to your code, right?
I've done the same story with ABAP proxies and it work perfectly.
Let me know.
Cheers,
Alex

Similar Messages

  • ASync RFC -- Sync RFC -- SOAP scenario: do I need BPM?

    Hi,
    I have this scenario. ASync RFC --> PI --> Sync RFC --> PI  --> SOAP scenario.
    Here are the details.
    1. users run async RFC and it will pass data to PI.
    2. PI will call Sync RFC with received data and get the data.
    3. PI now calls web service with received data from #2.
    Do I need BPM to implement this scenario.
    Thank you.
    -Won

    I'm still wondering if it's possible to perform my scenario without using RFC lookup or BPM.
    Yes, it is possible.
    I want to see if PI supports sequence of calling RFC, JDBC, web service, etc and pass data to
    the next call in sequence... without BPM...
    Yes, PI supports that. Please make a search on SDN, there are numerous blogs / posts which talks about A/S bridge without BPM.

  • Async/Sync Communication using JMS adapter without BPM

    Hello ,
    Pls suggest how Async/Sync Communication using JMS adapter without BPM .
    In my scenario I have JMS Sender and then RFC/JDBC as Sync and then again JMS receiver
    Pls explain  the concept of
    JMSMessageID and JMSCorrelationID  and how to use it by an example.
    Regards

    Hi,
    If you have selected JMSMessageID, JMSCorrelationID, or JMSProperty and entered a JMS message ID in these fields, you should see the Remove 'ID:' Marker from JMSMessageIDindicator. Set the indicator.
    This is necessary because the JMS specification stipulates that each JMS message ID starts with 'ID'. However, this conflicts with ISO-11578.
    - JMSMessageID (Uniqueness Is JMS-Provider-Dependent)
    (String) The unique message ID. Note that this is not a required field and can be null. Since the JMS provider might not use your provided message ID, the Connector sets a special property called $jms.messageid after sending a message. This is to insure that the message ID always is available to the user. To retrieve this value use conn.getProperty("$jms.messageid") in your After Add hook.
    - JMSCorrelationID (Uniqueness Is JMS-Sender-Dependent)
    (String) This header is set by the application for use by other applications.
    Hope this will help you.
    Regards
    Aashish Sinha
    PS : reward points if helpful

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

  • Concurrency for JMS Sender Adapter - Async/Sync Bridge

    Hi,
    We have implemented a number of Async/Sync bridges using JMS Adapters, and are encountering problems scaling the solution.
    Async-Sync Bridge Scenario:
    JMS Sender Adapter -> Integration Server -> Sync ABAP Proxy (CRM) ->  JMS Receiver Adapter
    The bridge is using the Adapter Framework modules: RequestResponseBean & ResponseOnewayBean within the Sender Adapter.
    The problem is that concurrency of processing seems to be driven from the number of Java Server Cluster Nodes on the Adapter Engine.  The JMS sender adapters do not appear to read from the external messaging system (MQ) in a concurrent fashion.  They appear to process in a sequential manner per Adapter:
    1. Read from request Message Queue (MQ)
    2. Send request for processing (IS)
    3. Wait response message
    4. Receive response message
    5. Write response message to Message Queue (MQ)
    6. Read from request Message Queue (MQ)
    7. Send request for processing (IS)
    8. Wait response message
    9....
    We need to be able to introduce some means of scaling the solution so that mesages can be read from the MQ request message queue in a concurrent manner.  Hopefully we can do this without adding more javer server nodes to the Adapter Engine.
    We were looking intot he possibility of tuning AS Java properties that control the number of connections to the Messaging System of the Adapter Engine but this has not provided a solution.
    Any information on  this topic would be much appreciated.
    regards
    Murray

    As far as I know, the only wasy for JMS adapter to do concurrent reads from a queue is by having multiple server nodes. This is document in note 856346, point 6.2
    Thanks
    KK

  • JMS to PI to RFC

    Is it possible to do scenario like this  with out BPM
    JMS to PI to ECC(RFC-Sync)  to PI then file

    JMS to PI to ECC(RFC-Sync) to PI then file
    You will have to use BPM....since response from ECC is to be send to File (and not JMS).
    Regards,
    Abhishek.

  • SOAP - XI - RFC.  XI not perform Adapter call after Technical Routing.

    Hi, All!
    I have a problem with XI.
    My configuration (all calls are synchronous):
    SOAP adapter -> XI mapping -> RFC adapter call to R/3
    Most of the time it's works correctlly!
    But some times XI does not call outbound RFC adapter after "Technical Routing". And there is no error in XI Monitor, but this XML message marked like "scheduled". So the SOAP adapter returns "Timeout error".
    I have compared messages in XI monitor for a successful call and a unsuccessful one. There is no difference in "Routings" and "Mapings" they are the same, except for in the unsuccessful message no "Adapter call" at all!
    Do you know how to solve such a problem?
    Thank you!!

    try to register all queues in SXMB_ADM -> Manage queues.
    I think that should help you solve the issue.

  • Jms settings and correlation settings in jms adapter

    hi expects,
       what is use of jms settings and correlation settings in jms adapter.

    Hi Rohit,
    have a look at thsi article to understand jms correlation:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5059f110-0d01-0010-7c8b-fdc983be70c0
    Regards,
    michal

  • Setting JMS Message header and properties in JMS Adapter ESB Component

    Hi,
    I am new to using some of these adapters in Oracle ESB and need some help.
    I am trying to define a JMS Publisher using JMS Adapter component in JDeveloper. I would like to publish messages with message property set to a topic. I dont find a way to do that.
    I see that for consuming JMS messages, the JMS Adapter allows to specify message selector but I could not find a way for producing message with a user defined message property. I would like to use that property in the message selector to filter messages and consume.
    I am using Oracle SOA Suite 10.1.3.3.x
    Can someone help please?
    Thanks.

    Thanks for the response.
    I think I found the solution although I havent tried it out yet.
    ESB sample 110.JMStoJMSHeaders outlines the approach.
    It is my understanding that JMS Message selector can work on JMS header or JMS properties (user defined) but not on JMS body. (All the three constitue a JMS message). Hence the need to set a JMS property prior to publishing the message to a topic/queue.
    Thanks.

  • When we should use JMS based proxy services and when JMS Adapter in OSB

    Hi,
    Can somebody explain me when we could go for JMS Adapter and when we should go for JMS based service in OSB?
    The one scenerio i can think of is when my provider/consumer is using jms provider other than WLS jms provider we should use jms adapter.
    Edited by: user12883209 on Jan 5, 2012 5:29 AM

    I don't think there are clear guidelines available, however here is my view.
    1) OSB 11gR1 is not certified with Oracle JMS Adapter. It is certified with Oracle FTP, Database, AQ and application adapters.
    http://docs.oracle.com/cd/E21764_01/doc.1111/e15867/interop.htm#OSBAG1403
    2) In addition of the Weblogic JMS, OSB can also integrate with following provider without using adapter.
    - WebSphere MQ
    - Tibco EMS
    3) if you need to integrate JMS with BPEL Process or Oracle SOA suite composite, it has built in support for generic Oracle JMS adapter. Oracle generic JMS adapter can integrate with AQ JMS (JMS providers OJMS 8.1.7, 9.0.1.4, and 9.2), TIBCO JMS, IBM Websphere MQSeries (IBM MQSeries JMS 6.0), Weblogic JMS, Apache, and Active MQ
    http://docs.oracle.com/cd/E14571_01/integration.1111/e10231/adptr_jms.htm
    4) If you need to integrate OSB with Weblogic JMS, WebSphere MQ, Tbco EMS it does not need JMS adapter.
    Hope this helps !!!
    Jayesh Patel
    http://jayesh-patel.blogspot.com/
    http://www.yagnasys.com/

  • Create a JMS reference to a IBM MQ Resource Adapter

    Hi There,
    We have deployed the IBM MQ RA (version 7.0.0.0-k000-L080529) on our CE 7.1 SP 4 system. We are trying to create a JMS reference to utilise the RA to put a message on an IBM MQ Queue.
    We are trying to get to the RA using the following code snippet but can not get the relevant JMS / JNDI references with the activation config created:
    String lookupName = "java:QCF1"; //or something similair
    ConnectionFactory cf = (ConnectionFactory) context.lookup(lookupName);
    We have tried the XML below but the references it creates comes up in error status.
    <?xml version="1.0" encoding="UTF-8"?>
    <jms-resources xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="jms-resources.xsd">
          <connection-factory>
          <name>QCF1</name>
          <context-factory-type>
             <initial-context-properties>
                <initial-context-factory>com.sap.engine.services.jndi.InitialContextFactoryImpl
                <!--The implementation class of initial context factory of the third-party JMS Provider.
                    For SAP this is com.sap.engine.services.jndi.InitialContextFactoryImpl-->
                </initial-context-factory>
                <provider-url>localhost</provider-url>
                <security-principal>user</security-principal>
                <security-credentials>password</security-credentials>
             </initial-context-properties>
             <link-factory-name>deployedAdapters/QueueConnectionFactory/nonGlobalTx/QueueConnectionFactory</link-factory-name>
             <user-name>jms-user-name</user-name>
             <password>jms-password</password>
             <library-name>IBMMQ</library-name>
          </context-factory-type>
       </connection-factory>
       <destination>
          <name>TargetQueue</name>
          <type>javax.jms.Queue</type>
          <external-destination-type>
             <link-connection-factory>QCF1
             <!-- This name has to be the same as the name of the connection factory -->
             </link-connection-factory>
          </external-destination-type>
       </destination>

    Hi There,
    We have deployed the IBM MQ RA (version 7.0.0.0-k000-L080529) on our CE 7.1 SP 4 system. We are trying to create a JMS reference to utilise the RA to put a message on an IBM MQ Queue.
    We are trying to get to the RA using the following code snippet but can not get the relevant JMS / JNDI references with the activation config created:
    String lookupName = "java:QCF1"; //or something similair
    ConnectionFactory cf = (ConnectionFactory) context.lookup(lookupName);
    We have tried the XML below but the references it creates comes up in error status.
    <?xml version="1.0" encoding="UTF-8"?>
    <jms-resources xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="jms-resources.xsd">
          <connection-factory>
          <name>QCF1</name>
          <context-factory-type>
             <initial-context-properties>
                <initial-context-factory>com.sap.engine.services.jndi.InitialContextFactoryImpl
                <!--The implementation class of initial context factory of the third-party JMS Provider.
                    For SAP this is com.sap.engine.services.jndi.InitialContextFactoryImpl-->
                </initial-context-factory>
                <provider-url>localhost</provider-url>
                <security-principal>user</security-principal>
                <security-credentials>password</security-credentials>
             </initial-context-properties>
             <link-factory-name>deployedAdapters/QueueConnectionFactory/nonGlobalTx/QueueConnectionFactory</link-factory-name>
             <user-name>jms-user-name</user-name>
             <password>jms-password</password>
             <library-name>IBMMQ</library-name>
          </context-factory-type>
       </connection-factory>
       <destination>
          <name>TargetQueue</name>
          <type>javax.jms.Queue</type>
          <external-destination-type>
             <link-connection-factory>QCF1
             <!-- This name has to be the same as the name of the connection factory -->
             </link-connection-factory>
          </external-destination-type>
       </destination>

  • Error while executing WS to RFC sync on 7.4 single stack

    Hi Experts
    I am working in ws..>sap pi..>Rfc sync scerio
    when  I have entered the data in RFC its working fi9 but I am using SOAPUI to test it, it's giving me error:
    <text>com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.adapter.rfc.core.client.RfcClientException: functiontemplate from repository was &lt;null>
    pls note that I have reimported the RFC 
    pls suggest!

    Refer to question no 16 under the below note
    730870 - FAQ XI 3.0/ PI 7.0/ PI 7.1/ PI 7.11/ PI 7.2/ 7.3 RFC Adapter
    Q 16: While sending a message to the RFC Adapter the error "... functiontemplate from repository was <null>" is shown. What is the reason?
                  A: After receiving a message from the Adapter Engine, the RFC Adapter extracts the payload from the message. Normally this should be an XML document in the RFC-XML format. In this format the root element of the XML document represents the name of the function module and is enclosed in the fixed RFC namespace 'urn:sap-com:document:sap:rfc:functions'. But this only will be checked at a later point, when the conversion from XML to native RFC is done. As prerequisite of this conversion the structures and types of the function module parameters has to be known. This is also called metadata or function template. To get this function template the name of the function module is extracted from the root element of the XML document and is queried against the metadata repository of the communication channel. If the metadata repository doesn't have a function module with this name, the exception named above is thrown. Possible reasons are
    The XML document, which was sent to the RFC Adapter, is not a RFC-XML document. So the root element name of this document is not the name of a function module and thus can't be found in the metadata repository.
    The metadata repository doesn't contain an entry for this function module name. Normally the metadata repository will be an R/3 system and it's function module repository can be searched with the transaction SE37.

  • Xml validation in File to RFC Sync Scenario with Validation fails message

    Hi All,
    We are using PI 7.4 (Dual Stack) the Requirement is File to RFC Sync Scenario(File <---> RFC).and need to do XML validation against XSD Schema. if any Validations fails Response message should send back to sender.RequestResponseBean standard module is using for File to RFC Sync scenario but how to send the response message to sender if any validation fails. adapter level XML validation is not helpful for this requirement. please help out me how to achieve the requirement with graphical mapping.
    Thanks in advance.

    to validate schema you cannot solve it with graphical mapping but validating the schema in the AAE or the integration engine.
    y recomend you to use the AAE validation at sender side, coz the sender system will be notified in case of schema errors.
    The response will be validated at Integration Server level.
    you can search in the forum, you will get many document about how to configure it.
    take a look to my blog: PI 7.3  - XML Validation

  • SOAP to RFC sync scenario

    Hello members:
    we have a business scenario: SOAP to RFC sync
    an external system (ABC) sends documentrequest thru XI SOAP adapter and makes an RFC call to a BAPI and gets back the resposne to the ABC system.we are handling 4 mappings. 1. request msg to a common msg 2. common msg to BAPI request3.bapi response to common msg 4. common msg to response msg(which is same as the req msg)
    i have the request msg and common msg as external definitions. I did the following steps and wanted to
    know if i am right.
    1. there are no data type & msg type needed for this
    2.  4 msg interfaces
    i)  document o/b sysnc
    ii) document i/b sync
    iii)common o/b sync
    iiii) common i/b sync
    3) 4 mappings
    i) document to common
    ii) common to bapi req
    iii) bapi resp to common
    iiii) common to req/response
    4) 3 intf mappings
    source intf**********               target intf
    i)document o/b               common o/b uses mapping #1
    ii)request :common i/b         bapi i/b  uses mapping #2
       resposne:bapi i/b           common i/b uses mapping #3
    iii) common i/b             document i/b uses mapping # 4
    pls provide your inputs if my approach is rite? do i need to have 4 msg intefaces?has any made mappings where 4 mappings are involved ( without BPM)
    Thanks in advance

    Hi,
    I think you will have only 2 interfaces.
    1. Sync Outbound interface (SOAP Structure)
        Two message types Req and Res
    2. Sync Inbound interface (RFC Structure)
        Two message types Req and Res
    Then two message mapping
    1. SOAP Request  to RFC Request
    2. RFC Response to SOAP Response
    and finally one Interface mapping.
    Thanks,
    Prakash

  • SOAP to RFC - Sync Scenario. How to find where the response is going to?

    Hello All
    I have a SOAP to RFC sync scenario.
    In SXMB_MONI,  i see that both the initial message and the response message are successfully processed.
    But, the SOAP sender is not receiving the response message.
    How can i trouble shoot this scenario? How can i findout what is going wrong?
    Most importantly, How can i find out the web address of the SOAP sender? I do not see it anywhere.
    Thanks

    Hi Chandra,
    Please check this blog.
    /people/shabarish.vijayakumar/blog/2008/01/08/troubleshooting--rfc-and-soap-scenarios-updated-on-20042009
    You can by pass your message through a TCPIP gateway , this will help you to see the message contnet and the SOAP header information.
    TCPIPGW application is availabel in one of the SAP notes for Monitoring SOAP adapter. and 2 SAP SDN PI  blogs are also there on how to use this application...
    Regards
    Sunil.

Maybe you are looking for