Issue with add-on migration from 6x to 6.2.3

Hi,

we got into troubles during migration from JIRA 6.0.8 to 6.2.3. Our add-on is currently using bunch of Fragment classes (e.g. StatusSummaryFragment) inside of project tab panel. The Fragment classes were removed from JIRA core and extracted into jira-projects-plugin (this actually happend during release of 6.2-rc1).

After including dependency to artifact jira-projects-plugin in our pom.xml we

  • changed imports in our Java classes to point into the com.atlassian.jira.projects.legacy.*... packages and made our add-on compilable
  • updated `atlassian-plugin.xml` in order to import necessary components from the jira-projects-plugin.

However, our add-on remains disabled after JIRA starts due the following error

[INFO] [talledLocalContainer] Caused by: org.osgi.framework.BundleException: Unresolved constraint in ... [149]: Unable to resolve 107.0: missing requirement [149] package; (package=com.atlassian.jira.projects.legacy.projectpanel.fragment)

It's obvious that we are facing perhaps identical issue as is described here

In order to get the package com.atlassian.jira.projects.legacy package visible we tried to import it via import-package inside the `atlassian-plugin.xml` and in `pom.xml` with no effect.

May this have something to do with fact, that our add-on is not OSGi bundle?

Any ideas how to proceed?
Thanks for any hints

Regards,

Jan

2 answers

Sorry to Hijack the thread but this is related.

We are in the same situation, here is a more explicit error message (*), it seems that classes from the jira-api artifact are not accessible, it seems strange importing the jira-project-plugins had that effect.

How do we access the jira-api artifact classes?

Shouldn't we expect to have these classes available without an explicit dependency declaration in the pluginDependencies element in the pom.xml?

We added this to pom.xml to declare the dependency on jira-projects-plugin:

...

<pluginDependencies>

<pluginDependency>

<groupId>com.atlassian.jira</groupId>

<artifactId>jira-projects-plugin</artifactId>

</pluginDependency>

</pluginDependencies>

<instructions>

<Import-Package>com.atlassian.jira;version=1.0.31</Import-Package>

</instructions>

...

(*)

[INFO] [talledLocalContainer] java.lang.NoClassDefFoundError: com/atlassian/jira/plugin/webfragment/contextproviders/AbstractJira

ContextProvider

[INFO] [talledLocalContainer] at java.lang.ClassLoader.defineClass1(Native Method)

[INFO] [talledLocalContainer] at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)

[INFO] [talledLocalContainer] at java.lang.ClassLoader.defineClass(ClassLoader.java:615)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.findClass(ModuleImpl.java:1829)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:716)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690)

[INFO] [talledLocalContainer] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:634)

[INFO] [talledLocalContainer] at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1594)

[INFO] [talledLocalContainer] at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:887)

[INFO] [talledLocalContainer] at com.atlassian.plugin.osgi.util.BundleClassLoaderAccessor.loadClass(BundleClassLoaderAccessor.j

ava:46)

[INFO] [talledLocalContainer] at com.atlassian.plugin.osgi.factory.OsgiPluginInstalledHelper.loadClass(OsgiPluginInstalledHelpe

r.java:63)

[INFO] [talledLocalContainer] at com.atlassian.plugin.osgi.factory.OsgiPlugin.loadClass(OsgiPlugin.java:204)

[INFO] [talledLocalContainer] at com.atlassian.jira.plugin.webfragment.JiraWebFragmentHelper.loadContextProvider(JiraWebFragmen

tHelper.java:58)

[INFO] [talledLocalContainer] at com.atlassian.plugin.web.descriptors.ContextProviderElementParser.makeContextProvider(ContextP

roviderElementParser.java:53)

[INFO] [talledLocalContainer] at com.atlassian.plugin.web.descriptors.AbstractWebFragmentModuleDescriptor.enabled(AbstractWebFr

agmentModuleDescriptor.java:111)

[INFO] [talledLocalContainer] at com.atlassian.plugin.web.descriptors.DefaultWebPanelModuleDescriptor.enabled(DefaultWebPanelMo

duleDescriptor.java:179)

[INFO] [talledLocalContainer] at com.atlassian.plugin.manager.DefaultPluginManager.notifyModuleEnabled(DefaultPluginManager.jav

a:1661)

[INFO] [talledLocalContainer] at com.atlassian.plugin.manager.DefaultPluginManager.enableConfiguredPluginModule(DefaultPluginMa

nager.java:1453)

[INFO] [talledLocalContainer] at com.atlassian.plugin.manager.DefaultPluginManager.enableConfiguredPluginModules(DefaultPluginM

anager.java:1420)

[INFO] [talledLocalContainer] at com.atlassian.plugin.manager.DefaultPluginManager.addPlugins(DefaultPluginManager.java:875)

[INFO] [talledLocalContainer] at com.atlassian.plugin.manager.DefaultPluginManager.init(DefaultPluginManager.java:258)

[INFO] [talledLocalContainer] at com.atlassian.jira.plugin.JiraPluginManager.start(JiraPluginManager.java:83)

[INFO] [talledLocalContainer] at com.atlassian.jira.ComponentManager$PluginSystem.start(ComponentManager.java:722)

[INFO] [talledLocalContainer] at com.atlassian.jira.ComponentManager.quickStart(ComponentManager.java:225)

[INFO] [talledLocalContainer] at com.atlassian.jira.ComponentManager.start(ComponentManager.java:199)

[INFO] [talledLocalContainer] at com.atlassian.jira.upgrade.PluginSystemLauncher.start(PluginSystemLauncher.java:24)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.DefaultJiraLauncher$3.run(DefaultJiraLauncher.java:130)

[INFO] [talledLocalContainer] at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseCon

figurationManagerImpl.java:317)

[INFO] [talledLocalContainer] at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivat

ed(DatabaseConfigurationManagerImpl.java:211)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:118)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.DefaultJiraLauncher.access$100(DefaultJiraLauncher.java:32)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.DefaultJiraLauncher$1.run(DefaultJiraLauncher.java:81)

[INFO] [talledLocalContainer] at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:34)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:76)

[INFO] [talledLocalContainer] at com.atlassian.jira.startup.LauncherContextListener.contextInitialized(LauncherContextListener.

java:54)

[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4887)

[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5381)

[INFO] [talledLocalContainer] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

[INFO] [talledLocalContainer] at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)

[INFO] [talledLocalContainer] at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)

[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)

[INFO] [talledLocalContainer] at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:977)

[INFO] [talledLocalContainer] at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1654)

[INFO] [talledLocalContainer] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)

[INFO] [talledLocalContainer] at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

[INFO] [talledLocalContainer] at java.util.concurrent.FutureTask.run(FutureTask.java:138)

[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)

[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)

[INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:662)

[INFO] [talledLocalContainer] Caused by: java.lang.ClassNotFoundException: com.atlassian.jira.plugin.webfragment.contextproviders

.AbstractJiraContextProvider

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:772)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl.access$200(ModuleImpl.java:73)

[INFO] [talledLocalContainer] at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1690)

[INFO] [talledLocalContainer] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

[INFO] [talledLocalContainer] ... 51 more

Did you figure this out?

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published yesterday in Hipchat

Moving from Hipchat to Stride? Here’s what you’ll love

Heya, Hipchat friends! We’re so happy you’re checking out   Stride. Whether you know it or not, you have been instrumental in making Stride come to life. Every feature, design, and functionality...

68 views 2 6
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you