Proxy to jms

Hello
Need to do a async proxy to jms scenario. Is there any blog for this ?
on receviing side i need to connect to MS MQ : microsoft mq. is it possible via PI ?
if given a option which adapter would you choose b/w  receiver jms or  jdbc ?
thnks
Edited by: sap_logic on Aug 10, 2010 4:25 AM

Hi,
Need to do a async proxy to jms scenario. Is there any blog for this ?
This is a simple Proxy -> PI -> JMS scenario. Please search on SDN for such basic question.
on receviing side i need to connect to MS MQ : microsoft mq. is it possible via PI ?
Yes.
if given a option which adapter would you choose b/w  receiver jms or  jdbc ?
Completely depends on what the receiving system is and other details.
Regards,
Neetesh

Similar Messages

  • Java client for OSB proxy with JMS Transport

    Hi,
    I am trying to call OSB proxy with JMS Transport. I am generating the client through ant task clientgen and following this article
    http://www.oracle.com/technetwork/articles/murphy-soa-jms-092653.html
    The osb proxy is req-response and is simply routing to BS which return a string value.
    When I run my client, it get stuck and does not return at all. Has any one trying java client in such scenario?
    What I may be missing?
    Below is snipped of client code:
    String url = "http://localhost:7021/sbresource?PROXY/MySample/MyJMSProxyService";
    CreditLoanApprovalServiceSoapBindingQSService service = new CreditLoanApprovalServiceSoapBindingQSService_Impl(url);
    MyPortType port = service.getCreditLoanApprovalServiceSoapBindingQSPort();
    LoanStruct in = new LoanStruct(); //populated the data structure
    String loanResult = port.processLoanApp(in); // Stuck here without any error
    System.out.println("LoanResult--> " + loanResult);
    Thx
    /Ashwani

    http://localhost:7021/sbresource?PROXY/MySample/MyJMSProxyService is the WSDL URL of the proxy.
    Transport is is picked by the client from wsdl.
    As far as the documentation of client generation is there, there is no change.
    But meanwhile I have started working on sending the message directly to queue. JMSProxy is getting called. May be I will first run the proxy this way and then try troubleshooting the java client.
    Regards
    Ashwani

  • Proxy to JMS and JMS to Proxy - Szenario

    Hi @all,
    i've implemented an async scenario:
    Proxy to JMS (away, request)
    JMS to Proxy (way back, response)
    Backend is ECC 6.0 and Middleware is PI 7.1.
    Business Case: Run a request with a number, get an answer back with an entry. The number is an individual criteria which is not included in the answer. So I decided to write the number in JMSCorrelationID, therefore I've written an UDF in Message Mapping.
    I've checked the JMS Correlation ID in additional properties and also added this into the list of additional properties:
    key.0 -> read xxxx DCJMSCorreleationID
    value.0 -> DCJMSCorrelationID.
    First question: is there something what I should account for in JMS receiver channel?
    At the way back I've implemented another UDF for writing the JMSCorrelationID back to payload in message mapping.
    But I'm not sure that works. The coding looks like:
    try
    DynamicConfiguration conf = (DynamicConfiguration)
    container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
    DynamicConfigurationKey KEY_JMSCorrID = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/JMS","DCJMSCorrelationID");
    String a = conf.get(KEY_JMSCorrID);
    catch(Exception e){}
    return a; //a is an input field for the payload back to SAP backend.
    Second question: is there something what I should accound for JMS sender channel? Do I need to add the DCJMSCorreleationID to the list of additional properties (JMS Correlation is checked)?
    Thanks in Advance,
    Stefan

    Hi,
    thank you for your answer.
    The Proxy to JMS scenario works well and overwrites the JMSCorrelationID given by a number from message payload.
    Could you please take a look at the given udf-coding that belongs to JMS to Proxy Scenario?
    Is it possible to get the JMSCorrelation at this way?
    I also put in JMS-Sender-Channel the JMSCorrelationID into the additional JMS-Message properties and checked "correlation-id from jms message" in adapter specific message attributes.
    In Module-Tab of JMS-Sender-Channel i put the module-configuration in a way like this:
    -> key.0 insert http://sap.com/xi/XI/System/JMS DCJMSCorreleationID
    -> value.0 DCJMSCorreleationID
    Do you think that works?
    I could not verify this configuration until I get an entry in outbound queue so I can't make tests to that.
    In Message Mapping - Test a Null Pointer Exception Occurs, according to the UDF, because I'm reading the DCJMSCorreleationID which is not present at mapping ad hoc test - I think that is ok.
    Thank you in Advance,
    Stefan

  • Proxy to JMS Scenario: switch from sync to async proxy,does it makes sense?

    Hi @all,
    i've implemented a sync proxy to JMS scenario that works well. Backend is ECC 6.0 and Middleware is PI 7.1.
    Business Case: Run a request with a number and get a response back with a corresponding entry for the number. That means, there is always a response expected.
    Now the following thing appears: the receiver system could not handle many calls at one time (200 calls are planned at each run), the calls reduces the performance. Now gys at receiver system likes to develope a buffer of 10 seconds between the requests to handle some kind of load balancing with that. That means for the request that it the response takes +10 seconds back to backend. It is also possible to handle that in SAP backend with a waiting-statement in coding, so there is no need to go from sync to async - but the customer requested us to implement this scenario in async.
    JMS is always async, I know. But the Service Interfaces for Inbound and Outbound are of mode sync - so I can call my outbound Interface class in backend with Importing Output and Exporting Input.
    My question is: makes it sense to go from sync to an async scenario?
    And how looks the coding in backend for the response? I guess that it only makes sense to switch to async when no response entry is needed (example: for write operations).
    Thanks in Advance,
    Stefan

    > But in case of switching, what is the best way?
    > Should I implement 2 senarios? Or is it ok to switch the Inbound and Outbound Service Interface from sync to async?
    I don't think you need 2 scenarios for this. Just one is enough with different RDs.
    Over all in this case you have to re-create/modify the service interfaces and also you have to create 2 interface mappings. You have to also create the new inbound and outbound proxies since service interface mode will be changed. For outbound proxy the code can be reused and for inbound proxy also logic and code can be taken from your old code.

  • Proxy-2-JMS Scenario: more than 10 additional JMS properties possible

    Hi @all,
    we're implementing a Proxy-2-JMS-Scenario. The JMS reciever side needs unfortunalety more than 10 additional JMS properties. In XI/PI the maximum number of additional JMS properties is 10.
    Do somebody know a good workaround in PI how to deal with it?
    Thanks and best regards,
    Stefan

    Hi @all,
    there is no way to handle with more than 10 additional jms properties for jms header.
    Best Greetings,
    Stefan

  • Needs steps in ID(configaration) for Proxy to JMS scenario

    Hi All,
    Please can anybody give steps for Proxy to JMS scenario in Integration Directory .
    Thanks in advance.
    Regards,
    Kalpana

    kalpana,
    Create two communication channels in ID. One for Proxy(XI adapter) and another for JMS(JMS adapter). Then sender agreement, receiver agreement, receiver determination and interface determination.
    For JMS adapter please see this weblogs:
    /people/kan.th/blog/2007/02/05/exploring-jms-and-sap-xi-jms-adaper
    http://help.sap.com/saphelp_nw2004s/helpdata/en/10/b1b4c8575a6e47954ad63438d303e4/content.htm
    ---Satish

  • Need details for Proxy to JMS scenario.

    Hi Frnds,
    I am dealing with Proxy to JMS Scenario.
    Can anybody tell me the prerequisites for this scenario, proxy as well as JMS.

    Hi,
    Refer the below thread.
    Re: Proxy->XI->JMS
    Needs steps in ID(configaration) for Proxy to JMS scenario
    Thanks and regards,
    Chirag gohil.

  • Proxy to JMS szenario - two different receiver queues in production

    Hi guys,
    I've got the following async scenario: Proxy to JMS.
    Now I want to solve the following requirement:
    In production environment are 2 instances (hosts) with the jms queues, one as a "normal" and one for reliability in case of any network errors, as fail over. In fact: we've got two different receiver queues (on different hosts with different ports) in case of a host is not available.
    Is there a way to handle the second queue in receiver JMS-adapter?
    I thought about "replyTo destination" in ASMA with Dynamic Configuration:
    -> getting the hostname in Dynamic Configuration and see if we are on production instance (for test and development that doesn't matter)
    -> make a lookup in Dynamic Configuration to check the availability ot the default host
    -> in case of non-availability: overwrite the default host and default queue entry with the available host and available queue
    -> in ASMA: host & queue-entry in "additional properties"
    Any other suggestions are welcome
    If you have ideas far out from my thoughts feel free to tell
    Thanks a lot,
    Stefan

    I have already provided the details.
    And you need to have only one channel which can connect to both server.
    You don't need to create two different channel with two different host name.
    One channel with
    two host name ( Original server + Fail over server ) , paramter JMS.QueueConnectionFactoryImpl.constructor
    One queue name , parameter JMS.QueueImpl.constructor:
    What you need to do is, please create the SAME JMS queue in both servers and configure the fail over server as i mentioned earlier.
    Please configure the query string parameters in the receiver JSM channel ( Advanced-->Additional paramters )
    JMS.QueueConnectionFactoryImpl.classname:
    JMS.QueueConnectionFactoryImpl.constructor: As i mentioned in the earlier post
    JMS.QueueImpl.classname:
    JMS.QueueImpl.constructor: <<queue name>>
    Edited by: Rajesh on Aug 29, 2011 11:31 AM

  • Oracle Service Bus 10.3.1 proxy consuming jms (AQJMS)

    Hi,
    I need to use AQJMS with Oracle Service Bus proxy.
    We have an installation with WLS 10.3 and OSB 10.3.1 and another with WLS 10.3.1 where I defined a JMS Foreign Server like appears in the documentation http://download.oracle.com/docs/cd/E12839_01/web.1111/e13738/aq_jms.htm#JMSAD565.
    I need support to how to define the URI at the OSB configuration.. jms://server:port/XAQueueConnectionFactory/QueueName... because I tried a lot of ways and can't make it work.
    Thank You in Advance...
    Juan Pablo

    Hi,
    Because I want to use the jms protocol... because if I change AQJMS with another JMS Provider the only thing that I must change in OSB is jms://server:port/CF/Q
    In SOA Suite 10.1.3.x I use JMS Adapter for this...
    Thank You.
    JP

  • Soap proxy to jms business service response not available.

    Hi
    Please can anyone help me with this really urgent, help is greatly appreciated.
    We have one Proxy Service which takes in SOAP Request, and I have a route node in it which calls the biz service.
    Business service is a Messaging service built using jms queue and response URI is configured with jms out queue.
    If I run business service standalone it gets the message and response comes to out queue.
    if I run it through proxy service which routes to biz service, the message goes to biz service, and response goes to out queue, but I do not get response in http proxy.
    Please can someone help.
    thanks
    K.

    Basically the logic to consume msg requires full SOAP message as text, now when I use BS as Messaging Service it works fine because in test I put the full soap message as text. If I run it through Proxy it strips the header and sends only Body or if I base both my BS and PS using WSDL, then it attaches full soap message in multiple soap header and that causes the problem, so I have to remove extra header from message to have it processed correctly.
    this is my actual request:
    <SOAP-ENV:Envelope      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    the trace shows that request to BS is:
    <soapenv:Body      xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Envelope      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
    /SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    </soapenv:Body>
    so my message consumer has problem with extra soapenv:Body wrapper... any ideas will help.
    thanks
    K.

  • Sync Proxy to JMS (MQSeries)

    Hi All,
    I have a scenario of Sync proxy to MQSeries.
    Now suppose my MQ Series takes a long time to respond with the reply, then how do i handle such a situation as i dont want my proxy to be waiting for the reply (say for more than 2 min).
    I dont want it to timeout but instead i need a reply sent back to my proxy informing MQ series took more time to respond back.
    Suggestion wud be appreciated !!!!
    ShaBZ~~~

    Hi,
    use sync bridge
    <b>receive step</b> - sync receive
    <b>send step</b> - sync to jms
    wrap it in a timeout branch (in block) and in the exception
    branch of this you can create a mapping
    with text "it took more time then expected"
    after the timeout time the message will
    go to the exception branch and
    map the outbput message with the text
    <b>send step</b> to close the sync brigde
    one way to do it:)
    Regards,
    michal

  • Http Proxy To JMS Proxy Call

    Hi,
    When i am trying to route a request from a http proxy service to JMS proxy i got following exception.
    Exception on TransportManagerImpl.receiveMessage, com.bea.wli.sb.transports.TransportException: No transport information is registered for: ProxyService AssetInbound/ProxyService/AssetInboundjms
    com.bea.wli.sb.transports.TransportException: No transport information is registered for: ProxyService AssetInbound/ProxyService/AssetInboundjms
         at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:201)
         at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:108)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:429)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4060)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:3953)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4467)
         at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    >
    If anyone has faced such problem or know what am i doing incorrect kindly reply.
    Regards,
    Sandeep

    Routing a message from an HTTP proxy to a JMS proxy will put the message in an intermediary queue before it is read by the JMS proxy. I haven't seen this exception before so I advise you to open a support case.
    As a workaround you can route the message to a JMS business service to put the message in the queue and see if it solves your issue.
    Gregory Haardt
    ALSB Prg. Manager
    [email protected]

  • When to use a JMS Bridge and when to use a Proxy

    Hi,
    We currently are running an OSB with most connections coming in via MQ to a JMS queue. We've been asked to implement a JMS Bridge.
    Wen using a messaging bridge to a foreign provider, the documentation recommends using the Foreign JMS option to simplify the creation of bridge destinations anyway.
    The key difference with using the bridge, is that you remove responsibility for the network transfer of messages from OSB's proxy and give it to the bridge. However, this now means that the messages are stored in WebLogic JMS with all the implications that brings. Is that really what you want? Isn't the whole point of MQ to be your reliable messaging service and not to use WebLogic JMS instead/as well?
    But the Solutions design team mention
    Without bridge
    MQ >--------Receive -------->---------Send ---------> JMS
    | ....... Transaction 1 ....| .....Transaction 2 ......|
    With bridge
    MQ >--------Receive -------->---------Send ---------> JMS
    | ....... ............Transaction 1 .......... ......|
    Is this true, so we have to use a bridge?

    I think your solution design team is wrong..
    MQ --> OSB Proxy Receive ---> OSB Proxy Send --> JMS will be a single XA transaction.
    An OSB proxy is preferred in this case for the following reasons:
    1. Don't use bridge for receiving messages . Bridge should be used rather for sending messages to non highly available remote messaing providers. Even for this case weblogic recommends SAF .
    2. Whatever the savings on transaction as mentioned by your design team doesn't appears to be correct.
    3. Weblogic messaging bridge appears to be a buggy product. You will have to apply a couple of patches to make the bridge to work as expected. It will take some time to stabilise it in a production environment. Weblogic's EJB container is much stable and with MDB's it would be less prone to bugs. This is from my personal experience. Others might have a different experience.
    4. You can leverage the out of box monitoring facilities provided by OSB. This can give you stats of how many messages were transferred between MQ and JMS, average & max response time etc.

  • OSB: Proxy doesn't consume JMS messages

    Guys, I'm getting stuck with this one ...
    I've got four JMS proxy services. One of them uses Publish to enqueue a message into the three others. This way I get three copies of a single message, each in dedicated JMS queue. The same three JMS proxies are supposed to consume messages from JMS queues and process them. The configuration is the same for all three proxies and all three JMS queues. In fact all was cloned and the difference is only in suffix. So, I've got QueueA, QueueB, QueueC and ProxyA, ProxyB and ProxyC. So if I stick to these names, ProxyMain uses 3x Publish actions to enqueue a message into ProxyA, ProxyB and ProxyC at the same time. This is a proved solution and it has worked for years flawlessly!
    However, something weird happened a couple of days ago. All of a sudden, one of those three consuming JMS proxies doesn't consume anything. There's no issue on producing side (the first proxy) as the numbers of messages in all three queues are still increasing. Still, only messages from QueueA and QueueB are being consumed by ProxyA and ProxyB. The third queue (QueueC) doesn't have any consumer attached from ProxyC and I don't know why.
    I've already checked everything I know - proxy is enabled, there are no errors in logs related to the proxy or JMS, the issue is not reproducible in test environment with the same configuration, there are no JMS Quota or connection factory restrictions, consuming flag is enabled on queue ...
    The lack of errors in logs makes me feel like the ProxyC is connected to something else. However, the same proxy is used for producing messages (from ProxyMain) and messages are incoming to the queue so the endpoint set in proxy must be correct!
    Any help, hint or idea is appreciated ...

    The third queue (QueueC) doesn't have any consumer attached from ProxyC and I don't know whyTry renaming ProxyC to say ProxyC1 and activate the session. This will create a new underlying MDB for the jms proxy and you will see consumers getting set on the queue.. Faced this issue many times in our production environment and easiest workaround we found was to rename the proxy service [ toggling enable/disable proxy doesn't seem to have ny effect).. you can change the name to the original proxy once the consumers are set..                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • OSB JMS Proxy

    Hi ,
    can i use a Proxy service with out a Business service to write a messge onto a queue.I jus tried a sample on my local and i am able to write a message on to a queue using a proxy service .
    Flow :-
    PS1(http) using publish action invokes -> PS2 (jms uri config)
    I am clue less how this is working.when the PS2 transport has been defined as jms ,how am i able to invoke it from PS1 using publish action?
    My understanding of OSB is ProxyService is for reading message from queue and Business service is for writing or publishing a message onto a queue.
    can some body help me udnerstand how this is working.

    Basically, you're right when it comes to the difference between business and proxy services. Also, you're not the only confused when routing data from http-based proxy to JMS proxy.
    We touched the topic earlier:
    Re: Retry mechanism for HTTP Transport in OSB
    The point is your layout (HTTP PS -> JMS PS) is sound and works even without intermediate business service.

Maybe you are looking for

  • When i wake up my mac pro from sleep,sometime freezes ,sometime spontaneously restarts and displays "Your computer restarted because of a problem."

    Anonymous UUID:       CB8CBE80-12FB-745F-5DF6-773C8987ABF7 Tue Apr  8 11:28:19 2014 panic(cpu 6 caller 0xffffff800e4c01bb): "TLB invalidation IPI timeout: " "CPU(s) failed to respond to interrupts, unresponsive CPU bitmap: 0x101, NMIPI acks: orig: 0x

  • CSS Layout Anomoly

    I have been trying to be a very good boy recently and learn to layout a website using CSS and layers. I have created a test page that pretty much seems to work. I have used a wrapper div with a background image so that the main body column and the ri

  • Deleted files in "File Panel". Images not showing up

    Hello all. I deleted some old pages and I renamed some pages, all in the "file panel". Now my images are not showing up in preview. Example, my background and borders are not showing up, and they are still in my root folder. What did i do wrong? (fyi

  • Text wrap works in Safari/Firefox NOT in IE 6 & 7

    I am banging my head against a wall here. I started this site using all CSS and then found out that IE 6&7 users were seeing a text overlap. I've searched and monkeyed and doctored – so now there is no overlap, but the wrap is not workin - the text f

  • How to generate customize employee number

    Hi, I am trying to generate customize employee number and for that i have taken following steps 1. I changed employee number generation from automatic to manual 2. I created a sequence 3. I wrote a pl/sql code to create a customize employee number us