Hi,
I have an application that returns a list grid, and the user can export that grid data to a file on the server. It is a LOT of data, so I have a custom handler that takes the data and saves it onto the server, and then emails the user a link to download it from when it is ready.
I have just upgraded from version 2.5 to version 12, and it all worked fine in version 2.5, but since the upgrade it does not work, but produces a null pointer in the DSRequest.excecute();
My data source has,
<operationBindings>
<operationBinding operationType="fetch" operationId="customServerSideExport" >
<serverObject className="org.opengroup.gwt.dsat.server.export.CustomServerSideExportDMI" lookupStyle="new" />
<serverMethod>customExport</serverMethod>
</operationBinding>
</operationBindings>
However, in my CustomServerSideExportDMI it throws a null pointer error for,
dsRequest.execute()
The full stack trace is below. Obviously I don't have control over that method, so cant see what the actual null pointer is, or why it might be there.
Any ideas to why this might now be throwing a null pointer would be greatly received. I think that at the lease the .execute method should throw a more specific error rather than a null pointer.
Smart GWT : 12
Browser : Same issue no matter what browser
The stack trace is below - I have the full trace, but the upload here only allows for an upload of 35kb! The log file is 102kb
2019-01-27 05:53:52,272 INFO [STDOUT] === 2019-01-27 05:53:52,271 [9-36] ERROR IDACall - com.isomorphic.servlet.IDACall top-level exception
java.lang.NullPointerException
at com.isomorphic.rpc.DataExport.transformValues(DataExport.java:1045)
at com.isomorphic.rpc.DataExport.exportResultSet(DataExport.java:613)
at com.isomorphic.rpc.DataExport.exportResultSet(DataExport.java:452)
at com.isomorphic.rpc.RPCManager.completeResponse(RPCManager.java:1282)
at com.isomorphic.rpc.RPCManager.send(RPCManager.java:715)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187)
at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:152)
at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:176)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:260)
at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:93)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
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:562)
at org.josso.tc55.agent.SSOAgentValve.invoke(SSOAgentValve.java:512)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:419)
at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:378)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)
at java.lang.Thread.run(Thread.java:745)
2019-01-27 05:53:52,278 INFO [STDOUT] 05:53:52,278 ERROR [DSAT] Export Error : java.lang.NullPointerException
at com.isomorphic.datasource.DSRequest.trackTimings(DSRequest.java:7001)
at com.isomorphic.datasource.DSRequest.recordTimingData(DSRequest.java:7016)
at com.isomorphic.datasource.DSRequest.recordTimingData(DSRequest.java:7013)
at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2611)
at org.opengroup.gwt.dsat.server.threads.BigExportThread.run(BigExportThread.java:87)
Many thanks
Andy CROWE
I have an application that returns a list grid, and the user can export that grid data to a file on the server. It is a LOT of data, so I have a custom handler that takes the data and saves it onto the server, and then emails the user a link to download it from when it is ready.
I have just upgraded from version 2.5 to version 12, and it all worked fine in version 2.5, but since the upgrade it does not work, but produces a null pointer in the DSRequest.excecute();
My data source has,
<operationBindings>
<operationBinding operationType="fetch" operationId="customServerSideExport" >
<serverObject className="org.opengroup.gwt.dsat.server.export.CustomServerSideExportDMI" lookupStyle="new" />
<serverMethod>customExport</serverMethod>
</operationBinding>
</operationBindings>
However, in my CustomServerSideExportDMI it throws a null pointer error for,
dsRequest.execute()
The full stack trace is below. Obviously I don't have control over that method, so cant see what the actual null pointer is, or why it might be there.
Any ideas to why this might now be throwing a null pointer would be greatly received. I think that at the lease the .execute method should throw a more specific error rather than a null pointer.
Smart GWT : 12
Browser : Same issue no matter what browser
The stack trace is below - I have the full trace, but the upload here only allows for an upload of 35kb! The log file is 102kb
2019-01-27 05:53:52,272 INFO [STDOUT] === 2019-01-27 05:53:52,271 [9-36] ERROR IDACall - com.isomorphic.servlet.IDACall top-level exception
java.lang.NullPointerException
at com.isomorphic.rpc.DataExport.transformValues(DataExport.java:1045)
at com.isomorphic.rpc.DataExport.exportResultSet(DataExport.java:613)
at com.isomorphic.rpc.DataExport.exportResultSet(DataExport.java:452)
at com.isomorphic.rpc.RPCManager.completeResponse(RPCManager.java:1282)
at com.isomorphic.rpc.RPCManager.send(RPCManager.java:715)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187)
at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:152)
at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:176)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:260)
at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:93)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
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:562)
at org.josso.tc55.agent.SSOAgentValve.invoke(SSOAgentValve.java:512)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:419)
at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:378)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)
at java.lang.Thread.run(Thread.java:745)
2019-01-27 05:53:52,278 INFO [STDOUT] 05:53:52,278 ERROR [DSAT] Export Error : java.lang.NullPointerException
at com.isomorphic.datasource.DSRequest.trackTimings(DSRequest.java:7001)
at com.isomorphic.datasource.DSRequest.recordTimingData(DSRequest.java:7016)
at com.isomorphic.datasource.DSRequest.recordTimingData(DSRequest.java:7013)
at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2611)
at org.opengroup.gwt.dsat.server.threads.BigExportThread.run(BigExportThread.java:87)
Many thanks
Andy CROWE
Comment