Hi,
Environment Details:
1. OSB is a clustered Environment and it has two servers in the cluster.
2. There is an OSB service runs on our environment to shutdown / suspend any OSB process. This process is called from the OSB process where there is a failure. (Java based)
Requirement:
1. Read messages from a queue FIFO order one message at a time.
2. If there are any issues in the pipeline or during message processing. Keep the message on the source queue and shutdown / suspend the OSB process.
Options Tried so far:
Option 1: OSB: JMS Transport with XA Transaction enabled in Pipeline (It did keep the message in the queue if there are any issues, but since it is a cluster environment messages get consumed from the other server in the cluster before the shutdown happens)
Option 2: OSB : To accomplish singleton, we tried the following option to identify the ear and redeploy it to one manage server ( so we get singleton property ) Getting errors saying deployment process is not allowed on one server.
https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=398380321562087&parent=EXTERNAL_SEARCH&-042f-fa58-9f4f-6b66ca8ebe1e=&sourceId=HOWTO&id=2263422.1&_afrWindowMode=0&_adf.ctrl-state=gsoojzq5n_29
WIP Option:
OSB: JCA Adapter with XA Transaction enabled . It did NOT retain the message in the queue if there are any issues. ( need to try --> and Singleton property enabled in JCA )
Please let me know if you have any questions.
Please advise!!
Thanks!!