Calling initForJSUsage on a destroyed form

Discuss all problems you have with Servoy here. It might help to mention the Servoy version and Operating System version you are using

Calling initForJSUsage on a destroyed form

Postby rossent » Thu Nov 21, 2013 1:10 pm

Hi Servoy,

What is causing the error:

Code: Select all
Calling initForJSUsage on a destroyed form: FormController[form: im_ItemAdditionalFeeLink_List,destroyed:true]


We see this only in the Server Log but suspect that it has implications on other parts of the system. Looking at the call stack in the Server Log it appears that the error is thrown by code & context which have nothing to do with the specified form. It appears that this is somehow related to using forms['some_other_form_name'] where Servoy internally is checking something in the forms.

Any help on this will be greatly appreciated.
Rossen Totev
Argos Software
rossent
 
Posts: 288
Joined: Wed Dec 31, 2008 2:03 pm

Re: Calling initForJSUsage on a destroyed form

Postby jcompagner » Mon Nov 25, 2013 1:12 pm

if you have a reproducable case where we can see that happening then please make a case.
Do you see that in a server or in a developer?
On a server that should just not really be happening. A destroyed form shouldn't be referenced anywhere. I think you also have a full stacktrace after that message?
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8833
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Calling initForJSUsage on a destroyed form

Postby rossent » Mon Nov 25, 2013 3:14 pm

jcompagner wrote:if you have a reproducable case where we can see that happening then please make a case.
Do you see that in a server or in a developer?
On a server that should just not really be happening. A destroyed form shouldn't be referenced anywhere. I think you also have a full stacktrace after that message?


This is happening only on Server and never in Developer, and actually we are getting it quite often. This has been happening for quite some time now, even on the latest Servoy 7.3.0 i2 - build 2020
Below is the stack trace from the log:

Code: Select all
2013-11-20 08:00:27,560 ERROR [http-8080-11] com.servoy.j2db.util.Debug - Calling initForJSUsage on a destroyed form: FormController[form: so_Transaction_Manage,destroyed:true] [93695396-C045-41D4-B7FC-D130CF4FEF63 argos_abelisk_client]
java.lang.RuntimeException
   at com.servoy.j2db.FormController.initForJSUsage(FormController.java:5127)
   at com.servoy.j2db.FormController.getFormScope(FormController.java:5515)
   at com.servoy.j2db.server.headlessclient.dataui.RecordItemModel.getValue(RecordItemModel.java:367)
   at com.servoy.j2db.server.headlessclient.dataui.RecordItemModel$WrapModel.getObject(RecordItemModel.java:143)
   at org.apache.wicket.Component.getDefaultModelObject(Component.java:1729)
   at com.servoy.j2db.server.headlessclient.dataui.WebDataField.getValueObject(WebDataField.java:939)
   at com.servoy.j2db.dataprocessing.LookupListChangeListener.changed(LookupListChangeListener.java:41)
   at com.servoy.j2db.dataprocessing.LookupListChangeListener.contentsChanged(LookupListChangeListener.java:70)
   at com.servoy.j2db.dataprocessing.LookupValueList$TableChangeListener.tableChange(LookupValueList.java:153)
   at com.servoy.j2db.dataprocessing.FoundSetManager$3.run(FoundSetManager.java:1517)
   at com.servoy.j2db.dataprocessing.FoundSetManager.fireTableEvent(FoundSetManager.java:1523)
   at com.servoy.j2db.dataprocessing.FoundSetManager.notifyChange(FoundSetManager.java:1502)
   at com.servoy.j2db.dataprocessing.RowManager.fireNotifyChange(RowManager.java:579)
   at com.servoy.j2db.dataprocessing.RowManager.deleteRow(RowManager.java:1012)
   at com.servoy.j2db.dataprocessing.FoundSet.deleteRecord(FoundSet.java:3905)
   at com.servoy.j2db.dataprocessing.FoundSet.deleteRecord(FoundSet.java:3792)
   at com.servoy.j2db.FormController.deleteRecordImpl(FormController.java:3466)
   at com.servoy.j2db.FormController.access$6(FormController.java:3453)
   at com.servoy.j2db.FormController$JSForm.js_deleteRecord(FormController.java:1586)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:158)
   at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:312)
   at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1774)
   at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:837)
   at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:158)
   at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:406)
   at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3204)
   at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:156)
   at com.servoy.j2db.scripting.ScriptEngine.executeFunction(ScriptEngine.java:626)
   at com.servoy.j2db.plugins.ClientPluginAccessProvider$MethodExecutor.run(ClientPluginAccessProvider.java:551)
   at com.servoy.j2db.server.headlessclient.EventsRunnable.run(EventsRunnable.java:58)
   at com.servoy.j2db.server.headlessclient.WebClient.executeEvents(WebClient.java:552)
   at com.servoy.j2db.server.headlessclient.WebClient.onBeginRequest(WebClient.java:1075)
   at com.servoy.j2db.server.headlessclient.ServoyRequestCycle.onBeginRequest(ServoyRequestCycle.java:83)
   at org.apache.wicket.RequestCycle.prepare(RequestCycle.java:1269)
   at org.apache.wicket.RequestCycle.step(RequestCycle.java:1333)
   at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1465)
   at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
   at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
   at com.servoy.j2db.server.servlets.Zt.doGet(Zt.java:13)
   at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
   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:103)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
   at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
   at java.lang.Thread.run(Unknown Source)
Rossen Totev
Argos Software
rossent
 
Posts: 288
Joined: Wed Dec 31, 2008 2:03 pm

Re: Calling initForJSUsage on a destroyed form

Postby jcompagner » Mon Nov 25, 2013 5:29 pm

can you make a case with that stack trace.
It seems that the WebDataField doesn't release a listener when it it destroyed. (at least it should be destroyed)
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8833
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet

Re: Calling initForJSUsage on a destroyed form

Postby dfernandez » Tue Feb 11, 2014 8:39 pm

Hi,

We have the same errors messages in a new fresh 6.0.10 server installation.
dfernandez
 
Posts: 87
Joined: Wed Feb 29, 2012 4:04 pm

Re: Calling initForJSUsage on a destroyed form

Postby jcompagner » Wed Feb 12, 2014 1:53 pm

that looks a lot like one of the stacks reported here: https://support.servoy.com/browse/SVY-5583

i tweaked it for 7.4

The problem is that for these things we need a completely reproduce able case else it is impossible for us to find what is really happening.
It just reports that it is in a state that shouldn't happen, (in developer it could but never in an actual client)

We do already try fix the problem the problem at the moment this happens, so it is not a big problem for your solution but it would be nice to know how it exactly happens.
Johan Compagner
Servoy
User avatar
jcompagner
 
Posts: 8833
Joined: Tue May 27, 2003 7:26 pm
Location: The Internet


Return to Discuss possible Issues and Bugs

Who is online

Users browsing this forum: No registered users and 8 guests