我正在尝试将 Orbeon Forms 3.91 PE 与 Liferay 6.0.6 集成。我已经安装了 Liferay,部署了 orbeon.war,orbeon-proxy-portlet.war,复制了许可文件并创建了 file-local.xml 属性(如 wiki 中所述)。
使用表单生成器,我创建了一个表单(默认内容(一个输入字段))。
接下来,我在 Liferay 中添加了两个包含 portlets 表单的页面: - 一个运行器带有我的表单 - 第二个表单指的是“联系人”表单(默认表单)。
与我的表单集成后(例如尝试保存表单)我收到错误:
ERROR ProcessorService - Exception at line 55, column 65 of oxf:/ops/xforms/xforms-server.xpl (reading processor output: name='response', id='xforms-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:664)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:729)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:661)
at org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(ConcreteChooseProcessor.java:248)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor$5.run(PipelineProcessor.java:664)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:729)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:661)
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.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
它看起来像 AJAX 错误和问题会话管理。
移动以形成“联系人”并与之交互后,我收到错误消息:
[file:/C:/liferay-portal-6.0.6/tomcat-6.0.29/temp/upload__1b3fa11c_1388fbc4805__7ff4_00000095.tmp|null|null|000|true|false|false|false|[false|true|false|false|false|false]]
2012-07-16 14:47:20,240 ERROR ProcessorService - Exception at line 55, column 65 of oxf:/ops/xforms/xforms-server.xpl (reading processor output: name='response', id='xforms-response')
org.orbeon.oxf.common.OXFException: Session has expired. Unable to process incoming request.
at org.orbeon.oxf.xforms.state.XFormsStateManager.checkUUIDInSession(XFormsStateManager.java:94)
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:664)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:729)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:661)
at org.orbeon.oxf.processor.pipeline.choose.ConcreteChooseProcessor.start(ConcreteChooseProcessor.java:248)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor$5.run(PipelineProcessor.java:664)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.executeChildren(PipelineProcessor.java:729)
at org.orbeon.oxf.processor.pipeline.PipelineProcessor.start(PipelineProcessor.java:661)
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.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
从那时起,这个错误也出现在我的表单上(第一个)。
根据 Firebug 标头包含 JSESSIONID(我无法附加图像
Response:
Cache-Control private, max-age=0
Content-Length 2299
Content-Type application/xml;charset=utf-8
Date Mon, 16 Jul 2012 14:47:20 GMT
Expires Mon, 16 Jul 2012 14:47:20 GMT
Last-Modified Mon, 16 Jul 2012 14:47:20 GMT
Server Apache-Coyote/1.1
Request:
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language pl,en-us;q=0.7,en;q=0.3
Connection keep-alive
Content-Length 409
Content-Type application/xml; charset=UTF-8
Cookie JSESSIONID=BD09C08F33458793AB9DB94057DF7BDF; GUEST_LANGUAGE_ID=en_US; COOKIE_SUPPORT=true
Host localhost:8080
Referer http://localhost:8080/web/guest/contact
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0.1
X-Requested-With XMLHttpRequest
)
我该如何解决?(来自 localhost: 8080/orbeon 的两种形式都可以正常工作)。