Linux服务器文件上传

时间:2020-03-17 10:39:07

标签: spring spring-mvc

我无法上传文件。详细的错误消息如下所示。

我尝试更改maxUploadsize -1,但遇到相同的错误。

我还检查了spring配置文件中的Maxupload大小-1,如下所示,但也没有成功。

有人看到此错误或知道原因吗?


<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  <!-- max upload size in bytes -->
  <property name="maxUploadSize" value="-1" /> <!-- 20MB -->

  <!-- max size of file in memory (in bytes) -->
  <property name="maxInMemorySize" value="129059638" /> <!-- 1MB -->

</bean>

java.io.FileNotFoundException: /opt/tomcat/work/Catalina/localhost/AutoBCM_Alpha_v2/upload_2f8777c9_170d42a1309__8000_00000055.tmp (没有此类文件或目录)位于java.io.FileInputStream.open0(本机 方法)在java.io.FileInputStream.open(FileInputStream.java:195) java.io.FileInputStream。(FileInputStream.java:138)在 org.apache.commons.fileupload.disk.DiskFileItem.readObject(DiskFileItem.java:719) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498)在 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1170) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2177) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2068) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1572) 在 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2286) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2210) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2068) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1572) 在java.io.ObjectInputStream.readObject(ObjectInputStream.java:430)在 java.util.HashMap.readObject(HashMap.java:1412)在 sun.reflect.GeneratedMethodAccessor82.invoke(未知源)位于 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498)在 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1170) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2177) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2068) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1572) 在java.io.ObjectInputStream.readObject(ObjectInputStream.java:430)在 com.ascent.bcm.applayer.Applayer.receiveData(Applayer.java:239)位于 com.ascent.bcm.applayer.Applayer.validateUser(Applayer.java:267)在 com.ascent.bcm.applayer.BcmBIAAppController.slaDocFileUpload(BcmBIAAppController.java:4593) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在java.lang.reflect.Method.invoke(Method.java:498)在 org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:177) 在 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:446) 在 org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:434) 在 org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959) 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) 在 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966) 在 org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:868) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:648)在 org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842) 在javax.servlet.http.HttpServlet.service(HttpServlet.java:729)在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 在 org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94) 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 在 org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502) 在 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1132) 在 org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:684) 在 org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1539) 在 org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1495) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624) 在 org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61) 在java.lang.Thread.run(Thread.java:748)

1 个答案:

答案 0 :(得分:0)

为什么您怀疑maxFileUploadSize是罪魁祸首?

错误消息是:

java.io.FileNotFoundException: /opt/tomcat/work/Catalina/localhost/AutoBCM_Alpha_v2/upload_2f8777c9_170d42a1309__8000_00000055.tmp (No such file or directory)

没有更多的文件上传代码,除了缺少“ a”文件或目录之外,很难说出真正出问题的地方。

相关问题