[Building Sakai] WebCT import: "Content is not allowed in prolog"

will at serensoft.com will at serensoft.com
Fri Feb 12 07:20:18 PST 2010


There's an imsmanifest.xml which did check out okay tho. (Thanks Noah
for the http://validator.w3.org/ reminder.) There's no whitespace or
any text at all between or before <> tags...

Anybody have any ideas?


On Wed, Feb 10, 2010 at 12:59 PM, will at serensoft.com <will at serensoft.com> wrote:
> Three years later and we've got a similar problem :)
>
> The ZIP/QTI file is from WebCT Vista, and it's throwing the "Content is not
> allowed in prolog" error message in the logs -- in the interface it just
> says "There was an error importing this assessment. Ensure that the file is
> correctly formatted IMS QTI. Error
> details:org.sakaiproject.tool.assessment.services.qti.QTIServiceException:
> java.lang.NullPointerException"
>
> Is there a quick xml-tweak that would make this all play nice?
>
>
> [Fatal Error] :1:1: Content is not allowed in prolog.
> 2010-02-10 13:52:56,239 ERROR TP-Processor7
> org.sakaiproject.tool.assessment.qti.util.XmlUtil - Content is not allowed
> in prolog.
> org.xml.sax.SAXParseException: Content is not allowed in prolog.
>         at
> com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
>         at
> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
>         at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:98)
>         at
> org.sakaiproject.tool.assessment.qti.util.XmlUtil.readDocument(XmlUtil.java:326)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.createImportedAssessment(XMLImportBean.java:290)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.processFile(XMLImportBean.java:224)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.importFromQti(XMLImportBean.java:118)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.importAssessment(XMLImportBean.java:107)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
>         at javax.faces.component.UIInput.broadcast(UIInput.java:492)
>         at
> javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:249)
>         at
> javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:343)
>         at
> com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:78)
>         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 com.corejsf.UploadFilter.doFilter(UploadFilter.java:139)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         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:475)
>         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.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>         at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>         at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
>         at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>         at java.lang.Thread.run(Thread.java:595)
> 2010-02-10 13:52:56,245 ERROR TP-Processor7
> org.sakaiproject.tool.assessment.qti.helper.AuthoringHelper -
> java.lang.NullPointerException
>         at
> org.sakaiproject.tool.assessment.qti.util.XmlStringBuffer.parseContent(XmlStringBuffer.java:268)
>         at
> org.sakaiproject.tool.assessment.qti.util.XmlStringBuffer.getDocument(XmlStringBuffer.java:169)
>         at
> org.sakaiproject.tool.assessment.qti.helper.ExtractionHelper.map(ExtractionHelper.java:247)
>         at
> org.sakaiproject.tool.assessment.qti.helper.ExtractionHelper.mapAssessment(ExtractionHelper.java:203)
>         at
> org.sakaiproject.tool.assessment.qti.helper.AuthoringHelper.createImportedAssessment(AuthoringHelper.java:489)
>         at
> org.sakaiproject.tool.assessment.qti.helper.AuthoringHelper.createImportedAssessment(AuthoringHelper.java:466)
>         at
> org.sakaiproject.tool.assessment.services.qti.QTIService.createImportedAssessment(QTIService.java:95)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.createImportedAssessment(XMLImportBean.java:296)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.processFile(XMLImportBean.java:224)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.importFromQti(XMLImportBean.java:118)
>         at
> org.sakaiproject.tool.assessment.ui.bean.qti.XMLImportBean.importAssessment(XMLImportBean.java:107)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
>         at javax.faces.component.UIInput.broadcast(UIInput.java:492)
>         at
> javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:249)
>         at
> javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:343)
>         at
> com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:78)
>         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 com.corejsf.UploadFilter.doFilter(UploadFilter.java:139)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         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:475)
>         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.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
>         at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
>         at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
>         at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
>         at java.lang.Thread.run(Thread.java:595)
>
>
> On Fri, Jan 19, 2007 at 1:38 PM, Ian Goh <ian.goh at jhu.edu> wrote:
>>
>> Hi All,
>>
>> I downloaded, configured and built the  import/webct for Sakai 2.3.
>>
>> Import from File seems to go through all the motions of importing a
>> content package .zip, and says the import is complete.  However nothing ever
>> shows up in Resources.
>> Here's what I see in catalina.out:
>>
>> When I pick the content .zip file:
>>
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:63: White spaces are required between publicId and
>> systemId.
>> [Fatal Error] :1:24: Open quote is expected for attribute "name"
>> associated with an  element type  "meta".
>> [Fatal Error] :1:24: Open quote is expected for attribute "name"
>> associated with an  element type  "meta".
>> [Fatal Error] :1:24: Open quote is expected for attribute "name"
>> associated with an  element type  "meta".
>> [Fatal Error] :1:24: Open quote is expected for attribute "name"
>> associated with an  element type  "meta".
>> [Fatal Error] :1:24: Open quote is expected for attribute "name"
>> associated with an  element type  "meta".
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> [Fatal Error] :1:1: Content is not allowed in prolog.
>> INFO: Getting import items from manifest. (2007-01-19 14:31:45,405
>> http-8080-Processor23_org.sakaiproject.cheftool.VelocityPortletPaneledAction)
>>
>> I see the correct items that are in my manifest organization. I choose one
>> item that I know is a file.
>>
>> When I click on copy materials and finish:
>>
>> INFO: doSaveMtrlSite() about to import 1 top level items (2007-01-19
>> 14:32:06,267
>> http-8080-Processor23_org.sakaiproject.cheftool.VelocityPortletPaneledAction)
>> INFO: doSaveMtrlSite() the importDataSource is
>> org.sakaiproject.importer.impl.BasicImportDataSource (2007-01-19
>> 14:32:06,267
>> http-8080-Processor23_org.sakaiproject.cheftool.VelocityPortletPaneledAction)
>>
>> And it's complete. But nothing in Resources.
>>
>> - Ian
>>
>> ----------------------
>> This automatic notification message was sent by Sakai Collab
>> (https://collab.sakaiproject.org/portal) from the DG: Development (a.k.a.
>> sakai-dev) site.
>> You can modify how you receive notifications at My Workspace >
>> Preferences.
>>
>
>
>
> --
> will trillich
> "The ancestor of every action is a thought" -- Ralph Waldo Emerson
>



-- 
will trillich
"The ancestor of every action is a thought" -- Ralph Waldo Emerson


More information about the sakai-dev mailing list