Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    File upload is broken in 8.3 06/26/2013 nightly

    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.
    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

    #2
    This was a temporary regression, you got unlucky and downloaded at just the wrong time. Grab the latest build to correct the problem.

    Comment

    Working...
    X