Hello,
I’m using the latest version of the old framework, and I’m getting this exception when trying to enter find mode on the onRecordSelection of a form:
2012-09-04 10:26:51,722 ERROR [http-8080-1] com.servoy.j2db.util.Debug - [2A535EFE-A76F-41D9-9A5F-5C864BB3C36E HR]
2012-09-04 10:26:51,722 ERROR [http-8080-1] com.servoy.j2db.util.Debug - Throwable [2A535EFE-A76F-41D9-9A5F-5C864BB3C36E HR]
org.mozilla.javascript.WrappedException: Wrapped java.lang.NullPointerException (C:\servoy_workspace_hr_6.0.6\HR_ditta\forms\inail_datigenerali_tab.js#65)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1828)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:199)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:367)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3666)
at script.filterData(C:\servoy_workspace_hr_6.0.6\HR_ditta\forms\inail_datigenerali_tab.js:65)
at script.onRecordSelection(C:\servoy_workspace_hr_6.0.6\HR_shared\forms\storico_base.js:194)
at script.onRecordSelection(C:\servoy_workspace_hr_6.0.6\HR_ditta\forms\inail_datigenerali_tab.js:24)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2680)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:166)
at com.servoy.j2db.scripting.ScriptEngine.executeFunction(ScriptEngine.java:537)
at com.servoy.j2db.debug.RemoteDebugScriptEngine.executeFunction(RemoteDebugScriptEngine.java:392)
at com.servoy.j2db.FormController.executeFunction(FormController.java:4072)
at com.servoy.j2db.FormController.executeFormMethod(FormController.java:4394)
at com.servoy.j2db.FormController.executeOnRecordSelect(FormController.java:4332)
at com.servoy.j2db.FormController.refreshAllPartRenderers(FormController.java:2239)
at com.servoy.j2db.FormController.valueChanged(FormController.java:2311)
at com.servoy.j2db.FormController.notifyVisible(FormController.java:3086)
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel.notifyVisible(WebTabPanel.java:634)
at com.servoy.j2db.dataprocessing.DataAdapterList.notifyVisible(DataAdapterList.java:514)
at com.servoy.j2db.server.headlessclient.dataui.WebDataRenderer.notifyVisible(WebDataRenderer.java:297)
at com.servoy.j2db.FormController.notifyVisible(FormController.java:3155)
at com.servoy.j2db.server.headlessclient.dataui.WebTabFormLookup.notifyVisible(WebTabFormLookup.java:179)
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel.setCurrentForm(WebTabPanel.java:472)
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel.notifyVisible(WebTabPanel.java:607)
at com.servoy.j2db.dataprocessing.DataAdapterList.notifyVisible(DataAdapterList.java:514)
at com.servoy.j2db.server.headlessclient.dataui.WebDataRenderer.notifyVisible(WebDataRenderer.java:297)
at com.servoy.j2db.FormController.notifyVisible(FormController.java:3155)
at com.servoy.j2db.server.headlessclient.dataui.WebSplitPane.notifyVisibleForm(WebSplitPane.java:402)
at com.servoy.j2db.server.headlessclient.dataui.WebSplitPane.notifyVisible(WebSplitPane.java:367)
at com.servoy.j2db.dataprocessing.DataAdapterList.notifyVisible(DataAdapterList.java:514)
at com.servoy.j2db.server.headlessclient.dataui.WebDataRenderer.notifyVisible(WebDataRenderer.java:297)
at com.servoy.j2db.FormController.notifyVisible(FormController.java:3155)
at com.servoy.j2db.server.headlessclient.dataui.WebSplitPane.notifyVisibleForm(WebSplitPane.java:402)
at com.servoy.j2db.server.headlessclient.dataui.WebSplitPane.setForm(WebSplitPane.java:933)
at com.servoy.j2db.ui.scripting.RuntimeSplitPane.js_setRightForm(RuntimeSplitPane.java:93)
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:179)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:367)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3666)
at script.svy_nav_showForm(C:\servoy_workspace_hr_6.0.6\svy_nav_navigation\globals.js:1993)
at script.svy_nav_tree_node_selected(C:\servoy_workspace_hr_6.0.6\svy_nav_navigation\globals.js:2224)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2680)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:166)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:387)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3134)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:165)
at com.servoy.j2db.scripting.ScriptEngine.executeFunction(ScriptEngine.java:537)
at com.servoy.j2db.debug.RemoteDebugScriptEngine.executeFunction(RemoteDebugScriptEngine.java:392)
at com.servoy.j2db.plugins.ClientPluginAccessProvider$MethodExecutor.run(ClientPluginAccessProvider.java:514)
at com.servoy.j2db.server.headlessclient.WebClient.invokeAndWait(WebClient.java:555)
at com.servoy.j2db.plugins.ClientPluginAccessProvider.executeMethod(ClientPluginAccessProvider.java:413)
at com.servoy.j2db.server.headlessclient.WebClientPluginAccessProvider.executeMethod(WebClientPluginAccessProvider.java:99)
at com.servoy.j2db.scripting.FunctionDefinition.exec(FunctionDefinition.java:218)
at com.servoy.j2db.scripting.FunctionDefinition.execute(FunctionDefinition.java:182)
at com.servoy.extensions.beans.dbtreeview.MouseAction.execute(MouseAction.java:71)
at com.servoy.extensions.beans.dbtreeview.MouseEventBehavior.onEvent(MouseEventBehavior.java:49)
at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)
at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:312)
at org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:157)
at org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1279)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1358)
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.Zl.doGet(Zl.java:8)
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:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:554)
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:859)
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(Unknown Source)
Caused by: java.lang.NullPointerException
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel.showFoundSet(WebTabPanel.java:704)
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel.valueChanged(WebTabPanel.java:1343)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at com.servoy.j2db.util.model.AlwaysRowSelectedSelectionModel.fireValueChanged(AlwaysRowSelectedSelectionModel.java:236)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.removeIndexInterval(Unknown Source)
at com.servoy.j2db.util.model.AlwaysRowSelectedSelectionModel.removeIndexInterval(AlwaysRowSelectedSelectionModel.java:134)
at com.servoy.j2db.util.model.AlwaysRowSelectedSelectionModel.intervalRemoved(AlwaysRowSelectedSelectionModel.java:284)
at com.servoy.j2db.dataprocessing.TableAndListEventDelegate.fireIntervalRemoved(TableAndListEventDelegate.java:135)
at com.servoy.j2db.dataprocessing.TableAndListEventDelegate$1.run(TableAndListEventDelegate.java:158)
at com.servoy.j2db.dataprocessing.TableAndListEventDelegate.fireTableAndListEvent(TableAndListEventDelegate.java:180)
at com.servoy.j2db.dataprocessing.SwingRelatedFoundSet.fireFoundSetEvent(SwingRelatedFoundSet.java:150)
at com.servoy.j2db.dataprocessing.FoundSet.fireDifference(FoundSet.java:3938)
at com.servoy.j2db.dataprocessing.FoundSet.setFindMode(FoundSet.java:3838)
at com.servoy.j2db.dataprocessing.FoundSet.js_find(FoundSet.java:732)
at sun.reflect.GeneratedMethodAccessor287.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:179)
... 78 more
What’s weird is that if I just execute the find within the developer’s console everything goes just fine…
EDIT: this only happens in webclient
EDIT2: the problem seems to be related to the fact that I directly use the related foundset to perform the find, so that some update event is triggered or something…unfortunately I can’t duplicate or apply foundset filters, since related foundsets cannot be changed in any way apart from searching them…