OSB11g - I need to call a service at intervals of time-any option?

Hey Geeks,

I need to call a service at regular intervals - offers OSB the same?

Here's a way to do it, not very sophisticated but it will work.
1 put the infinite attempts on the JMS queue (no limit of attempts) and significant a delay between attempts (you may need to tweak it based on performance tests but 5 minutes seems a fair value).
2. using the factory of XA connections to access the queue for messages can be cancelled
3. in the Proxy service that reads messages from the queue, first make a call for audit of system B in the request pipeline status, if the queue length is less than the recommended limit and then route the message to the system B. If the queue length is more than limit and you want to delay the sending of the message, then triggers an error in the Service of the Proxy and the message will be restored in the JMS queue and retried after 5 minutes (or any value that you put in the new attempt to delay the creation of the queue).
4. in addition, since there will be cases where messages are queued to the top, and if you do not want to try more than one message at a time, then set a work with a wire constraint Manager Max to the desired number of threads on the JMS Proxy and also reduce the Maximum Messages per setting of session Connection Factory default value of 10 to 1.

Another approach would be to create a planner to call the process.
1. create a planner for the BSO
See here:
http://blogs.Oracle.com/jamesbayer/entry/weblogic_scheduling_a_polling
3. create a simple Java class that reads the message from the JMS queue synchronously
2 when the Scheduler calls the OSB Proxy service, check the queue length in system B by calling the web service of State of system B.
3. If the length of the queue is within the limit then make a legend of Java to the synchronous consumer class and retrieves the message from the Proxy of OSB
4 to get the message to system B

Tags: Fusion Middleware

Similar Questions

Maybe you are looking for