Hi,
I have a production server running 7.4.5 using a standard application server deployment model that has been running perfectly happy for some months. I have now set up a test server to prepare for our move to version 8 and am trying to do a WAR deployment. I have set up the server using Tomcat V8.0.30 and Oracle Java V1.8.0_66 (the same version as I am using for my development) and I am getting an error in the log which does not appear in production or development. The error is related to using a UUID variable in a QBSelect comparison (comparing to a column flagged as UUID) and is as follows:
2016-01-01 21:20 http-nio-8080-exec-13 ERROR com.servoy.j2db.util.Debug Cannot convert an instance of com.servoy.j2db.util.UUID to type String 6AAEDA73-01E5-4911-B526-1ECC7B26FDF2 TMLE
org.mozilla.javascript.WrappedException: Wrapped java.lang.RuntimeException: com.servoy.j2db.dataprocessing.DataException: Cannot convert an instance of com.servoy.j2db.util.UUID to type String (TMLEDashboard/scopes/tmleDashboardQueries/getCasesNeedingOpinion#421)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Context.java:1815)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:180)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:312)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1774)
at script.getCasesNeedingOpinion(TMLEDashboard/scopes/tmleDashboardQueries/getCasesNeedingOpinion:421)
at script.getCasesNeedingOpinionCount(TMLEDashboard/scopes/tmleDashboardQueries/getCasesNeedingOpinionCount:453)
at script.refreshCounters(TMLE/forms/dashboard_stage2/refreshCounters:12)
at script.onShowForm(TMLEDashboard/forms/dashboardBase/onShowForm:150)
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:628)
at com.servoy.j2db.BasicFormController.executeFunction(BasicFormController.java:824)
at com.servoy.j2db.BasicFormController.executeFormMethod(BasicFormController.java:708)
at com.servoy.j2db.BasicFormController.executeOnShowMethod(BasicFormController.java:622)
at com.servoy.j2db.BasicFormController.access$2(BasicFormController.java:616)
at com.servoy.j2db.BasicFormController$1.run(BasicFormController.java:356)
at com.servoy.j2db.server.headlessclient.EventsRunnable.run(EventsRunnable.java:58)
at com.servoy.j2db.server.headlessclient.WebClient.executeEvents(WebClient.java:566)
at com.servoy.j2db.server.headlessclient.dataui.WebEventExecutor.generateResponse(WebEventExecutor.java:734)
at com.servoy.j2db.server.headlessclient.dataui.WebTabPanel$2$1.onClick(WebTabPanel.java:179)
at com.servoy.j2db.server.headlessclient.dataui.ServoySubmitLink$1.onEvent(ServoySubmitLink.java:57)
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:1)
at org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: com.servoy.j2db.dataprocessing.DataException: Cannot convert an instance of com.servoy.j2db.util.UUID to type String
at com.servoy.j2db.dataprocessing.JSDatabaseManager.js_getDataSetByQuery(JSDatabaseManager.java:1354)
at sun.reflect.GeneratedMethodAccessor476.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:158)
... 52 more
Caused by: com.servoy.j2db.dataprocessing.DataException: Cannot convert an instance of com.servoy.j2db.util.UUID to type String
at com.servoy.j2db.dblayer.Zb.Za(Zb.java:363)
at com.servoy.j2db.server.Za.Zo.Za(Zo.java:1087)
at com.servoy.j2db.server.dataprocessing.Zw.Za(Zw.java:1517)
at com.servoy.j2db.server.dataprocessing.Zw.Za(Zw.java:821)
at com.servoy.j2db.server.dataprocessing.Zw.performCustomQuery(Zw.java:471)
at com.servoy.j2db.dataprocessing.FoundSetManager.getDataSetByQuery(FoundSetManager.java:2080)
at com.servoy.j2db.dataprocessing.JSDatabaseManager.js_getDataSetByQuery(JSDatabaseManager.java:1350)
... 56 more
Have I done something wrong in the server setup or is this a genuine error that somehow gets masked in our V7 production environment (though everything works exactly as expected there!)?
Thanks
Steve