Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

java.lang.NoClassDefFoundError: com/atlassian/upm/notification/NotificationWebResourceTransformer$1

Irina Svirkina July 7, 2015

Hi, I'm developing JIRA plugin.

The problem is, that I constantly see the next exception in atlassian-jira.log, which is generated on every action in administration. But surprisingly all actions in administration works successfully and just the exception wastes logs, which angers me greatly.

I spent a lot of time to understand the reason playing with JIRA, upm versions and dependencies. No success.

I know, that this appears, when I switch <jira.version> from 6.1.5 to 6.4.4

  • One of differences is, that  jira 6.1.5 uses webresource 3.0.0, but jira 6.4.4 uses webresource 3.1.8.
  • class com/atlassian/upm/notification/NotificationWebResourceTransformer$1 exists in atlassian-universal-plugin-manager-plugin.jar and the plugin is installed. But the plugin doesn't export com.atlassian.upm.notification.* an so the package isn't accessible for other plugins.
  • so are atlassian-plugins-webresource 3.1.8 and atlassian-universal-plugin-manager-plugin (any version) compatible?

Could you please help me.

java.lang.NoClassDefFoundError: com/atlassian/upm/notification/NotificationWebResourceTransformer$1
at com.atlassian.upm.notification.NotificationWebResourceTransformer.transform(NotificationWebResourceTransformer.java:43)
at com.atlassian.plugin.webresource.WebResourceTransformation.transformDownloadableResource(WebResourceTransformation.java:125)
at com.atlassian.plugin.webresource.SingleDownloadableResourceBuilder.getDownloadablePluginResource(SingleDownloadableResourceBuilder.java:213)
at com.atlassian.plugin.webresource.SingleDownloadableResourceBuilder.getResourceFromModule(SingleDownloadableResourceBuilder.java:143)
at com.atlassian.plugin.webresource.SingleDownloadableResourceBuilder.locatePluginResource(SingleDownloadableResourceBuilder.java:90)
at com.atlassian.plugin.webresource.SingleDownloadableResourceBuilder.find(SingleDownloadableResourceBuilder.java:77)
at com.atlassian.plugin.webresource.SingleDownloadableResourceBuilder.parse(SingleDownloadableResourceBuilder.java:72)
at com.atlassian.plugin.webresource.PluginResourceLocatorImpl.getDownloadableResource(PluginResourceLocatorImpl.java:192)
at com.atlassian.plugin.webresource.servlet.PluginResourceDownload.serveFile(PluginResourceDownload.java:74)
at com.atlassian.plugin.servlet.AbstractFileServerServlet.doGet(AbstractFileServerServlet.java:33)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.atlassian.jira.web.filters.steps.ChainedFilterStepRunner.doFilter(ChainedFilterStepRunner.java:87)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
                  ...    
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)


My pom.xml is the next:

&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"&gt;
...
    &lt;properties&gt;
        &lt;jira.version&gt;6.4.4&lt;/jira.version&gt;
        &lt;surefire.version&gt;2.15&lt;/surefire.version&gt;
        &lt;amps.version&gt;5.0.4&lt;/amps.version&gt;
        &lt;upm.license.compatibility.version&gt;2.2.2&lt;/upm.license.compatibility.version&gt;
        &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
        &lt;atlassian.templaterenderer.version&gt;1.0.5&lt;/atlassian.templaterenderer.version&gt;
        &lt;ao.version&gt;0.19.1&lt;/ao.version&gt;
        &lt;guava.version&gt;14.0.1&lt;/guava.version&gt;
    &lt;/properties&gt;
    &lt;dependencies&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
            &lt;artifactId&gt;plugin-license-storage-lib&lt;/artifactId&gt;
            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
            &lt;scope&gt;compile&lt;/scope&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
            &lt;artifactId&gt;plugin-license-storage-plugin&lt;/artifactId&gt;
            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
            &lt;scope&gt;provided&lt;/scope&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
            &lt;artifactId&gt;licensing-api&lt;/artifactId&gt;
            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
            &lt;scope&gt;provided&lt;/scope&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
            &lt;artifactId&gt;upm-api&lt;/artifactId&gt;
            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
            &lt;scope&gt;provided&lt;/scope&gt;
        &lt;/dependency&gt;
    &lt;build&gt;
        &lt;plugins&gt;
            &lt;plugin&gt;
                &lt;groupId&gt;com.atlassian.maven.plugins&lt;/groupId&gt;
                &lt;artifactId&gt;maven-jira-plugin&lt;/artifactId&gt;
                &lt;version&gt;${amps.version}&lt;/version&gt;
                &lt;extensions&gt;true&lt;/extensions&gt;
                &lt;configuration&gt;
                    &lt;instructions&gt;
                        &lt;Spring-Context&gt;*;timeout:=60&lt;/Spring-Context&gt;
                        &lt;Export-Package&gt;
                            org.joda.time*;version=2.2
                        &lt;/Export-Package&gt;
                        &lt;Private-Package&gt;com.atlassian.upm.license.storage.lib*&lt;/Private-Package&gt;
                        &lt;!--&lt;Import-Package&gt;
                            com.google.common.*;version="10.0.1",
                            javax.annotation.*;version="3.0.0"
                        &lt;/Import-Package&gt;--&gt;
                        &lt;DynamicImport-Package&gt;com.atlassian.jira.cluster, com.atlassian.upm.api.license;version="${upm.license.compatibility.version}", com.atlassian.upm.api.license.entity;version="${upm.license.compatibility.version}", com.atlassian.upm.api.util;version="${upm.license.compatibility.version}", com.atlassian.upm.license.storage.plugin;version="${upm.license.compatibility.version}",
                        &lt;testGroups&gt;
                            &lt;testGroup&gt;
                                &lt;id&gt;jira-integration&lt;/id&gt;
                                &lt;productIds&gt;
                                    &lt;productId&gt;jira&lt;/productId&gt;
                                &lt;/productIds&gt;
                                &lt;includes&gt;
                                    &lt;include&gt;it/**/*Test.java&lt;/include&gt;
                                &lt;/includes&gt;
                            &lt;/testGroup&gt;
                        &lt;/testGroups&gt;
                    &lt;/instructions&gt;
                    &lt;allowGoogleTracking&gt;false&lt;/allowGoogleTracking&gt;
                    &lt;productVersion&gt;${jira.version}&lt;/productVersion&gt;
                    &lt;productDataVersion&gt;${jira.version}&lt;/productDataVersion&gt;
                    &lt;productDataPath&gt;${basedir}/src/test/resources/generated-test-resources.zip&lt;/productDataPath&gt;
                    &lt;bundledArtifacts&gt;
                        &lt;bundledArtifact&gt;
                            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
                            &lt;artifactId&gt;atlassian-universal-plugin-manager-plugin&lt;/artifactId&gt;
                            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
                        &lt;/bundledArtifact&gt;
                        &lt;bundledArtifact&gt;
                            &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
                            &lt;artifactId&gt;plugin-license-storage-plugin&lt;/artifactId&gt;
                            &lt;version&gt;${upm.license.compatibility.version}&lt;/version&gt;
                        &lt;/bundledArtifact&gt;
                    &lt;/bundledArtifacts&gt;
            &lt;/plugin&gt;
        &lt;/plugins&gt;
    &lt;/build&gt;
&lt;/project&gt;

1 answer

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Answer accepted
Irina Svirkina July 8, 2015

I increased version of atlassian-universal-plugin-manager-plugin to 2.18.4. This helped.

&lt;bundledArtifacts&gt;
    &lt;bundledArtifact&gt;
    &lt;groupId&gt;com.atlassian.upm&lt;/groupId&gt;
    &lt;artifactId&gt;atlassian-universal-plugin-manager-plugin&lt;/artifactId&gt;
    &lt;version&gt;2.18.4&lt;/version&gt;
&lt;/bundledArtifact&gt;

 

 

TAGS
AUG Leaders

Atlassian Community Events