Hi,
I'm having a vague problem with my form, I can't figure out what the problem is.
The issue seems to be that when a user is interacting with the first page of the form, the form suddenly starts over, creating a new form session and thereby executing the before form scripts again, which isn't desirable! Also I've done an export of my project, and used that to see if I use form.gotoForm() anywhere that may trigger the issue, but that's not the case.The weird part is that this doesn't happen every time that someone uses the form, which makes it very hard for me to figure out if it is something in the code, or maybe something else. I've added extra logging but it hasn't made the issue clear.
Can there be something else that forces the form to restart? Maybe to much calls to server side scripts?
Form session issue?
Moderators: Jon, Steve, Ian, Dave
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
Do you know if the ebz parameter in the URL changes? - this will cause the form to re-initialise. Or any other manipulation of the URL by the user might do it. The system uses the ebz parameter to load the state of the form and if it changes the previous state is lost. Other obvious candidates are call form, go to form, go to url.
0 x
-
- Ebase User
- Posts: 649
- Joined: Mon Dec 09, 2013 6:37 pm
-
- Ebase User
- Posts: 11
- Joined: Sun Oct 11, 2015 12:56 pm
@Segi: I mostly use server side javascript, and very little client side javascript. The client side code i use would/shouldn't result in a reload of the form.
@Jon: When logging happens during the execution of the form, the HTTP session and corresponding form session are also logged. That's how i discovered that in some cases the form suddenly re-initialises. The HTTP-session stays the same, and the form session is suddenly different. I'm trying to reproduce the problem, so that i have a better understanding of when it happens.
@Jon: When logging happens during the execution of the form, the HTTP session and corresponding form session are also logged. That's how i discovered that in some cases the form suddenly re-initialises. The HTTP-session stays the same, and the form session is suddenly different. I'm trying to reproduce the problem, so that i have a better understanding of when it happens.
0 x
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
OK, for your interest, if you add the following Java flag to the server start up, the system will log form session activity - creation, reuse and deletion:
Might help to figure out what's happening.
Code: Select all
-DsessionDebug=true
0 x
-
- Ebase User
- Posts: 11
- Joined: Sun Oct 11, 2015 12:56 pm
Hi, i'm back again. I'm still having these troubles. I have figured out that before the form spontaneously creates a new form session, this (not so helpful) error is shown in catalin.out:
Also, this error always occurs when the user is still on page 1. I hope someone can help!
Code: Select all
Tue Dec 08 09:17:10: Unexpected error occurred - see server log
Tue Dec 08 09:17:10: ERROR Unexpected error occurred
0 x
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
-
- Ebase User
- Posts: 11
- Joined: Sun Oct 11, 2015 12:56 pm
Thank you for your quick response. I found It! This stacktrace is shown after the mentioned error
Code: Select all
Tue Dec 08 10:02:32: Unexpected error occurred - see server log
Tue Dec 08 10:02:32: ERROR Unexpected error occurred
--
at com.ebasetech.ufs.runtime.runtimeControls.fields.FieldRuntimeControl$FieldValidationExecutable$1.performAction(FieldRuntimeControl.java:407)
at com.ebasetech.ufs.runtime.runtimeControls.repeating.TableRowSetter.execute(TableRowSetter.java:30)
at com.ebasetech.ufs.runtime.runtimeControls.fields.FieldRuntimeControl$FieldValidationExecutable.execute(FieldRuntimeControl.java:412)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.RuntimePage$ValidationPlanExecutable.execute(RuntimePage.java:232)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.runtimeControls.fields.ImmediateValidationRequestAction$ValidationExecutable.execute(ImmediateValidationRequestAction.java:128)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:436)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:405)
at com.ebasetech.ufs.runtime.Request._execute(Request.java:343)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:308)
at formservlets.FormProcessingUtil.executeRequest(FormProcessingUtil.java:480)
at formservlets.EbaseAjaxServlet.process(EbaseAjaxServlet.java:71)
at formservlets.EbaseAjaxServlet.doPost(EbaseAjaxServlet.java:41)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at formservlets.EbaseFilter.processRequest(EbaseFilter.java:192)
at formservlets.EbaseFilter.performFilter(EbaseFilter.java:141)
at formservlets.EbaseFilter.doFilter(EbaseFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
0 x
-
- Ebase User
- Posts: 11
- Joined: Sun Oct 11, 2015 12:56 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
Who is online
Users browsing this forum: No registered users and 24 guests