Sometimes when we use:
- Code: Select all
plugins.rawSQL.notifyDataChange(realDBConnName, dbViewName, pkDS, SQL_ACTION_TYPES.UPDATE_ACTION);
to notify the clients that data in a database view is changed due to changes in some of the underlying tables, the result is false.
After that we get the error below in the Servoy server log:
- Code: Select all
ERROR com.servoy.j2db.util.Debug Throwable
java.lang.IllegalArgumentException: Value list does not match key list in set condition
at com.servoy.base.query.BaseSetCondition.validateValues(BaseSetCondition.java:107)
at com.servoy.j2db.query.SetCondition.acceptVisitor(SetCondition.java:103)
at com.servoy.j2db.query.AbstractBaseQuery.acceptVisitor(AbstractBaseQuery.java:151)
at com.servoy.j2db.query.AbstractBaseQuery.acceptVisitor(AbstractBaseQuery.java:127)
at com.servoy.j2db.query.AndOrCondition.acceptVisitor(AndOrCondition.java:50)
at com.servoy.j2db.query.AbstractBaseQuery.acceptVisitor(AbstractBaseQuery.java:151)
at com.servoy.j2db.query.AbstractBaseQuery.acceptVisitor(AbstractBaseQuery.java:137)
at com.servoy.j2db.query.QuerySelect.acceptVisitor(QuerySelect.java:661)
at com.servoy.j2db.query.AbstractBaseQuery.setPlaceholderValue(AbstractBaseQuery.java:227)
at com.servoy.j2db.query.AbstractBaseQuery.setPlaceholderValue(AbstractBaseQuery.java:221)
at com.servoy.j2db.dataprocessing.RowManager.getRows(RowManager.java:498)
at com.servoy.j2db.dataprocessing.FoundSetManager.notifyDataChange(FoundSetManager.java:2121)
at com.servoy.j2db.dataprocessing.FoundSetManager.notifyDataChange(FoundSetManager.java:197)
at com.servoy.extensions.plugins.rawSQL.RawSQLProvider.js_notifyDataChange(RawSQLProvider.java:319)
at sun.reflect.GeneratedMethodAccessor501.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 com.servoy.j2db.scripting.ScriptEngine.executeFunction(ScriptEngine.java:624)
at com.servoy.j2db.dataprocessing.FoundSet.executeFoundsetTriggerInternal(FoundSet.java:3995)
at com.servoy.j2db.dataprocessing.FoundSet.executeFoundsetTrigger(FoundSet.java:3953)
at com.servoy.j2db.dataprocessing.FoundSet.deleteRecord(FoundSet.java:3911)
at com.servoy.j2db.dataprocessing.FoundSet.deleteRecord(FoundSet.java:3797)
at com.servoy.j2db.dataprocessing.FoundSet.deleteRecord(FoundSet.java:2439)
at com.servoy.j2db.dataprocessing.FoundSet.js_deleteRecord(FoundSet.java:2415)
at sun.reflect.GeneratedMethodAccessor580.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:624)
at com.servoy.j2db.FormController.executeFunction(FormController.java:4990)
at com.servoy.j2db.FormController.executeFunction(FormController.java:4872)
at com.servoy.j2db.FormController.executeFunction(FormController.java:4739)
at com.servoy.j2db.FormController$ScriptExecuter.executeFunction(FormController.java:4584)
at com.servoy.j2db.ui.BaseEventExecutor.fireEventCommand(BaseEventExecutor.java:276)
at com.servoy.j2db.ui.BaseEventExecutor.fireActionCommand(BaseEventExecutor.java:218)
at com.servoy.j2db.server.headlessclient.dataui.WebEventExecutor.handleEvent(WebEventExecutor.java:463)
at com.servoy.j2db.server.headlessclient.dataui.WebEventExecutor.onEvent(WebEventExecutor.java:404)
at com.servoy.j2db.server.headlessclient.dataui.WebEventExecutor$2.onEvent(WebEventExecutor.java:184)
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.Zt.doGet(Zt.java:10)
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)
What could be causing this error? The notification is invoked after successful save of data in the database.