good day to all, I am using Power edition smartClient version 9.0 and am getting an error that I don't understand. the goal is to add a user that is a user to an account sending only the relevant information. the payload is below.
what is happening is I have a datasource that selects a number of optional fields, but what I am getting when the field is null is not a null value but a exception stack
i reverted back to smartcCient 8.3 and this problem has gone away
Code:
=== 2013-07-23 11:05:58,066 [ec-5] DEBUG RPCManager - Request #1 (DSRequest) payload: { values:{ company_id:"3", company_account_number:"6", status_cd:"Active", birth_d:new Date(1374530400000), company_person_id:null, role_attendee:true, role_responsible:false, role_communicator:false, role_web_user:false, use_transport:true, name:"xxxx", surname:"yyyy", gender_cd:"Female", medical_issues:"nnnn", school_name:"Swartkop Primary", school_grade:"4" }, operationConfig:{ dataSource:"company_person_account_member_view", operationType:"add" }, componentId:"dfChangeDetailsDialog", appID:"builtinApplication", operation:"company_person_account_member_view_add", oldValues:{ }, criteria:{ } }
Code:
=== 2013-07-23 11:05:58,209 [ec-5] DEBUG DataSourceDMI - Invocation threw exception java.lang.NullPointerException at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:185) at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:178) at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:169) at com.isomorphic.criteria.AdvancedCriteria.getFieldValue(AdvancedCriteria.java:147) at com.isomorphic.datasource.DSRequest.getCriteriaValue(DSRequest.java:1933) at com.isomorphic.datasource.DSRequest.getFieldValue(DSRequest.java:1917) at za.co.adminonline.dmi.ChangeDetailsDMI.add(ChangeDetailsDMI.java:81) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:972) at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:416) at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:64) at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2408) at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:215) at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:172) at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259) 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:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) === 2013-07-23 11:05:58,245 [ec-5] WARN RequestContext - dsRequest.execute() failed: java.lang.NullPointerException at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:185) at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:178) at com.isomorphic.criteria.AdvancedCriteria.getFieldCriterion(AdvancedCriteria.java:169) at com.isomorphic.criteria.AdvancedCriteria.getFieldValue(AdvancedCriteria.java:147) at com.isomorphic.datasource.DSRequest.getCriteriaValue(DSRequest.java:1933) at com.isomorphic.datasource.DSRequest.getFieldValue(DSRequest.java:1917) at za.co.adminonline.dmi.ChangeDetailsDMI.add(ChangeDetailsDMI.java:81) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:972) at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:416) at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:64) at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2408) at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:215) at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:172) at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:137) at com.isomorphic.servlet.IDACall.doPost(IDACall.java:73) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at com.isomorphic.servlet.CompressionFilter.doFilter(CompressionFilter.java:259) 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:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) === 2013-07-23 11:05:58,285 [ec-5] DEBUG RPCManager - Content type for RPC transaction: text/plain; charset=UTF-8 === 2013-07-23 11:05:58,287 [ec-5] DEBUG SQLTransaction - Rolling back Mysql transaction "938009871" === 2013-07-23 11:05:58,317 [ec-5] DEBUG RPCManager - non-DMI response, dropExtraFields: false === 2013-07-23 11:05:58,319 [ec-5] DEBUG SQLTransaction - Returning transactional connection for Mysql with hashcode "938009871" === 2013-07-23 11:05:58,321 [ec-5] DEBUG SQLTransaction - Ending Mysql transaction "938009871" === 2013-07-23 11:05:58,324 [ec-5] DEBUG SQLConnectionManager - About to close PoolableConnection with hashcode "938009871" === 2013-07-23 11:05:58,326 [ec-5] DEBUG PoolableSQLConnectionFactory - Executing pingTest 'select 1 from dual' on connection 938009871 === 2013-07-23 11:05:58,330 [ec-5] INFO Compression - /war/isomorphic/IDACall: 123 -> 113 bytes
Comment