File Upload functionality is broken in SmartClient_v83p_2013-06-26_Pro.
It used to work before, last good known build is SmartClient_v83p_2013-03-11_Pro. The same code used to work completely unchanged since SmartClient 8.1 Pro versions.
Simply upgrading to SmartClient_v83p_2013-03-11_Pro caused the problem.
Browsers: all browsers, FF 10.0.6, Chrome 27.0.1453.116 m, IE 9.
Smartclient: SmartClient_v83p_2013-06-26_Pro
commons-fileupload-1.2.1.jar
JDK: 7.0.27.0 (also tested with 7.0.19)
No additional frameworks running. Reproducible on Win and Linux environments.
Uploading any file causes the following exception:
=== 2013-07-07 19:14:46,859 [c-27] WARN DSRequest - We found a filename in the values for DataSource 'filePicItemDMI', field 'img_file', but the expected corresponding binary content in the request body was missing. Maybe a Filter or a framework like Struts has removed it?
=== 2013-07-07 19:14:46,949 [c-27] WARN RequestContext - dsRequest.execute() failed:
java.lang.NullPointerException
at ajax.FilePicItemDMI.add(FilePicItemDMI.java:59)
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:2030)
at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:216)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:173)
at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:138)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:74)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
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:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
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:999)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Just one sample data source. It's failing with all uploading functionality.
Please help!
thanks,
- Gene
It used to work before, last good known build is SmartClient_v83p_2013-03-11_Pro. The same code used to work completely unchanged since SmartClient 8.1 Pro versions.
Simply upgrading to SmartClient_v83p_2013-03-11_Pro caused the problem.
Browsers: all browsers, FF 10.0.6, Chrome 27.0.1453.116 m, IE 9.
Smartclient: SmartClient_v83p_2013-06-26_Pro
commons-fileupload-1.2.1.jar
JDK: 7.0.27.0 (also tested with 7.0.19)
No additional frameworks running. Reproducible on Win and Linux environments.
Uploading any file causes the following exception:
=== 2013-07-07 19:14:46,859 [c-27] WARN DSRequest - We found a filename in the values for DataSource 'filePicItemDMI', field 'img_file', but the expected corresponding binary content in the request body was missing. Maybe a Filter or a framework like Struts has removed it?
=== 2013-07-07 19:14:46,949 [c-27] WARN RequestContext - dsRequest.execute() failed:
java.lang.NullPointerException
at ajax.FilePicItemDMI.add(FilePicItemDMI.java:59)
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:2030)
at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:216)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:173)
at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:138)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:74)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:152)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
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:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
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:999)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Just one sample data source. It's failing with all uploading functionality.
Code:
<DataSource ID="filePicItemDMI" serverType="generic"> <fields> <field name="itemID" type="sequence" title="ID" primaryKey="true" hidden="true" /> <field name="img_file" type="imageFile" title="File" maxFileSize="650200"/> <field name="img_desc" type="text"/> </fields> <serverObject lookupStyle="new" className="ajax.FilePicItemDMI" /> </DataSource>
Please help!
thanks,
- Gene
Comment