Hello,
I use Orbeon Forms with Liferay 6.0.6 (6.0 GA4 March 2011) and tried upgrading from Orbeon nightly build 201010261225 to Orbeon 3.9 RC1. (I undeployed previous orbeon.war and dropped new orbeon.war to liferay deploy dir. I also tried with pristine Liferay bundle.) XForms user interface loads, but XForms controls do not respond. After clicking a random XForms control, I can see the following exception in Orbeon logs 2011-03-30 09:21:48,840 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) I already tried cleaning cookies and browser cache. To reproduce the bug, create a portlet with the following code Portlet with this doView method (view.xhtml is any XForms code): public void doView( RenderRequest renderRequest, RenderResponse renderResponse) throws IOException, PortletException { renderResponse.setContentType("text/html;charset=UTF-8"); PrintWriter out = renderResponse.getWriter(); try { File includeFile = new File(getPortletContext().getRealPath("/view.xhtml")); FileReader includeFileReader = new FileReader(includeFile); PrintWriter respWriter = out; int byteInt; while ((byteInt = includeFileReader.read()) != -1) { respWriter.write(byteInt); } } finally { out.close(); } } in portlet.xml <filter> <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> <filter-class>org.orbeon.oxf.portlet.OrbeonPortletXFormsFilter</filter-class> <lifecycle>RENDER_PHASE</lifecycle> <lifecycle>ACTION_PHASE</lifecycle> <lifecycle>RESOURCE_PHASE</lifecycle> </filter> <!-- Map the Orbeon portlet XForms filter --> <filter-mapping> <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> <portlet-name>docdetailsportlet</portlet-name> </filter-mapping> in web.xml: <servlet> <servlet-name>orbeon-trampoline-servlet</servlet-name> <servlet-class>org.orbeon.oxf.portlet.OrbeonTrampolineServlet</servlet-class> <init-param> <param-name>oxf.xforms.renderer.context</param-name> <param-value>/orbeon</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>orbeon-trampoline-servlet</servlet-name> <url-pattern>/xforms-trampoline</url-pattern> </servlet-mapping> Regards, Marek -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Administrator
|
Marek,
It seems like something we need to try to reproduce. I will add this to my list of tasks. -Erik On Wed, Mar 30, 2011 at 2:23 AM, Marek Pomocka <[hidden email]> wrote: > Hello, > I use Orbeon Forms with Liferay 6.0.6 (6.0 GA4 March 2011) and tried > upgrading from Orbeon nightly build 201010261225 to Orbeon 3.9 RC1. (I > undeployed previous orbeon.war and dropped new orbeon.war to liferay > deploy dir. I also tried with pristine Liferay bundle.) > > XForms user interface loads, but XForms controls do not respond. After > clicking a random XForms control, I can see the following exception in > Orbeon logs > > 2011-03-30 09:21:48,840 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) > > I already tried cleaning cookies and browser cache. > > To reproduce the bug, create a portlet with the following code > > Portlet with this doView method (view.xhtml is any XForms code): > > public void doView( > RenderRequest renderRequest, RenderResponse renderResponse) > throws IOException, PortletException { > renderResponse.setContentType("text/html;charset=UTF-8"); > PrintWriter out = renderResponse.getWriter(); > try { > File includeFile = new > File(getPortletContext().getRealPath("/view.xhtml")); > FileReader includeFileReader = new FileReader(includeFile); > PrintWriter respWriter = out; > int byteInt; > while ((byteInt = includeFileReader.read()) != -1) { > respWriter.write(byteInt); > } > } finally { > out.close(); > } > } > > in portlet.xml > > <filter> > <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> > <filter-class>org.orbeon.oxf.portlet.OrbeonPortletXFormsFilter</filter-class> > <lifecycle>RENDER_PHASE</lifecycle> > <lifecycle>ACTION_PHASE</lifecycle> > <lifecycle>RESOURCE_PHASE</lifecycle> > </filter> > > <!-- Map the Orbeon portlet XForms filter --> > <filter-mapping> > <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> > <portlet-name>docdetailsportlet</portlet-name> > </filter-mapping> > > in web.xml: > > <servlet> > <servlet-name>orbeon-trampoline-servlet</servlet-name> > <servlet-class>org.orbeon.oxf.portlet.OrbeonTrampolineServlet</servlet-class> > <init-param> > <param-name>oxf.xforms.renderer.context</param-name> > <param-value>/orbeon</param-value> > </init-param> > <load-on-startup>1</load-on-startup> > </servlet> > <servlet-mapping> > <servlet-name>orbeon-trampoline-servlet</servlet-name> > <url-pattern>/xforms-trampoline</url-pattern> > </servlet-mapping> > > Regards, > Marek > > > -- > You receive this message as a subscriber of the [hidden email] mailing list. > To unsubscribe: mailto:[hidden email] > For general help: mailto:[hidden email]?subject=help > OW2 mailing lists service home page: http://www.ow2.org/wws > > -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Thank you Erik.
Regards, Marek 2011/4/1 Erik Bruchez <[hidden email]>: > Marek, > > It seems like something we need to try to reproduce. I will add this > to my list of tasks. > > -Erik > > On Wed, Mar 30, 2011 at 2:23 AM, Marek Pomocka <[hidden email]> wrote: >> Hello, >> I use Orbeon Forms with Liferay 6.0.6 (6.0 GA4 March 2011) and tried >> upgrading from Orbeon nightly build 201010261225 to Orbeon 3.9 RC1. (I >> undeployed previous orbeon.war and dropped new orbeon.war to liferay >> deploy dir. I also tried with pristine Liferay bundle.) >> >> XForms user interface loads, but XForms controls do not respond. After >> clicking a random XForms control, I can see the following exception in >> Orbeon logs >> >> 2011-03-30 09:21:48,840 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) >> >> I already tried cleaning cookies and browser cache. >> >> To reproduce the bug, create a portlet with the following code >> >> Portlet with this doView method (view.xhtml is any XForms code): >> >> public void doView( >> RenderRequest renderRequest, RenderResponse renderResponse) >> throws IOException, PortletException { >> renderResponse.setContentType("text/html;charset=UTF-8"); >> PrintWriter out = renderResponse.getWriter(); >> try { >> File includeFile = new >> File(getPortletContext().getRealPath("/view.xhtml")); >> FileReader includeFileReader = new FileReader(includeFile); >> PrintWriter respWriter = out; >> int byteInt; >> while ((byteInt = includeFileReader.read()) != -1) { >> respWriter.write(byteInt); >> } >> } finally { >> out.close(); >> } >> } >> >> in portlet.xml >> >> <filter> >> <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> >> <filter-class>org.orbeon.oxf.portlet.OrbeonPortletXFormsFilter</filter-class> >> <lifecycle>RENDER_PHASE</lifecycle> >> <lifecycle>ACTION_PHASE</lifecycle> >> <lifecycle>RESOURCE_PHASE</lifecycle> >> </filter> >> >> <!-- Map the Orbeon portlet XForms filter --> >> <filter-mapping> >> <filter-name>orbeon-forms-portlet-xforms-filter</filter-name> >> <portlet-name>docdetailsportlet</portlet-name> >> </filter-mapping> >> >> in web.xml: >> >> <servlet> >> <servlet-name>orbeon-trampoline-servlet</servlet-name> >> <servlet-class>org.orbeon.oxf.portlet.OrbeonTrampolineServlet</servlet-class> >> <init-param> >> <param-name>oxf.xforms.renderer.context</param-name> >> <param-value>/orbeon</param-value> >> </init-param> >> <load-on-startup>1</load-on-startup> >> </servlet> >> <servlet-mapping> >> <servlet-name>orbeon-trampoline-servlet</servlet-name> >> <url-pattern>/xforms-trampoline</url-pattern> >> </servlet-mapping> >> >> Regards, >> Marek >> >> >> -- >> You receive this message as a subscriber of the [hidden email] mailing list. >> To unsubscribe: mailto:[hidden email] >> For general help: mailto:[hidden email]?subject=help >> OW2 mailing lists service home page: http://www.ow2.org/wws >> >> > > > -- > You receive this message as a subscriber of the [hidden email] mailing list. > To unsubscribe: mailto:[hidden email] > For general help: mailto:[hidden email]?subject=help > OW2 mailing lists service home page: http://www.ow2.org/wws > > -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Is there any progress on this topic? I have the same error (with a different stack trace) when migrating my application from 3.8 to 3.9 . I deleted all cookies and session data in tomcat, but when using form builder or any of my forms I get the following error:
2011-06-03 11:49:09,029 INFO ProcessorService - /xforms-server - Received request 2011-06-03 11:49:09,043 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.extractParameters(XFormsStateManager.java:402) at org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java:153) at org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.java:56) at org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.java:88) Any ideas? Perhaps it is a configuration issue? My configuration: https://gist.github.com/37155281b8d2b71eb487 |
Hi lacco,
Maybe that's too obvious, but did you try - Restarting tomcat? - Removing all Cookies and whatnot in the Browser and restarting it? I remember I had similar issues directly after the update which were caused by old data still being used by the browser. Also, you mention 3.9 RC in the subject - version 3.9 final has been released in the mean time. Sorry if this is a leftover from an old thread and you've long done this, I couldn't find it in my local archive of this mailing list (dating 50 days back). Kind regards, Ralf Jung Am Freitag 03 Juni 2011, um 12:10:19 schrieb lacco: > Is there any progress on this topic? I have the same error (with a > different stack trace) when migrating my application from 3.8 to 3.9 . I > deleted all cookies and session data in tomcat, but when using form > builder or any of my forms I get the following error: > > 2011-06-03 11:49:09,029 INFO ProcessorService - /xforms-server - Received > request > 2011-06-03 11:49:09,043 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.extractParameters(XFormsStat > eManager.java:402) at > org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java:153) > at > org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.java:5 > 6) at > org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.java:8 > 8) > > Any ideas? Perhaps it is a configuration issue? My configuration: > https://gist.github.com/37155281b8d2b71eb487 > > -- > View this message in context: > http://orbeon-forms-ops-users.24843.n4.nabble.com/Upgrading-to-Orbeon-Form > s-3-9-RC1-Session-has-expired-Unable-to-process-incoming-request-tp3417569p > 3570456.html Sent from the Orbeon Forms (ops-users) mailing list archive at > Nabble.com. -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
In fact, I did restart my tomcat several times and clear all browser data, I even used different browsers. This thread's title is outdated - I am on 3.9. Any other ideas?
|
On 3.06.2011 16:20, lacco wrote:
> In fact, I did restart my tomcat several times and clear all browser data, I > even used different browsers. This thread's title is outdated - I am on 3.9. > Any other ideas? > I recently had the same error in Weblogic and resolved it with Orbeon assistance (thanks Alex). As a result the instructions for workarounds for this error were added to wiki: http://wiki.orbeon.com/forms/doc/developer-guide/xforms-with-java-applications#TOC-Session-handling Wording of your error appears to be exactly the same, as in the code referenced from wiki. So I suppose, the same code is triggering your error and the same workarounds apply. I never had this error under Tomcat, so I don't know any easy solution, like there was for Weblogic. Regards, Tambet -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Administrator
|
In reply to this post by lacco
Iacco,
The original question was a specific issue with Liferay, so you must be hitting something different. -Erik On Fri, Jun 3, 2011 at 3:10 AM, lacco <[hidden email]> wrote: > Is there any progress on this topic? I have the same error (with a different > stack trace) when migrating my application from 3.8 to 3.9 . I deleted all > cookies and session data in tomcat, but when using form builder or any of my > forms I get the following error: > > 2011-06-03 11:49:09,029 INFO ProcessorService - /xforms-server - Received > request > 2011-06-03 11:49:09,043 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.extractParameters(XFormsStateManager.java:402) > at org.orbeon.oxf.xforms.processor.XFormsServer.doIt(XFormsServer.java:153) > at > org.orbeon.oxf.xforms.processor.XFormsServer.access$000(XFormsServer.java:56) > at > org.orbeon.oxf.xforms.processor.XFormsServer$1.readImpl(XFormsServer.java:88) > > Any ideas? Perhaps it is a configuration issue? My configuration: > https://gist.github.com/37155281b8d2b71eb487 > > -- > View this message in context: http://orbeon-forms-ops-users.24843.n4.nabble.com/Upgrading-to-Orbeon-Forms-3-9-RC1-Session-has-expired-Unable-to-process-incoming-request-tp3417569p3570456.html > Sent from the Orbeon Forms (ops-users) mailing list archive at Nabble.com. > > > -- > You receive this message as a subscriber of the [hidden email] mailing list. > To unsubscribe: mailto:[hidden email] > For general help: mailto:[hidden email]?subject=help > OW2 mailing lists service home page: http://www.ow2.org/wws > > -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
I think I have to do a (hopefully short) debugging session to understand the problem. Which branch/tag/commit do I have to checkout if I want the "Orbeon Forms 3.9.0 CE"-version which is downloadable from the website?
|
Administrator
|
Iacco,
https://github.com/orbeon/orbeon-forms/tree/tag-release-3.9.0-ce -Erik On Tue, Jun 7, 2011 at 5:42 AM, lacco <[hidden email]> wrote: > I think I have to do a (hopefully short) debugging session to understand the > problem. Which branch/tag/commit do I have to checkout if I want the "Orbeon > Forms 3.9.0 CE"-version which is downloadable from the website? > > -- > View this message in context: http://orbeon-forms-ops-users.24843.n4.nabble.com/Upgrading-to-Orbeon-Forms-3-9-RC1-Session-has-expired-Unable-to-process-incoming-request-tp3417569p3579460.html > Sent from the Orbeon Forms (ops-users) mailing list archive at Nabble.com. > > > -- > You receive this message as a subscriber of the [hidden email] mailing list. > To unsubscribe: mailto:[hidden email] > For general help: mailto:[hidden email]?subject=help > OW2 mailing lists service home page: http://www.ow2.org/wws > > -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
I finally found the problem, yay! With orbeon 3.9, the client state handling has been removed so that I had to care about the JSESSIONID. Now, all works, thx!
|
Issue is fixed. Great. But when do we get the fix?
|
Administrator
|
lxn,
What lacco means is that starting with 3.9, Orbeon Forms checks the JSESSIONID. The JSESSIONID sent to the browser when the form was generated must be the same as the one coming back later with the Ajax requests. This is done to deal with the following situation: user has 2 windows (or tabs) open, logs out from the app in the first window; then later someone else comes and clicks on the second window which was left untouched; we wouldn't want those actions (Ajax requests) to succeed, as the user logged out. Alex
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
Free forum by Nabble | Edit this page |