Uploaded image for project: 'Jira Software Data Center'
  1. Jira Software Data Center
  2. JSWSERVER-15360

Kanban board breaks down if attachmentmodule from JIRA - Plugins - View Issue Panels is disabled

      Summary

      Kanban board breaks down if attachmentmodule from JIRA - Plugins - View Issue Panels is disabled

      Environment

      JIRA 7.2.6
      Not reproducible with: JIRA 6.4 and JIRA 7.1.9

      Steps to Reproduce

      1. Go to Administration > Add-ons > Manage Add-ons
      2. Select All add-ons
      3. Find the add-on Atlassian *JIRA - Plugins - View Issue Panels and disable module attachmentmodule

      Expected Results

      Kanban board working noramlly

      Actual Results

      The below exception is thrown in the atlassian-jira.log file:

      2016-12-20 18:43:36,803 ajp-nio-8072-exec-31 ERROR admin 1123x156666x1 27lkta 192.168.10.170 /rest/greenhopper/1.0/xboard/issue/details.json [c.a.g.w.rapid.issue.IssueResource] Unable to complete GreenHopper REST method 
      java.lang.IllegalArgumentException: The delegated panel with the complete key ['com.atlassian.jira.jira-view-issue-plugin:attachmentmodule'] must be an instance of WebPanelModuleDescriptor
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.toDelegateWebPanel(DelegatedWebPanelFinder.java:56)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.lambda$findDelegatedPanels$2(DelegatedWebPanelFinder.java:42)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder$$Lambda$4074/1535202189.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.findDelegatedPanels(DelegatedWebPanelFinder.java:45)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.getDelegatedPanel(BaseEditableTabEntryFactory.java:250)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSectionForDelegatePanel(BaseEditableTabEntryFactory.java:230)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSection(BaseEditableTabEntryFactory.java:201)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.lambda$buildSections$43(BaseEditableTabEntryFactory.java:147)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory$$Lambda$4068/1299245163.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSections(BaseEditableTabEntryFactory.java:149)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.createEntry(BaseEditableTabEntryFactory.java:79)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.lambda$buildTabs$39(EditableTabModelFactory.java:69)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory$$Lambda$4060/753019383.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.buildTabs(EditableTabModelFactory.java:70)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.createModel(EditableTabModelFactory.java:52)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueEntryFactory.buildViewEntry(IssueEntryFactory.java:378)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource$1.call(IssueResource.java:159)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource$1.call(IssueResource.java:129)
      	at com.atlassian.greenhopper.web.util.RestCall.response(RestCall.java:42)
      	at com.atlassian.greenhopper.web.AbstractResource.createResponse(AbstractResource.java:111)
      	at com.atlassian.greenhopper.web.AbstractResource.response(AbstractResource.java:91)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource.getPageData(IssueResource.java:128)
      	... 2 filtered
      	at java.lang.reflect.Method.invoke(Method.java:483)
      	... 19 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:154)
      	... 1 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:68)
      	... 33 filtered
      	at com.atlassian.servicedesk.internal.web.OperationalStatusAwareHttpFilter.doFilter(OperationalStatusAwareHttpFilter.java:31)
      	... 8 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 53 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:76)
      	at com.atlassian.jira.security.JiraSecurityFilter$$Lambda$859/1010089394.doFilter(Unknown Source)
      	... 1 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:74)
      	... 16 filtered
      	at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37)
      	... 20 filtered
      	at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30)
      	... 5 filtered
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.lambda$invokeFilterChain$0(CustomerContextSettingFilter.java:181)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter$$Lambda$5677/963497961.call(Unknown Source)
      	at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.rteInvoke(ReentrantThreadLocalBasedCodeContext.java:142)
      	at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.runOutOfContext(ReentrantThreadLocalBasedCodeContext.java:94)
      	at com.atlassian.servicedesk.internal.utils.context.CustomerContextServiceImpl.runOutOfCustomerContext(CustomerContextServiceImpl.java:64)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.outOfCustomerContext(CustomerContextSettingFilter.java:174)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilterImpl(CustomerContextSettingFilter.java:130)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilter(CustomerContextSettingFilter.java:121)
      	... 4 filtered
      	at com.atlassian.jwt.internal.servlet.JwtAuthFilter.doFilter(JwtAuthFilter.java:32)
      	... 8 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 4 filtered
      	at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36)
      	... 29 filtered
      	at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25)
      	... 27 filtered
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:745)
      2016-12-20 18:43:36,805 ajp-nio-8072-exec-31 ERROR admin 1123x156666x1 27lkta 192.168.10.170 /rest/greenhopper/1.0/xboard/issue/details.json [c.a.p.r.c.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: The delegated panel with the complete key ['com.atlassian.jira.jira-view-issue-plugin:attachmentmodule'] must be an instance of WebPanelModuleDescriptor
      java.lang.IllegalArgumentException: The delegated panel with the complete key ['com.atlassian.jira.jira-view-issue-plugin:attachmentmodule'] must be an instance of WebPanelModuleDescriptor
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.toDelegateWebPanel(DelegatedWebPanelFinder.java:56)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.lambda$findDelegatedPanels$2(DelegatedWebPanelFinder.java:42)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder$$Lambda$4074/1535202189.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.utils.DelegatedWebPanelFinder.findDelegatedPanels(DelegatedWebPanelFinder.java:45)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.getDelegatedPanel(BaseEditableTabEntryFactory.java:250)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSectionForDelegatePanel(BaseEditableTabEntryFactory.java:230)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSection(BaseEditableTabEntryFactory.java:201)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.lambda$buildSections$43(BaseEditableTabEntryFactory.java:147)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory$$Lambda$4068/1299245163.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.buildSections(BaseEditableTabEntryFactory.java:149)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.editable.factory.BaseEditableTabEntryFactory.createEntry(BaseEditableTabEntryFactory.java:79)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.lambda$buildTabs$39(EditableTabModelFactory.java:69)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory$$Lambda$4060/753019383.apply(Unknown Source)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:512)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:502)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.buildTabs(EditableTabModelFactory.java:70)
      	at com.atlassian.greenhopper.web.rapid.issue.tabs.EditableTabModelFactory.createModel(EditableTabModelFactory.java:52)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueEntryFactory.buildViewEntry(IssueEntryFactory.java:378)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource$1.call(IssueResource.java:159)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource$1.call(IssueResource.java:129)
      	at com.atlassian.greenhopper.web.util.RestCall.response(RestCall.java:42)
      	at com.atlassian.greenhopper.web.AbstractResource.createResponse(AbstractResource.java:111)
      	at com.atlassian.greenhopper.web.AbstractResource.response(AbstractResource.java:91)
      	at com.atlassian.greenhopper.web.rapid.issue.IssueResource.getPageData(IssueResource.java:128)
      	... 2 filtered
      	at java.lang.reflect.Method.invoke(Method.java:483)
      	... 19 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:154)
      	... 1 filtered
      	at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:68)
      	... 33 filtered
      	at com.atlassian.servicedesk.internal.web.OperationalStatusAwareHttpFilter.doFilter(OperationalStatusAwareHttpFilter.java:31)
      	... 8 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 53 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.lambda$doFilter$0(JiraSecurityFilter.java:76)
      	at com.atlassian.jira.security.JiraSecurityFilter$$Lambda$859/1010089394.doFilter(Unknown Source)
      	... 1 filtered
      	at com.atlassian.jira.security.JiraSecurityFilter.doFilter(JiraSecurityFilter.java:74)
      	... 16 filtered
      	at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:37)
      	... 20 filtered
      	at com.atlassian.jira.servermetrics.CorrelationIdPopulatorFilter.doFilter(CorrelationIdPopulatorFilter.java:30)
      	... 5 filtered
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.lambda$invokeFilterChain$0(CustomerContextSettingFilter.java:181)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter$$Lambda$5677/963497961.call(Unknown Source)
      	at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.rteInvoke(ReentrantThreadLocalBasedCodeContext.java:142)
      	at com.atlassian.servicedesk.internal.utils.context.ReentrantThreadLocalBasedCodeContext.runOutOfContext(ReentrantThreadLocalBasedCodeContext.java:94)
      	at com.atlassian.servicedesk.internal.utils.context.CustomerContextServiceImpl.runOutOfCustomerContext(CustomerContextServiceImpl.java:64)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.outOfCustomerContext(CustomerContextSettingFilter.java:174)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilterImpl(CustomerContextSettingFilter.java:130)
      	at com.atlassian.servicedesk.internal.web.CustomerContextSettingFilter.doFilter(CustomerContextSettingFilter.java:121)
      	... 4 filtered
      	at com.atlassian.jwt.internal.servlet.JwtAuthFilter.doFilter(JwtAuthFilter.java:32)
      	... 8 filtered
      	at com.atlassian.web.servlet.plugin.request.RedirectInterceptingFilter.doFilter(RedirectInterceptingFilter.java:21)
      	... 4 filtered
      	at com.atlassian.web.servlet.plugin.LocationCleanerFilter.doFilter(LocationCleanerFilter.java:36)
      	... 29 filtered
      	at com.atlassian.jira.servermetrics.MetricsCollectorFilter.doFilter(MetricsCollectorFilter.java:25)
      	... 27 filtered
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:745)
      

      Workaround

      1. Go to Administration > Add-ons > Manage Add-ons
      2. Select All add-ons
      3. Find the add-on Atlassian *JIRA - Plugins - View Issue Panels and enable module attachmentmodule

          Form Name

            [JSWSERVER-15360] Kanban board breaks down if attachmentmodule from JIRA - Plugins - View Issue Panels is disabled

            Atlassian Update - 10 April 2025

            Hi,

            At Atlassian, our goal is to ensure we’re providing the best experience for our customers. With our new Data Center strategy, Atlassian's focus is on security, compliance, and performance and is a key driver in prioritizing bugs. Closing the bugs that do not fall into those categories will allow us to focus on the ones in the most current versions of our products.

            This bug is being closed due to a lack of engagement in the last four years, including no new watchers, votes, or comments; this inactivity suggests a low impact.

            Please note the comments on this thread are not being monitored.

            You can read more about our bug fix policy here and how we prioritize bugs.

            To learn more about our recent investments in Jira Data Center, please check our public roadmap and dashboards containing recently resolved issues, current work, and future plans.

            Kind regards,
            Jira Data Center

            Aakrity Tibrewal added a comment - Atlassian Update - 10 April 2025 Hi, At Atlassian, our goal is to ensure we’re providing the best experience for our customers. With our new Data Center strategy, Atlassian's focus is on security, compliance, and performance and is a key driver in prioritizing bugs. Closing the bugs that do not fall into those categories will allow us to focus on the ones in the most current versions of our products. This bug is being closed due to a lack of engagement in the last four years , including no new watchers, votes, or comments; this inactivity suggests a low impact. Please note the comments on this thread are not being monitored. You can read more about our bug fix policy here and how we prioritize bugs. To learn more about our recent investments in Jira Data Center, please check our public roadmap and dashboards containing recently resolved issues , current work, and future plans . Kind regards, Jira Data Center

            any updates here? We need also a solution!

            Thank you

            mgm Atlassian-Experts added a comment - any updates here? We need also a solution! Thank you

            Dang Thi Thuy Tien added a comment - - edited

             We got the same problem when we try to disable linkingmodule

            In version 7.13.0

            Thanks

            Dang Thi Thuy Tien added a comment - - edited  We got the same problem when we try to disable linkingmodule In version 7.13.0 Thanks

            Michel Marcoux added a comment - - edited

            any updates on this?

            Thanks!

            Michel Marcoux
            Ubisoft Entertainment

            Michel Marcoux added a comment - - edited any updates on this? Thanks! Michel Marcoux Ubisoft Entertainment

              Unassigned Unassigned
              dsenger Deyves (Inactive)
              Affected customers:
              17 This affects my team
              Watchers:
              14 Start watching this issue

                Created:
                Updated:
                Resolved: