Problem
During the migration of 11g server to 12c, faced an issue where OSB Proxy Service whose Transport Configuration is JMS cannot consume messages from the desired endpoint URI which is a JMS queue. The message remains pending state in the respective JMS queue.
In the OSB server log file, one could see below error logs:
<Error> <oracle.osb.transports.main.jmstransport> <OSB-381519> <Failure while processing an incoming message for endpoint ProxyService ABCProjectName/Proxy Services/ABCProxyService due to service configuration in flux>
<Error> <oracle.osb.transports.main.jmstransport> <OSB-381502> <Exception in JmsInboundMDB.onMessage: com.bea.wli.sb.transports.TransportException: Failure while processing an incoming message for endpoint ProxyService ABCProjectName/Proxy Services/ABCProxyService due to service configuration in flux
com.bea.wli.sb.transports.TransportException: Failure while processing an incoming message for endpoint ProxyService ABCProjectName/Proxy Services/ABCProxyService due to service configuration in flux
at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:121)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:438)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:361)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:297)
Solution
On investigation, identified that below necessary Weblogic environment parameter is not in place:
-Djavax.xml.namespace.QName.useCompatibleHashCodeAlgorithm=1.0
The above parameters should be present in all the managed servers of OSB as well as in the Admin server.
Step by Step Guide:
Option 1: Update from Front End –
- Log into Weblogic Admin Console
- Click on Lock and Edit button on the left-hand side corner
- Click on Servers and then first managed server of OSB (Later click on all the other OSB servers and Admin server as well)
- Under Configuration tab > Go to Server Start
- Edit the Arguments to reflect like below:
“-Xrs -Djavax.xml.namespace.QName.useCompatibleHashCodeAlgorithm=1.0”
NOTE: If there are more arguments present for your server, then do not remove them but do add the one highlighted in bold.
Option 2: Update from Back End –
- Go to $DOMAIN_HOME/bin/setDomainEnv.sh
- Edit the above setDomainEnv.sh and insert the below parameter so that it looks like:
“-Djavax.xml.namespace.QName.useCompatibleHashCodeAlgorithm=1.0”
NOTE: If there are more arguments present for your server, then do not remove them but do add the one highlighted in bold.
An important step to be performed after one opt for either of the above options:
- Delete temp, cache and stage directories and restart all the OSB and Admin servers
- Delete and then re-deploy/re-import those OSB projects which are consuming messages from JMS Queue

Good content!
LikeLike
Amazing post on flux issue in 12c
LikeLike
Superb post on security!
LikeLike
Promising content!
LikeLike
Promising post…Keep posting!
LikeLike
Helped me and project during migration…
LikeLike
Helped me solve issue in my company…
LikeLike
Great stuff
LikeLike
This post helped us solved our issue…
LikeLike
Superb…
LikeLike
Very helpful.
LikeLike
Nice and easy explanation step by step
LikeLiked by 1 person
Great work
LikeLike
Excellent!
LikeLike
Thank you! And keep these posts coming
LikeLiked by 2 people
Excellent content!!
LikeLike
Very helpful
LikeLike
Amazing
LikeLike
Amazing content
LikeLike
Useful content it helped me alot
LikeLike
Excellent
LikeLike
Useful content…helped alot!!
LikeLike
It helped me alot
LikeLike
Good one
LikeLike
Good one!!
LikeLike
Excellent content
LikeLike
Very. Nice
LikeLike
Brilliant work
LikeLike
Excellent work…keep blogging !!!
LikeLiked by 1 person