[Building Sakai] Failed import of IMS QTI formatted file in question pool throws exception

Karen Tsao ktsao at stanford.edu
Fri Jan 29 10:58:51 PST 2010


Hi Doreen,

I think your error is not generated by the un-removed files. Can you please
send me the results of following queries?

select * from sam_questionpool_t

Also, where did the instructor get the QTI XML? Exported from a Tests &
Quizzes assessment?  Can you email me your QTI XML file?

Thanks,
Karen

On Fri, Jan 29, 2010 at 9:41 AM, Doreen Minich <DMinich at messiah.edu> wrote:

>  A prof tried to import an IMS QTI formatted file into the Tests &
> Quizzes/Question Pool and it failed.  Now they have a nasty bug report
> following them around Sakai anytime they access a question pool.  How can we
> clear up the error (seen below)?  I saw a jira regarding failed QTI import
> files not getting removed and the fix is clearing out /tmp/jsf/upload_tmp/qti_imports/...
> Is that the only solution and should this directory always be empty?
>
> Dorie
> Messiah College
>
>
> org.sakaiproject.portal.api.PortalHandlerException: org.sakaiproject.tool.api.ToolException
>     at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:70)
> caused by: org.sakaiproject.tool.api.ToolException
>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1216)
> caused by: javax.servlet.ServletException
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> caused by: java.lang.NullPointerException
>     at org.sakaiproject.tool.assessment.ui.bean.questionpool.QuestionPoolBean$titleComparator.compare(QuestionPoolBean.java:227)
>     at java.util.Arrays.mergeSort(Arrays.java:1284)
>     at java.util.Arrays.sort(Arrays.java:1223)
>     at java.util.Collections.sort(Collections.java:159)
>     at org.sakaiproject.tool.assessment.ui.bean.questionpool.QuestionPoolBean.sortQpoolsByProperty(QuestionPoolBean.java:241)
>     at org.sakaiproject.tool.assessment.ui.bean.questionpool.QuestionPoolBean.sortPoolByLevel(QuestionPoolBean.java:1975)
>     at org.sakaiproject.tool.assessment.ui.bean.questionpool.QuestionPoolBean.setQpDataModelByLevel(QuestionPoolBean.java:2071)
>     at org.sakaiproject.tool.assessment.ui.listener.questionpool.QuestionPoolListener.processAction(QuestionPoolListener.java:50)
>     at javax.faces.event.ActionEvent.processListener(ActionEvent.java:57)
>     at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:649)
>     at javax.faces.component.UICommand.broadcast(UICommand.java:297)
>     at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267)
>     at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:307)
>     at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
>     at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
>     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
>     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>     at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:565)
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
>     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
>     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:399)
>     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>     at org.sakaiproject.jsf.util.SamigoJsfTool.dispatch(SamigoJsfTool.java:285)
>     at org.sakaiproject.jsf.util.JsfTool.doPost(JsfTool.java:256)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:679)
>     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:461)
>     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:364)
>     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
>     at org.sakaiproject.tool.impl.ActiveToolComponent$MyActiveTool.forward(ActiveToolComponent.java:479)
>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.forwardTool(SkinnableCharonPortal.java:1216)
>     at org.sakaiproject.portal.charon.handlers.ToolHandler.doTool(ToolHandler.java:188)
>     at org.sakaiproject.portal.charon.handlers.ToolHandler.doGet(ToolHandler.java:93)
>     at org.sakaiproject.portal.charon.handlers.ToolHandler.doPost(ToolHandler.java:70)
>     at org.sakaiproject.portal.charon.SkinnableCharonPortal.doPost(SkinnableCharonPortal.java:1059)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>     at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:616)
>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
>     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
>     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
>     at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>     at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>     at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>     at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>     at java.lang.Thread.run(Thread.java:595)
>
>
> user: 5aeb7537-38a9-4c01-a0bd-6bf12c24006c
>
> usage-session: 0f3bc11b-063b-412c-bb69-d08f12cb1c76
>
> time: Jan 29, 2010 12:25:34
>
>
>
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
> TO UNSUBSCRIBE: send email to
> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
> "unsubscribe"
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20100129/9ba71daa/attachment.html 


More information about the sakai-dev mailing list