Uploaded image for project: 'Bitbucket Data Center'
  1. Bitbucket Data Center
  2. BSERV-7403

Exception on App Links admin screen after upgrading to 3.9.1 with a configured Trusted App

    XMLWordPrintable

Details

    Description

      I upgraded from Stash 3.7.1 -> 3.9.1.

      I had some applinks to my other JIRA apps, and now when I try and go to the Application Links screen, I get a 500 error. The logs report:

      2015-05-18 22:14:44,146 ERROR [http-nio-127.0.0.1-8803-exec-7] prez @4OWM7Ex1334x48x0 10bxhzg 64.27.17.129,127.0.0.1 "GET /plugins/servlet/applinks/listApplicationLinks HTTP/1.0" org.apache.velocity Exception rendering #parse(com/atlassian/applinks/ui/admin/common_header.vm) at com/atlassian/applinks/ui/admin/list_application_links.vm[line 49, column 5]
      2015-05-18 22:14:44,225 ERROR [http-nio-127.0.0.1-8803-exec-7] @4OWM7Ex1334x49x0 10bxhzg 64.27.17.129,127.0.0.1 "GET /mvc/error500 HTTP/1.0" c.a.s.i.web.ErrorPageController There was an unhandled exception loading [/plugins/servlet/applinks/listApplicationLinks]
      com.atlassian.templaterenderer.RenderingException: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getOrphanedTrustCertificates' in  class com.atlassian.applinks.ui.velocity.ListApplicationLinksContext threw exception java.lang.NoClassDefFoundError: com/atlassian/ip/Subnet at com/atlassian/applinks/ui/admin/common_header.vm[line 11, column 20]
              at com.atlassian.templaterenderer.velocity.one.six.internal.VelocityTemplateRendererImpl.render(VelocityTemplateRendererImpl.java:109) ~[na:na]
              at com.atlassian.applinks.ui.AbstractApplinksServlet.render(AbstractApplinksServlet.java:288) ~[na:na]
              at com.atlassian.applinks.ui.ListApplicationLinksServlet.doGet(ListApplicationLinksServlet.java:108) ~[na:na]
              at com.atlassian.applinks.ui.AbstractApplinksServlet.service(AbstractApplinksServlet.java:159) ~[na:na]
              at com.atlassian.applinks.core.rest.context.ContextFilter.doFilter(ContextFilter.java:25) ~[na:na]
              at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:181) ~[sitemesh-2.5-atlassian-11.jar:na]
              at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:85) ~[sitemesh-2.5-atlassian-11.jar:na]
              at com.atlassian.stash.internal.spring.security.StashAuthenticationFilter.doFilter(StashAuthenticationFilter.java:83) ~[StashAuthenticationFilter.class:na]
              at com.atlassian.stash.internal.web.auth.BeforeLoginPluginAuthenticationFilter.doInsideSpringSecurityChain(BeforeLoginPluginAuthenticationFilter.java:111) ~[BeforeLoginPluginAuthenticationFilter.class:na]
              at com.atlassian.stash.internal.web.auth.BeforeLoginPluginAuthenticationFilter.doFilter(BeforeLoginPluginAuthenticationFilter.java:77) ~[BeforeLoginPluginAuthenticationFilter.class:na]
              at com.atlassian.security.auth.trustedapps.filter.TrustedApplicationsFilter.doFilter(TrustedApplicationsFilter.java:103) ~[atlassian-trusted-apps-core-4.0.0.jar:na]
              at com.atlassian.oauth.serviceprovider.internal.servlet.OAuthFilter.doFilter(OAuthFilter.java:79) ~[na:na]
              at com.atlassian.analytics.client.filter.DefaultAnalyticsFilter.doFilter(DefaultAnalyticsFilter.java:32) ~[na:na]
              at com.atlassian.analytics.client.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32) ~[na:na]
              at com.atlassian.stash.internal.web.auth.BeforeLoginPluginAuthenticationFilter.doBeforeBeforeLoginFilters(BeforeLoginPluginAuthenticationFilter.java:89) ~[BeforeLoginPluginAuthenticationFilter.class:na]
              at com.atlassian.stash.internal.web.auth.BeforeLoginPluginAuthenticationFilter.doFilter(BeforeLoginPluginAuthenticationFilter.java:75) ~[BeforeLoginPluginAuthenticationFilter.class:na]
              at com.atlassian.stash.internal.request.DefaultRequestManager.doAsRequest(DefaultRequestManager.java:85) ~[stash-service-impl-3.9.1.jar:na]
              at com.atlassian.stash.internal.hazelcast.ConfigurableWebFilter.doFilter(ConfigurableWebFilter.java:38) ~[ConfigurableWebFilter.class:na]
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_79]
              at java.lang.Thread.run(Thread.java:745) [na:1.7.0_79]
              ... 208 frames trimmed
      Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getOrphanedTrustCertificates' in  class com.atlassian.applinks.ui.velocity.ListApplicationLinksContext threw exception java.lang.NoClassDefFoundError: com/atlassian/ip/Subnet at com/atlassian/applinks/ui/admin/common_header.vm[line 11, column 20]
              at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:237) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:460) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTNotNode.evaluate(ASTNotNode.java:63) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTAndNode.evaluate(ASTAndNode.java:104) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:62) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:85) ~[na:na]
              at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) ~[na:na]
              at org.apache.velocity.runtime.directive.Parse.render(Parse.java:260) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175) ~[na:na]
              at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) ~[na:na]
              at org.apache.velocity.Template.merge(Template.java:328) ~[na:na]
              at org.apache.velocity.Template.merge(Template.java:235) ~[na:na]
              at com.atlassian.templaterenderer.velocity.one.six.internal.VelocityTemplateRendererImpl.render(VelocityTemplateRendererImpl.java:100) ~[na:na]
              ... 20 common frames omitted
      Caused by: java.lang.NoClassDefFoundError: com/atlassian/ip/Subnet
              at com.atlassian.security.auth.trustedapps.AtlassianIPMatcher.parsePatternString(AtlassianIPMatcher.java:56) ~[atlassian-trusted-apps-core-4.0.0.jar:na]
              at com.atlassian.security.auth.trustedapps.RequestConditions$RulesBuilder.addIPPattern(RequestConditions.java:45) ~[atlassian-trusted-apps-core-4.0.0.jar:na]
              at com.atlassian.stash.internal.auth.trusted.TrustedApplicationsManagerImpl$1.apply(TrustedApplicationsManagerImpl.java:171) ~[stash-service-impl-3.9.1.jar:na]
              at com.atlassian.stash.internal.auth.trusted.TrustedApplicationsManagerImpl$1.apply(TrustedApplicationsManagerImpl.java:166) ~[stash-service-impl-3.9.1.jar:na]
              at com.google.common.collect.Iterators$8.next(Iterators.java:812) ~[guava-11.0.2-atlassian-02.jar:na]
              at com.google.common.collect.Lists.newArrayList(Lists.java:139) ~[guava-11.0.2-atlassian-02.jar:na]
              at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:256) ~[guava-11.0.2-atlassian-02.jar:na]
              at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:217) ~[guava-11.0.2-atlassian-02.jar:na]
              at com.atlassian.stash.internal.auth.trusted.TrustedApplicationsManagerImpl.getTrustedApplications(TrustedApplicationsManagerImpl.java:98) ~[stash-service-impl-3.9.1.jar:na]
              at com.atlassian.applinks.core.auth.trusted.TrustedAppsOrphanedTrustDetector.findOrphanedTrustCertificates(TrustedAppsOrphanedTrustDetector.java:59) ~[na:na]
              at com.atlassian.applinks.core.auth.DelegatingOrphanedTrustDetector.findOrphanedTrustCertificates(DelegatingOrphanedTrustDetector.java:30) ~[na:na]
              at com.atlassian.applinks.ui.velocity.ListApplicationLinksContext.getOrphanedTrustCertificates(ListApplicationLinksContext.java:137) ~[na:na]
              at org.apache.velocity.runtime.parser.node.PropertyExecutor.execute(PropertyExecutor.java:142) ~[na:na]
              at org.apache.velocity.util.introspection.UberspectImpl$VelGetterImpl.invoke(UberspectImpl.java:533) ~[na:na]
              at org.apache.velocity.runtime.parser.node.ASTIdentifier.execute(ASTIdentifier.java:198) ~[na:na]
              ... 33 common frames omitted
      Caused by: java.lang.ClassNotFoundException: com.atlassian.ip.Subnet
              at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1295) ~[catalina.jar:8.0.15]
              ... 48 common frames omitted
      

      Was a library left out of this release or something?
      I've not tried manually deleting the app links in the DB ,but I should not have to

      Workaround

      Copy atlassian-ip-2.0.jar to <STASH_INSTALL>/atlassian-stash/WEB-INF/lib/. You can find this in your previous Stash installation directory at the same location. If you do not have a previous installation, you can download 3.8.1 here, unzip it, and it will be at atlassian-stash/WEB-INF/lib. The JAR can also be downloaded directly from here.

      Attachments

        Issue Links

          Activity

            People

              khughes@atlassian.com Kristy
              e3fa016cece7 PreZ
              Votes:
              0 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: