tag:blogger.com,1999:blog-1839316484051079047.post1360046153537708753..comments2024-03-28T06:38:40.958+01:00Comments on Java / Oracle SOA blog: JMS Request Reply Interaction Pattern in Soa Suite 11gEdwin Biemondhttp://www.blogger.com/profile/02338716126881111629noreply@blogger.comBlogger126125tag:blogger.com,1999:blog-1839316484051079047.post-46829172800636880152016-02-19T06:44:52.025+01:002016-02-19T06:44:52.025+01:00Hi...sir,
how many types of queues are available ...Hi...sir,<br /><br />how many types of queues are available in jms queues?<br />Anjihttps://www.blogger.com/profile/01696888873434757874noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-13618444518205661392014-04-16T14:05:21.546+02:002014-04-16T14:05:21.546+02:00Thanks for your tips!!!
My project is working ...Thanks for your tips!!! <br /><br />My project is working fine after I follow your advice!<br /><br />Regards!!Denilson Marcoshttps://www.blogger.com/profile/10861148838718072765noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-14938838327432833862014-04-14T13:28:36.301+02:002014-04-14T13:28:36.301+02:00Hi Edwin,
Any ideas? If not, maybe you could jus...Hi Edwin, <br /><br />Any ideas? If not, maybe you could just give me advice on how to set the jms messageID in your example to a custom value? At the moment it's set natively. I tried setting it via the properties tag in the invoke action (property jca.jms.JMSMessageID) but when I look on the queue, the ID still has the native value.<br /><br />Thanks,<br />Jacquesbotjachttps://www.blogger.com/profile/07158316627330968912noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-39725260516890722382014-04-10T09:57:47.995+02:002014-04-10T09:57:47.995+02:00Hi Edwin,
The scenario I am describing above is n...Hi Edwin,<br /><br />The scenario I am describing above is not what is happening. It is what I would like to achieve. Sorry that I was not clear on that.<br /><br />So steps 1-3 is in line with your example. But I want to achieve steps 4-5.<br /><br />In step 4, a duplicate message is sent to the BPEL process. With duplicate, I mean from a payload / business perspective. So the BPEL process is botjachttps://www.blogger.com/profile/07158316627330968912noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-35399940681937956822014-04-09T20:33:02.054+02:002014-04-09T20:33:02.054+02:00Hi,
Do you mean you got the same JMS messageId tw...Hi,<br /><br />Do you mean you got the same JMS messageId twice, or do you set the message ID with a value which comes from the body.<br /><br />Can you explain the use case?<br /><br />ThanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-27485357724442436732014-04-09T13:13:54.590+02:002014-04-09T13:13:54.590+02:00Hi Edwin,
Very good post, this is helping me a lo...Hi Edwin,<br /><br />Very good post, this is helping me a lot. I do have a question, though. I am trying to modify your example slightly, but I am not sure how to go about. Here is the scenario :<br />1. Request comes in, BPEL receiveInput receives the message.<br />2. Invokerequest_jms sends the message out<br />3. Receive_response_jms is waiting for the reply message.<br />4. While it is botjachttps://www.blogger.com/profile/07158316627330968912noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-43830646834079032482014-04-01T00:05:21.610+02:002014-04-01T00:05:21.610+02:00Ok,
you can use OSB throttling to protect your we...Ok,<br /><br />you can use OSB throttling to protect your web service or use this with a JMS JCA adapter<br /><br /><service name="ReadQueue"><br /><interface.wsdl interface="http://xmlns.oracle.com/pcbpel/demoreadqueue1#wsdl.interface(SampleInbound_PortType)"/><br /><binding.jca config="Dequeue_jms.jca"><br /><property name="Edwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-40963140530852500342014-03-31T23:51:54.055+02:002014-03-31T23:51:54.055+02:00Hi, Thanks for you prompt reply!!
My case is
1) ...Hi, Thanks for you prompt reply!!<br /><br />My case is<br /><br />1) I have a Bpel that has a file adapter which read a XML file with 32 thoudand customerID<br />2) In this bpel, I make a group of 200 hundreds customerID and I send this group to a JMS<br /><br />3) A second Bpel reads the queue, gets this group of CustomerID and call a Webservices which return my customers details. A XML with Denilson Marcoshttps://www.blogger.com/profile/10861148838718072765noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-44188794835892104022014-03-31T22:08:21.129+02:002014-03-31T22:08:21.129+02:00Hi,
Don't think you should change this behavi...Hi,<br /><br />Don't think you should change this behaviour, every jms message is one BPEL instance, just like HTTP. if you want to combine some messages (not 100 or more, just a few ) you can use BPEL correlation. this way BPEL will wait for the next message which contains a certain value.<br /><br />What is your use case ?<br /><br />thanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-83311147395649965782014-03-31T21:35:46.834+02:002014-03-31T21:35:46.834+02:00Many thanks for your post!
I have doubts about my...Many thanks for your post!<br /><br />I have doubts about my case.<br /><br />I have two bpels flows. The first, recieve a xml message and this message I put into a queue. So the second bpel flow, get the message and process it. <br /><br />My doubt is how to set the environment so that I have only one consumer. I have noticed that although I have put adapter.jms.receive.threads = 1 the processesDenilson Marcoshttps://www.blogger.com/profile/10861148838718072765noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-81068144893921539572013-07-08T12:12:52.214+02:002013-07-08T12:12:52.214+02:00Hi,
with sync I think it uses the default JTA tim...Hi,<br /><br />with sync I think it uses the default JTA timeout of the container. With async you can add a mediator in soa suite before the jms adapter and set a timeout on the callback.<br /><br />ThanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-71630158720174729622013-06-26T01:56:26.905+02:002013-06-26T01:56:26.905+02:00Hi Edwin,
I am using request_replay with sync. i ...Hi Edwin,<br /><br />I am using request_replay with sync. i did not see any jms property to set reply time out. can you please help me on this.<br /><br />ThanksAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-33333820868799205532013-05-01T22:30:44.493+02:002013-05-01T22:30:44.493+02:00Hi,
Don't know if you should do JMS request /...Hi,<br /><br />Don't know if you should do JMS request /reply in a synchronous BPEL ( maybe get a timeout when it is not handled in 30 seconds) or do you mean fire and forget and get the messageid back of the jms adpater and pass it to the application in a response.<br />you can retrieve or set jms header properties on the invoke or in a mediator in between bpel and jms adapter.<br /><br />Edwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-27282064733051939892013-04-26T08:11:35.808+02:002013-04-26T08:11:35.808+02:00Hi Edwin,
Thanks for this elaborate explanation. ...Hi Edwin,<br /><br />Thanks for this elaborate explanation. However I'm trying to implement a scenario where I want to put a message in a JMS Queue using a synchronous BPEL process whose correlation Id (or Message Id) I want in response back and pass it to an upstream application.<br />That application can trigger a different operation again with that correlation ID to invoke my consumer Saurabhnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-59645550325115775932013-02-18T11:55:05.079+01:002013-02-18T11:55:05.079+01:00Hi,
Can you use different queues, don't think...Hi,<br /><br />Can you use different queues, don't think it works on the same queue cause I don't see a message selector on the first queue.<br /><br />ThanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-40842130149950157822013-02-14T20:24:10.820+01:002013-02-14T20:24:10.820+01:00Hi Edwin,
I am trying this in Async JMS Request ...Hi Edwin, <br /><br />I am trying this in Async JMS Request Reply .I am using same queue for Request or Response .Also publshing messages to the same queue from different BPEL. JMS Request Reply is only dequeue the same message send by invoke and rejecting the message publised by other BPELAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-21158442060205273212013-02-14T18:59:42.453+01:002013-02-14T18:59:42.453+01:00Hi,
dont set your own message , just retrieve it ...Hi,<br /><br />dont set your own message , just retrieve it and maybe store it somewhere in your message and put it back and set the jms correlation id.<br /><br />hope this helps.<br /><br />thanks Edwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-54235811379941540332013-02-14T17:50:18.322+01:002013-02-14T17:50:18.322+01:00Re: JMS Adpater Question
Posted: Feb 14, 2013 8:3... Re: JMS Adpater Question <br />Posted: Feb 14, 2013 8:37 AM in response to: 905329 Reply <br /> <br />Hi , <br /><br />I am setting '1234' to JMS message ID while publshing the message to JMS . In JMS Reply I am setting '1234' in the JMS Correlation ID. But I am still getting the same error message.<br /><br />Fault ID rejected:60006<br />Fault Time Apr 13, 2012 4:Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-19728200378220115452013-02-14T16:46:10.611+01:002013-02-14T16:46:10.611+01:00Hi Edwin,
We have a requirement where one BPEL is...Hi Edwin,<br /><br />We have a requirement where one BPEL is publishing the message to the JMS queue. Another BPEL will be invoked by a Scheduler one's in a day and then this BPEL should consume the message from the Queue. Can we use JMS Request Reply for this?<br /><br />I created a POC where I am publishing the message to Sample queue form one BPEL. Another BPEL is trying to consume messageAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-37566524374801075522013-02-11T11:49:05.572+01:002013-02-11T11:49:05.572+01:00Hi,
you can do this in the EM when you go to the ...Hi,<br /><br />you can do this in the EM when you go to the composite and select the jms adapter.<br />In the property tab you can manually change the message selector.<br /><br />or from your own application change the soa mbean -> oracle.soa.config -> your composite -> SCAComposite.SCAService -> your Adapter -> AdapterBinding and open the properties attributes<br /><br />Thanks Edwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-55480422816740290662013-02-11T10:05:42.987+01:002013-02-11T10:05:42.987+01:00Hi Edwin,
I have a situation
One BPEL Service ac...Hi Edwin,<br /><br />I have a situation<br /><br />One BPEL Service acts as a Publisher and puts messages into JMS Topic,<br />Set of other BPEL Services which acts as a Subscribers , consumes messages from the JMS Topic using 'Message Selector'.now i need to have this Message selector as a dynamic one,which can be altered from console as the code has to be changed and deployed everytime Vandanahttps://www.blogger.com/profile/01211943971350061263noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-40221768249000569752012-10-30T15:39:47.386+01:002012-10-30T15:39:47.386+01:00Hi Ediwn,
I had a question about understanding a ...Hi Ediwn,<br /><br />I had a question about understanding a SOA pattern. Is this the correct post? If not please let me know the correct post.<br /><br />Thanks.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-89697305956369168952012-10-07T12:24:17.916+02:002012-10-07T12:24:17.916+02:00Hi,
Not possible , you need to have a process for...Hi,<br /><br />Not possible , you need to have a process for every composite name and use that as filter on the queue. or have 1 composite which gets all messages and use a mediator for routing to the right sub process.<br /><br />thanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-49796351509795836862012-09-30T10:59:52.271+02:002012-09-30T10:59:52.271+02:00Hi Edwin,
We have a scenario in which we need to ...Hi Edwin,<br /><br />We have a scenario in which we need to read messages from queue.<br />Scenario is like this :<br /><br />All the messages will contain a selector (another process name). I want to have a async process and i want to have a JMS invocation, which should return all the messages with that process name.<br /><br />can we do any kind of message aggregation?<br /><br />Thanks<br />pavan4shttps://www.blogger.com/profile/09200863808814434480noreply@blogger.comtag:blogger.com,1999:blog-1839316484051079047.post-10369299982926750642012-08-25T13:13:20.512+02:002012-08-25T13:13:20.512+02:00Hi,
take a look at the advanced options of soa su...Hi,<br /><br />take a look at the advanced options of soa suite , there is a mbean.<br /><a href="http://docs.oracle.com/cd/E15586_01/fusionapps.1111/e14496/soa_trouble.htm#BABJIEGE" rel="nofollow">soa trouble</a><br /><br />but you should build a error hospital and kill the bpel instance with the fault policies and let error hospital do the retry.<br /><br />thanksEdwin Biemondhttps://www.blogger.com/profile/02338716126881111629noreply@blogger.com