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

QTI 2.1: menu not related to server state

    XMLWordPrintable

    Details

      Description

      The issue happens will an old version of Safe Exam Browser which use a very old version of Firefox (45.0). I cannot reproduce the issue. The solution is to catch the exception and reload the whole page, after that, the menu and the server state of the test must be in sync.

      2020-01-06 15:40:20.580 [ajp-nio2-8032-exec-19] ERROR OLATRuntimeException ^%^ I731324-J178635 ^%^ org.olat.core.logging.OLATRuntimeException
      https://olat.xyz.ch/auth/RepositoryEntry/574521382/CourseNode/100920044884782/test/0
      Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
      **RedScreen** Item session has been suspended
      
      <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.ims.qti21.ui.QTIWorksAssessmentTestEvent</class&gt;
      			<command>selectItem</command>
      			<tostring>com:selectItem,org.olat.ims.qti21.ui.QTIWorksAssessmentTestEvent@9d47464e</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> 
      		
      Caused by: uk.ac.ed.ph.jqtiplus.exception.QtiCandidateStateException: Item session has been suspended
       at uk.ac.ed.ph.jqtiplus.running.ItemSessionController.assertItemNotSuspended(ItemSessionController.java:1150)
       at uk.ac.ed.ph.jqtiplus.running.ItemSessionController.suspendItemSession(ItemSessionController.java:535)
       at uk.ac.ed.ph.jqtiplus.running.TestSessionController.selectItemNonlinear(TestSessionController.java:972)
       at org.olat.ims.qti21.ui.AssessmentTestDisplayController.processSelectItem(AssessmentTestDisplayController.java:847)
       at org.olat.ims.qti21.ui.AssessmentTestDisplayController.processQTIEvent(AssessmentTestDisplayController.java:708)
       at org.olat.ims.qti21.ui.AssessmentTestDisplayController.event(AssessmentTestDisplayController.java:505)
       at org.olat.core.gui.control.DefaultController$1.run(DefaultController.java:250)
       at org.olat.core.logging.activity.ThreadLocalUserActivityLoggerInstaller.runWithUserActivityLogger(ThreadLocalUserActivityLoggerInstaller.java:108)
       at org.olat.core.gui.control.DefaultController.dispatchEvent(DefaultController.java:247)
       at org.olat.core.gui.control.DefaultController.fireEvent(DefaultController.java:194)
       at org.olat.ims.qti21.ui.AssessmentTestDisplayController$QtiWorksController.formInnerEvent(AssessmentTestDisplayController.java:2088)
       at org.olat.core.gui.components.form.flexible.impl.FormBasicController.event(FormBasicController.java:430)
       at org.olat.ims.qti21.ui.AssessmentTestDisplayController$QtiWorksController.event(AssessmentTestDisplayController.java:2052)
       at org.olat.core.gui.control.DefaultController.dispatchEvent(DefaultController.java:206)
       at org.olat.core.gui.components.AbstractComponent$1.run(AbstractComponent.java:240)
       at org.olat.core.logging.activity.ThreadLocalUserActivityLoggerInstaller.runWithUserActivityLogger(ThreadLocalUserActivityLoggerInstaller.java:108)
       at org.olat.core.gui.components.AbstractComponent.fireEvent(AbstractComponent.java:238)
       at org.olat.core.gui.components.form.flexible.impl.FormWrapperContainer.fireFormEvent(FormWrapperContainer.java:131)
       at org.olat.core.gui.components.form.flexible.impl.Form.fireFormEvent(Form.java:717)
       at org.olat.ims.qti21.ui.components.AssessmentTreeFormItem.evalFormRequest(AssessmentTreeFormItem.java:101)
       at org.olat.core.gui.components.form.flexible.impl.Form$EvaluatingFormComponentVisitor.visit(Form.java:626)
       at org.olat.core.util.component.FormComponentTraverser.doVisit(FormComponentTraverser.java:65)
       at org.olat.core.util.component.FormComponentTraverser.doVisit(FormComponentTraverser.java:70)
       at org.olat.core.util.component.FormComponentTraverser.visitAll(FormComponentTraverser.java:60)
       at org.olat.core.gui.components.form.flexible.impl.Form.evalFormRequest(Form.java:265)
       at org.olat.core.gui.components.form.flexible.impl.FormWrapperContainer.doDispatchRequest(FormWrapperContainer.java:100)
       at org.olat.core.gui.components.AbstractComponent.dispatchRequest(AbstractComponent.java:193)
       at org.olat.core.gui.components.Window.doDispatchToComponent(Window.java:1201)
       at org.olat.core.gui.components.Window.dispatchRequest(Window.java:398)
       ... 39 more
      
      

        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: