Uploaded image for project: 'Crowd Data Center'
  1. Crowd Data Center
  2. CWD-2967

Upgrading from Java 1.6 to 1.7 fails due to dependencies recorded in the OSGi cache

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Low Low
    • 2.6.2
    • None
    • None
    • None

      Symptoms

      If Crowd has been running with JDK 1.6 in the past, and then is changed to JDK 1.7, some plugins will fail to load, due to cached dependencies.

      The following message appears in the log file:

      2012-10-31 09:13:09,641 main ERROR [atlassian.plugin.manager.PluginEnabler] Unable to enable plugin crowd-rest-plugin
      com.atlassian.plugin.osgi.container.OsgiContainerException: Cannot start plugin: crowd-rest-plugin
      	at com.atlassian.plugin.osgi.factory.OsgiPlugin.enableInternal(OsgiPlugin.java:430)
      	at com.atlassian.plugin.impl.AbstractPlugin.enable(AbstractPlugin.java:237)
      	at com.atlassian.plugin.impl.AbstractDelegatingPlugin.enable(AbstractDelegatingPlugin.java:213)
      	at com.atlassian.plugin.manager.PluginEnabler.actualEnable(PluginEnabler.java:114)
      	at com.atlassian.plugin.manager.PluginEnabler.enable(PluginEnabler.java:99)
      	at com.atlassian.plugin.manager.DefaultPluginManager.addPlugins(DefaultPluginManager.java:713)
      	at com.atlassian.plugin.manager.DefaultPluginManager.init(DefaultPluginManager.java:166)
      	at com.atlassian.crowd.plugin.CrowdPluginManager.init(CrowdPluginManager.java:69)
      	at com.atlassian.crowd.plugin.CrowdPluginManager.onApplicationStartedEvent(CrowdPluginManager.java:82)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36)
      	at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$2.run(AsynchronousAbleEventDispatcher.java:60)
      	at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$1.execute(AsynchronousAbleEventDispatcher.java:28)
      	at com.atlassian.event.internal.AsynchronousAbleEventDispatcher.dispatch(AsynchronousAbleEventDispatcher.java:56)
      	at com.atlassian.event.internal.EventPublisherImpl.invokeListeners(EventPublisherImpl.java:151)
      	at com.atlassian.event.internal.EventPublisherImpl.publish(EventPublisherImpl.java:70)
      	at com.atlassian.crowd.console.listener.StartupListener.contextInitialized(StartupListener.java:106)
      	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205)
      	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704)
      	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
      	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
      	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
      	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
      	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
      	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
      	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1315)
      	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
      	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
      	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
      	at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
      	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
      	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
      	at org.apache.catalina.core.StandardService.start(StandardService.java:525)
      	at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
      	at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:601)
      	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
      	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
      Caused by: org.osgi.framework.BundleException: Unresolved constraint in bundle com.atlassian.crowd.rest-plugin [18]: Unable to resolve 18.0: missing requirement [18.0] package; (&(package=com.atlassian.plugins.rest.common)(version>=2.5.1.1)) [caused by: Unable to resolve 13.0: missing requirement [13.0] package; (&(package=javax.activation)(version>=0.0.0.1_006_JavaSE)(version<=0.0.0.1_006_JavaSE))]
      	at org.apache.felix.framework.Felix.resolveBundle(Felix.java:3409)
      	at org.apache.felix.framework.Felix.startBundle(Felix.java:1709)
      	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:905)
      	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:892)
      	at com.atlassian.plugin.osgi.factory.OsgiPlugin.enableInternal(OsgiPlugin.java:402)
      	... 43 more
      
      Workaround

      Please see the KB here: https://confluence.atlassian.com/display/CROWDKB/Crowd+2.5+unable+to+be+used+after+upgrading+to+JDK+1.7

              jwalton joe
              dmason David Mason (Inactive)
              Affected customers:
              0 This affects my team
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: