Hi Everybody,
If you are running on Oracle Bpel 10.1.2.0.2 and stuck with java version 1.4 then I have a great news for you!
Previously you may already tried to run bpel with newer versions of java by adding "java-bin" element to opmn.xml;
opmn.xml
<data id="java-bin" value="/home/oracle/java15/bin/java"/>
You were excited and wondering about how bpel will perform with new java version.. oppps! after starting the container you will see this error message;
JDK version not supported.
The JDK version "1_5" is not supported by the OraBPEL domain runtime. Currently only JDK version 1.4 is supported.
13/08/04 16:50:47 at com.collaxa.cube.admin.adaptors.ServerAdaptorFactory.createJDKAdaptor(ServerAdaptorFactory.java:63)
13/08/04 16:50:47 at com.collaxa.cube.admin.adaptors.ServerAdaptorManager.init(ServerAdaptorManager.java:53)
13/08/04 16:50:47 at com.collaxa.cube.admin.ServerManager.__init(ServerManager.java:213)
13/08/04 16:50:47 at com.collaxa.cube.admin.ServerManager.init(ServerManager.java:101)
13/08/04 16:50:47 at com.collaxa.cube.ejb.impl.ServerBean.init(ServerBean.java:200)......
I decompiled the ServerAdaptorFactory class. Then I saw that if I put a java option then I may deceive the bpel .. Yes! it worked :)
1) Put this option to "start-parameters" in opmn.xml and leave the "java-bin" attribute with new version of java.
-Djava.specification.version=1.4
This will make your container to start up with java 1.5+ without any trouble and run your bpel instances successfully but you will not able to deploy new processes (try, you'll get errors). To overcome this new problem you should do one more little thing;
2) Link your new java 1.5+ tools.jar file to $ORACLE_HOME/jdk/lib/tools.jar..
Now you can run bpel 10.1.2.0.2 with java 1.5+
We are running bpel 10.1.2.0.2 on sun jdk 1.7.0_25 64bit (with 5GB heap and G1GC) without any problem. Now garbage collection takes tens of milliseconds to complete and we don't experience memory leak anymore (previously we had to restart servers once a week because heap was getting full and garbage collector was taking too much time and still could not empty old generation). With java 1.7, cpu performance is also a big achievement; we are able to process much more instances even with using less cpu resource.
Would you please mention us upgrade results such as memory usage, process times etc.
ReplyDelete