Use Indivo with Java 6
From OpenIndivo Documentation Wiki
Upgrade JAXB Version
In order to use Java 6 (1.6.x) with Indivo the JAXB version that is now included in Java 6 - JAXB 2.0 - must be upgraded as it is not compatible with Indivo. This applies to the PHP JavaBridge and the Indivo Server. To fix this problem: one should follow the Endorsed Standards Override Mechanism.
You will know that this is a problem if you get the following error:
PHP Fatal error: Uncaught [[o:Exception]:"java.lang.Exception: CreateInstance failed: new org.indivo.client.TalkClientImpl((i:Map)[o:HashMap]). Cause: java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/var/lib/tomcat5.5/webapps/JavaBridge/WEB-INF/lib/jaxb-impl-2.1.3.jar !/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.1 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/standards/) Responsible VM: 1.6.0_03@http://java.sun.com/" at:\n#-25 com.sun.xml.bind.v2.model.impl.ModelBuilder.<clinit>(ModelBuilder.java:136)\n#-24 com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:406)\n#-23 com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:270)\n#0 http://example.foo.org:8080/JavaBridge/java/Java.inc(257): java_ThrowExceptionProxyFactory->getProxy(13, '@N', false)\n#1 http://example.foo.org:8080/JavaBridge/java/J in http://example.foo.org:8080/JavaBridge/java/Java.inc on line 220, referer: http://example.foo.org/indivo/login.php
Tomcat Deployment
An example of this is Indivo deployed under Tomcat. This example will assume the following:
- OS: Ubuntu Linux
- Tomcat: installed using tomcat5.5 package (gutsy or hardy)
- Java: sun-java6-jdk package installed (gutsy or hardy)
The tomcat package will install two different directories:
/usr/share/tomcat5.5 /var/lib/tomcat5.5
All that needs to be done, is place the new JAXB API Jar into Tomcat's endorsed directory. In this scenario the directory is:
/usr/share/tomcat5.5/common/endorsed/jaxb-api.jar
This affectively upgrades the Jaxb version for this instance of Tomcat.
Note: the JAXB Jar that should be placed in the above directory can be found in the WAR file for the Indivo Server.

