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

Users with no access to development panel generate SoyDataException

      Problem

      When the permission "View Development Tools" (P) is assigned to a specific group (A), Jira will throw an exception "SoyDataException: Expecting number value but instead encountered type UndefinedData" whenever a user not belonging to (A) visits a board from a project using the permission scheme (P) causing the log to be filled up and becoming unuseful 

      Environment

      9.4.21

      Steps to Reproduce

      • Create an application link between Jira 9.4.X and Bitbucket 8.19.5
      • On Jira create a user group "with_access_to_bitbucket"
      • Create two users
      • Assign user 1 to the group with_access_to_bitbucket
      • Create a Jira software project PRJ with sample data
      • Configure the board and add development field in Card layout - backlog
      • Update the project permission and set the "View Development Tools" permission to "with_access_to_bitbucket" group exclusively
      • Access Jira using the user 2
      • Visit the board of PRJ
      • Drag and drop one of the tickets that has development data

      Expected Results

      • The user will not be able to see the development releated data
      • Jira will be silent about the user action

      Actual Results

      • The user cannot see the development-related data
      • Jira throws the following exception exception
      2024-07-05 10:53:41,160+0000 http-nio-8080-exec-14 url: /jira/rest/greenhopper/1.0/xboard/work/allData.json; user: user1 ERROR user1 653x1041x1 12imm8e 172.29.211.236,172.50.0.2 /rest/greenhopper/1.0/xboard/work/allDat
      a.json [c.atlassian.velocity.DefaultVelocityManager] MethodInvocationException occurred getting message body from Velocity: com.google.template.soy.tofu.SoyTofuException: When evaluating "$value.summaryBean.summary.bui
      ld.overall.count > 0 or $value.summaryBean.summary['deployment-environment'].overall.count > 0": Expecting number value but instead encountered type UndefinedData
      com.google.template.soy.tofu.SoyTofuException: When evaluating "$value.summaryBean.summary.build.overall.count > 0 or $value.summaryBean.summary['deployment-environment'].overall.count > 0": Expecting number value but 
      instead encountered type UndefinedData
              at JIRA.Templates.DevStatus.RapidBoard.card(view-devsummary-card.soy:12)
              at com.google.template.soy.tofu.internal.BaseTofu.renderMainHelper(BaseTofu.java:369)
              at com.google.template.soy.tofu.internal.BaseTofu.renderMain(BaseTofu.java:322)
              at com.google.template.soy.tofu.internal.BaseTofu.access$100(BaseTofu.java:66)
              at com.google.template.soy.tofu.internal.BaseTofu$RendererImpl.render(BaseTofu.java:476)
              at com.atlassian.soy.impl.DefaultSoyManager.render(DefaultSoyManager.java:146)
              at com.atlassian.soy.impl.DefaultSoyTemplateRenderer.render(DefaultSoyTemplateRenderer.java:52)
              at com.atlassian.soy.impl.DefaultSoyTemplateRenderer.render(DefaultSoyTemplateRenderer.java:40)
              at com.atlassian.soy.impl.DefaultSoyTemplateRenderer.render(DefaultSoyTemplateRenderer.java:34)
              at jdk.internal.reflect.GeneratedMethodAccessor968.invoke(Unknown Source)
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.base/java.lang.reflect.Method.invoke(Method.java:566)
              at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:385)
              at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:374)
              at com.atlassian.velocity.htmlsafe.introspection.AnnotationBoxingMethod.invoke(AnnotationBoxingMethod.java:24)
      
       ...
      
              at com.google.template.soy.soytree.AbstractSoyNodeVisitor.visitTemplateBasicNode(AbstractSoyNodeVisitor.java:160)
              at com.google.template.soy.soytree.AbstractSoyNodeVisitor.visit(AbstractSoyNodeVisitor.java:66)
              at com.google.template.soy.soytree.AbstractSoyNodeVisitor.visit(AbstractSoyNodeVisitor.java:56)
              at com.google.template.soy.basetree.AbstractNodeVisitor.exec(AbstractNodeVisitor.java:40)
              at com.google.template.soy.tofu.internal.BaseTofu.renderMainHelper(BaseTofu.java:366)
              ... 354 more
      Caused by: com.google.template.soy.data.SoyDataException: Expecting number value but instead encountered type UndefinedData
              at com.google.template.soy.data.SoyAbstractValue.numberValue(SoyAbstractValue.java:82)
              at com.google.template.soy.sharedpasses.render.EvalVisitor.visitGreaterThanOpNode(EvalVisitor.java:492)
              at com.google.template.soy.sharedpasses.render.EvalVisitor.visitGreaterThanOpNode(EvalVisitor.java:87)
              at com.google.template.soy.exprtree.AbstractReturningExprNodeVisitor.visit(AbstractReturningExprNodeVisitor.java:106)
              at com.google.template.soy.sharedpasses.render.EvalVisitor.visitOrOpNode(EvalVisitor.java:597)
              at com.google.template.soy.exprtree.AbstractReturningExprNodeVisitor.visit(AbstractReturningExprNodeVisitor.java:114)
              at com.google.template.soy.sharedpasses.render.EvalVisitor.visitExprRootNode(EvalVisitor.java:148)
              at com.google.template.soy.sharedpasses.render.EvalVisitor.visitExprRootNode(EvalVisitor.java:87)
              at com.google.template.soy.exprtree.AbstractReturningExprNodeVisitor.visit(AbstractReturningExprNodeVisitor.java:81)
              at com.google.template.soy.exprtree.AbstractReturningExprNodeVisitor.visit(AbstractReturningExprNodeVisitor.java:73)
              at com.google.template.soy.basetree.AbstractReturningNodeVisitor.exec(AbstractReturningNodeVisitor.java:43)
              at com.google.template.soy.sharedpasses.render.RenderVisitor.eval(RenderVisitor.java:739)
              ... 366 more
      

      Workaround

      It's possible to silence the messages temporarily following 

      • Go to Administration->system->Logging and profiling->Default Loggers
      • Configure logging level for another package and add the bellow packages as OFF
      • com.atlassian.velocity

      Permanently following Change logging levels in Jira Server

          Form Name

            [JSWSERVER-26046] Users with no access to development panel generate SoyDataException

            Jira Server Release Automation Bot[ADM-107524] made changes -
            Resolution New: Fixed [ 1 ]
            Status Original: Waiting for Release [ 12075 ] New: Closed [ 6 ]
            SET Analytics Bot made changes -
            UIS Original: 7 New: 8
            Nitesh Giri made changes -
            Assignee New: Nitesh Giri [ 7e8b5dfc9af0 ]
            Nitesh Giri made changes -
            Status Original: In Progress [ 3 ] New: Waiting for Release [ 12075 ]
            Nitesh Giri made changes -
            Status Original: Gathering Impact [ 12072 ] New: In Progress [ 3 ]
            Nitesh Giri made changes -
            Fix Version/s New: 9.12.14 [ 108825 ]
            SET Analytics Bot made changes -
            Support reference count Original: 2 New: 3
            SET Analytics Bot made changes -
            UIS Original: 6 New: 7
            SET Analytics Bot made changes -
            UIS Original: 1 New: 6
            SET Analytics Bot made changes -
            UIS New: 1

              7e8b5dfc9af0 Nitesh Giri
              f0ea184c9b1c Mohamed Kouki
              Affected customers:
              5 This affects my team
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1.5h
                  1.5h