Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-40524

NPE while Previewing a Draft Assignment without points

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 12.3, 19.0 [Tentative]
    • Fix Version/s: 12.4, 19.0 [Tentative]
    • Component/s: Assignments
    • Labels:
      None
    • Environment:
      localhost - a2a8bc76 - Sakai 19-SNAPSHOT - Server localhost
      Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36
    • 12 status:
      Resolved
    • Test Plan:
      Hide

      This test plan needs to be repeated for each scoring type (No Grade, Letter Grade, Points, Pass/Fail, Checkmark):

      1. Click Add (to add a new assignment)
      2. On the edit screen select points and enter a point value
      3. Then click preview
      4. Then click Edit
      5. Verify the points should be same
      6. Then click Save Draft
      7. Then Edit the Draft
      8. Change the point value
      9. Click Preview, verify point value
      10. Click Edit
      11. Verify the point value
      12. Click Save Draft

      Repeat the steps above with some variations of changing the scoring type i.e. Points to Letter Grade etc

      It should always show you the correct values on the Preview Page as well well you click Edit again.

      Show
      This test plan needs to be repeated for each scoring type (No Grade, Letter Grade, Points, Pass/Fail, Checkmark): Click Add (to add a new assignment) On the edit screen select points and enter a point value Then click preview Then click Edit Verify the points should be same Then click Save Draft Then Edit the Draft Change the point value Click Preview, verify point value Click Edit Verify the point value Click Save Draft Repeat the steps above with some variations of changing the scoring type i.e. Points to Letter Grade etc It should always show you the correct values on the Preview Page as well well you click Edit again.

      Description

      Steps to replicate:

      1. Create a Draft Assignment (Preview works during creation) with no points
      2. Click Edit
      3. Click Preview

       

      org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException: java.lang.reflect.InvocationTargetException
          at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:856)
      caused by: org.sakaiproject.tool.api.ToolException: java.lang.reflect.InvocationTargetException
          at org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:234)
      caused by: java.lang.reflect.InvocationTargetException
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      caused by: java.lang.NullPointerException
          at org.sakaiproject.assignment.tool.AssignmentAction.getGradeName(AssignmentAction.java:9353)
          at org.sakaiproject.assignment.tool.AssignmentAction.build_instructor_preview_assignment_context(AssignmentAction.java:3151)
          at org.sakaiproject.assignment.tool.AssignmentAction.buildMainPanelContext(AssignmentAction.java:1261)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:498)
          at org.sakaiproject.cheftool.VelocityPortletPaneledAction.toolModeDispatch(VelocityPortletPaneledAction.java:399)
          at org.sakaiproject.cheftool.ToolServlet.doGet(ToolServlet.java:234)
          at org.sakaiproject.cheftool.VelocityPortletPaneledAction.doGet(VelocityPortletPaneledAction.java:1152)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
          at org.sakaiproject.vm.ComponentServlet.service(ComponentServlet.java:56)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:426)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:728)
          at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:470)
          at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:356)
          at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:316)
          at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:513)
          at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1487)
          at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:200)
          at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:96)
          at org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:856)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:475)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
          at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
          at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
          at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
          at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
          at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:800)
          at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1471)
          at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
          at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
          at java.lang.Thread.run(Thread.java:748)
      
      
      user: admin
      
      usage-session: 803ad401-3adc-4127-a961-374ab45637b7
      
      time: Aug 27, 2018 17:18:57

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  ern Earle R Nietzel
                  Reporter:
                  ern Earle R Nietzel
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Source Code