March 15, 2012 7:50:05 AM PDT
Goal: Launching Interstage BPM Server Fails to Start in RedHat JBoss Enterprise Application Platform Version 5
Fact: Interstage BPM Version 11.2
Fact: Interstage BPM Version 11.2a
Fact: RedHat JBoss EAP (Enterprise Application Platform) Version 5
Fact: Windows
Fact: RedHat Linux Version 5
Symptom:
Starting up Interstage BPM server fails due to the error:
WARN [org.jboss.detailed.classloader.ClassLoaderManager] (main) Unexpected error during load ofrg.jboss.resource.metadata.repository.DefaultJCAMetaDataRepository java.lang.UnsupportedClassVersionError: Bad version number in .class file
Fix:
The problem is caused by the JDK version used to launch Interstage BPM server. In this particular case, JDK used is v1.5, while RedHat JBoss EAP Version 5 supports mininum JDK 1.6 and BPM engine requires minimum JDK v1.6 update 20. See the excerpt below from REdHat JBoss EAP 5 datasheet (http://www.redhat.com/f/pdf/jb_ent_app_platform_04_07.pdf ):
platform and standards support
JBoss enterprise application platform 5
minimum system requirements
• JDK 1.6
• 512 MB RAM
• 100 MB hard disk space
• 400 MHz CPU
supported JdKs
• Sun JDK 1.6
• OpenJDK 1.6
• IBM JDK 1.6
To rectify the issue, make sure JDK used is the supported JDK 1.6 update 20, as mentioned in BPM engine release note.
In Windows, locate and edit {JBoss home}binsetEnv.cmd by adding the following entry:
SET JAVA_HOME=<path to 1.6.0_20 JDK home directory>
Example:
SET JAVA_HOME=c:jdk1.6.0_20
In Linux, locate and edit {JBoss home}/bin/setEnv.sh by adding the following entry:
JAVA_HOME=<path to 1.6.0_20 JDK home directory>
export JAVA_HOME
Note: Alternatively, it is also possible to add the environment variable JAVA_HOME=<path to 1.6.0_20 JDK home directory> in run.conf instead of setEnv.sh.
Author: C.Y. Chen
Attachment: