我们有一个 PHP 应用程序,它在后台使用 Orbeon 向用户显示表单,最近我们不得不为 8080 端口被阻塞的人提出解决方案,因此我们安装了 jk_mod 以在 vhost 文件中为 Tomcat webapps 提供服务:
JkMount /orbeon/* geronimo_ajp13
JkMount /ops/* geronimo_ajp13
用户可以打开 Orbeon 文档,但一旦他们执行任何 Orbeon 操作(单击表格、提交表单等),他们就会收到以下 Orbeon 错误:
这是触发 Orbeon 操作时我的 Firebug 响应(200 ok):
这是触发的 orbeon.log 错误:
2012-06-21 12:19:21,796 INFO ProcessorService - /xforms-server - Received request
2012-06-21 12:19:21,866 ERROR ProcessorService - Exception at line 55, column 65 of oxf:/ops/xforms/xforms-server.xpl (reading processor output: name='response', id='x
forms-response')
java.lang.NullPointerException
at org.orbeon.oxf.xforms.state.XFormsStateManager.checkUUIDInSession(XFormsStateManager.java:92)
at org.orbeon.oxf.xforms.state.XFormsStateManager.findOrRestoreDocument(XFormsStateManager.java:277)
at org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java:152)
at org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.java:56)
at org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.java:88)
at org.orbeon.oxf.processor.impl.ProcessorOutputImpl$TopLevelOutputFilter.read(ProcessorOutputImpl.java:263)
at org.orbeon.oxf.processor.impl.ProcessorOutputImpl.read(ProcessorOutputImpl.java:406)
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:260)
at org.orbeon.oxf.processor.pipeline.TeeProcessor$TeeProcessorOutputImpl.readImpl(TeeProcessor.java:89)
at org.orbeon.oxf.processor.impl.ProcessorOutputImpl$TopLevelOutputFilter.read(ProcessorOutputImpl.java:263)
at org.orbeon.oxf.processor.impl.ProcessorOutputImpl.read(ProcessorOutputImpl.java:406)
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:260)
at org.orbeon.oxf.processor.ProcessorImpl.readInputAsTinyTree(ProcessorImpl.java:286)
at org.orbeon.oxf.processor.ProcessorImpl$3.read(ProcessorImpl.java:315)
at org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl.java:365)
at org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsObject(ProcessorImpl.java:330)
at org.orbeon.oxf.processor.ProcessorImpl.readCacheInputAsTinyTree(ProcessorImpl.java:313)
at org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(ConcreteChooseProcessor.java:186)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor$5.run(PipelineProcessor.java:661)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:726)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:658)
at org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(ConcreteChooseProcessor.java:248)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor$5.run(PipelineProcessor.java:661)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:726)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:658)
at org.orbeon.oxf.pipeline.InitUtils.runProcessor(InitUtils.java:89)
at org.orbeon.oxf.webapp.ProcessorService.service(ProcessorService.java:97)
at org.orbeon.oxf.servlet.OrbeonServletDelegate.service(OrbeonServletDelegate.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:636)
有人知道发生了什么吗?