Uploaded image for project: 'OpenOLAT'
  1. OpenOLAT
  2. OO-3714

QTI 2.1: rs with tab and enter play in a test with limited number of attempt per question

    XMLWordPrintable

    Details

      Description

      With Edge or Firefox, it is possible to use tab and enter to "click" links and buttons. Take the case of a test with only one attempt per question, a user answers all the questions, play a little with tab and select a link in the menu list of question (a question or the bookmark) and use "enter". -> Red screen

      12:27:55,426 ERROR OLATRuntimeException:175 - **RedScreen** Item session has already been ended
      
      <dispatchinfo>
      	<componentinfo>
      		<compname>ffo_main_at_run</compname>
      		<compclass>org.olat.core.gui.components.form.flexible.impl.FormWrapperContainer</compclass>
      		<extendedinfo>n/a</extendedinfo>
      		<event>
      			<class&gt;org.olat.core.gui.control.Event</class&gt;
      			<command>validation ok</command>
      			<tostring>com:validation ok,org.olat.core.gui.control.Event@d62b3f02</tostring>
      		</event>
      	</componentinfo>
      	<controllerinfo>
      		<controllername>org.olat.ims.qti21.ui.AssessmentTestDisplayController$QtiWorksController</controllername>
      		<controllername>org.olat.ims.qti21.ui.AssessmentTestDisplayController</controllername>
      		<controllername>org.olat.course.nodes.iq.QTI21AssessmentRunController</controllername>
      		<controllername>org.olat.course.run.RunMainController</controllername>
      		<controllername>org.olat.course.run.CourseRuntimeController</controllername>
      		<controllername>org.olat.core.commons.fullWebApp.BaseFullWebappController</controllername>
      	</controllerinfo>
      </dispatchinfo>
      >>>stack of 1.cause::org.olat.core.logging.OLATRuntimeException: Item session has already been ended
      -> at org.olat.core.gui.exception.ExceptionWindowController.<init>(ExceptionWindowController.java:116)
         at org.olat.core.gui.exception.MsgFactory.createMessageChiefController(MsgFactory.java:57)
         at org.olat.core.gui.exception.MsgFactory.createMessageChiefController(MsgFactory.java:46)
         at org.olat.core.gui.components.Window.dispatchRequest(Window.java:589)
         at org.olat.core.gui.components.Window.doDispatchRequest(Window.java:282)
         at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193)
         at org.olat.dispatcher.AuthenticatedDispatcher.processValidDispatchURI(AuthenticatedDispatcher.java:273)
         at org.olat.dispatcher.AuthenticatedDispatcher.execute(AuthenticatedDispatcher.java:190)
         at org.olat.core.servlets.OpenOLATServlet.executeUserRequest(OpenOLATServlet.java:294)
         at org.olat.core.servlets.OpenOLATServlet.doPost(OpenOLATServlet.java:237)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
      >>>stack of 2.cause::uk.ac.ed.ph.jqtiplus.exception.QtiCandidateStateException: Item session has already been ended
      -> at uk.ac.ed.ph.jqtiplus.running.ItemSessionController.assertItemNotEnded(ItemSessionController.java:1116)
         at uk.ac.ed.ph.jqtiplus.running.ItemSessionController.assertItemOpen(ItemSessionController.java:1128)
         at uk.ac.ed.ph.jqtiplus.running.ItemSessionController.bindResponses(ItemSessionController.java:647)
         at uk.ac.ed.ph.jqtiplus.running.TestSessionController.handleResponsesToCurrentItem(TestSessionController.java:1549)
         at org.olat.ims.qti21.ui.AssessmentTestDisplayController.handleResponse(AssessmentTestDisplayController.java:1216)
         at org.olat.ims.qti21.ui.AssessmentTestDisplayController.processQTIEvent(AssessmentTestDisplayController.java:717)
         at org.olat.ims.qti21.ui.AssessmentTestDisplayController.event(AssessmentTestDisplayController.java:496)
         at org.olat.core.gui.control.DefaultController$1.run(DefaultController.java:246)
         at org.olat.core.logging.activity.ThreadLocalUserActivityLoggerInstaller.runWithUserActivityLogger(ThreadLocalUserActivityLoggerInstaller.java:108)
         at org.olat.core.gui.control.DefaultController.dispatchEvent(DefaultController.java:243)
         at org.olat.core.gui.control.DefaultController.fireEvent(DefaultController.java:190)
      

        Attachments

          Activity

            People

            • Assignee:
              srosse Stéphane Rossé
              Reporter:
              srosse Stéphane Rossé
              Tester:
              Mandy Menzel
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 hours, 15 minutes
                2h 15m