Details
-
Suggestion
-
Resolution: Won't Fix
-
None
-
None
Description
Since Confluence 3.1.x bundles it own version of the xerces parser (xercesImpl-2.9.1.jar specifically), attempting to start it up will result in this error:
ERROR [JBossContextConfig] XML error parsing: context.xml org.jboss.xb.binding.JBossXBRuntimeException: Failed to create a new SAX parser at org.jboss.xb.binding.UnmarshallerFactory$UnmarshallerFactoryImpl.newUnmarshaller(UnmarshallerFactory.java:100) at org.jboss.web.tomcat.service.deployers.JBossContextConfig.processContextConfig(JBossContextConfig.java:552) at org.jboss.web.tomcat.service.deployers.JBossContextConfig.init(JBossContextConfig.java:538) at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:279)
Attempting to remove Confluence's version and fallback on the version bundled with JBoss will result in the following error during as the user attempts to progress through the Confluence Setup Wizard:
com.atlassian.plugin.event.NotificationException: com.atlassian.plugin.osgi.container.OsgiContainerException: Detected an incompatible version of Apache Xerces on the classpath. If using Tomcat, you may have an old version of Xerces in $TOMCAT_HOME/common/lib/endorsed that will need to be removed. at com.atlassian.plugin.event.impl.DefaultPluginEventManager.broadcast(DefaultPluginEventManager.java:85) at com.atlassian.plugin.manager.DefaultPluginManager.init(DefaultPluginManager.java:127)
The above exception is thrown due newer versions of the atlassian-plugin module that is stricter about older versions of xerces in the classpath (see https://studio.atlassian.com/browse/PLUG-414).
In order to support JBoss, we need a context that is isolated from their WAR classloader. See https://jira.jboss.org/jira/browse/JBAS-7210.
JIRA 4.0 has the same issue and is also waiting for this fix.