System plugins fail to load due to NoClassDefFoundError
Symptoms
JIRA fails to fully load system plugins. Once JIRA is started, it is possible to enable some plugins (or specific plugin modules) through the Plugin Manager
The following appears in the atlassian-jira.log during startup
:
2012-08-13 12:02:42,299 Spring executor 4 ERROR [plugin.osgi.factory.OsgiPlugin] Unable to start the Spring context for plugin com.atlassian.streams.core
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from URL [bundle://80.0:0/META-INF/spring/atlassian-plugins-host-components.xml]; nested exception is java.lang.NoClassDefFoundError: org/w3c/dom/ranges/DocumentRange
Diagnosis
May have upgraded from JIRA 4.2 or prior.
Cause
OSGI plugin paths are over-written from the Java startup parameters
Workaround
Enable the disabled plugins/modules through the Plugin Manager after each startup.
Resolution
Remove the defined Java startup parameters:
- Explanation of how to modify the parameters here: Setting Properties and Options on Startup
- Below is a sample of what you may modify on Linux. You can check for the arguments for the corresponding locations in Windows
Linux
- Modify the Java startup file: <jira-install>/bin/setenv.sh
- Check for any arguments that may alter the OSGI framework:
- Default locations to set arguments:
- JVM_SUPPORT_RECOMMENDED_ARGS
- JVM_REQUIRED_ARGS
- JVM_EXTRA_ARGS
The actual parameters may look something like this:
-Datlassian.org.osgi.framework.bootdelegation=
- Default locations to set arguments: