Genexus에서 웹 사이트에 업로드 컨트롤이 포함되어 있고 로컬 Tomcat 서버에서 실행 중이며 더 작은 파일에는 잘 작동하지만 더 큰 파일을 업로드하려고하면 하나 (> 50 MB) 파일을 업로드하는 것으로 나타나지만 트랜잭션 화면으로 돌아갑니다.Genexus Uploadify가 대용량 파일로 작동하지 않습니다.
Google 크롬에 포함 된 개발자 도구를 사용하여 테스트를 실시했는데 큰 파일을 업로드하려고하면 "500 - 내부 서버 오류"가 발생합니다. "네트워크"탭에서 해당 라인을 클릭하면이 제공 : 내가 바람둥이 디렉토리에 < 서블릿 > 태그 안에 다음과 같은 태그를 추가 응용 프로그램의 web.xml을 편집 제안을 발견
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error() that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: java.lang.NoSuchMethodError: org.apache.commons.fileupload.DefaultFileItem.cleanup()V
at com.genexus.webpanels.HttpContextWeb.cleanup(Unknown Source)
at com.genexus.webpanels.GXWebObjectBase.doExecute(Unknown Source)
at br.com.procempa.spm.cauge.texpedientessoliceventosalter.doExecute(texpedientessoliceventosalter.java:21)
at com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
at com.genexus.webpanels.GXWebObjectStub.doPost(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:420)
at org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:170)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
com.genexus.webpanels.GXWebObjectStub.doPost(Unknown Source)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:420)
org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:170)
javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.28 logs.
Apache Tomcat/5.5.28
은 일부 웹 사이트에 검색 /application-directory/WEB-INF/web.xml :
<multipart-config>
<max-file-size>1073741824</max-file-size>
<max-request-size>1073741824</max-request-size>
<file-size-threshold>0</file-size-threshold>
</multipart-config>
그리고 편집 바람둥이 디렉토리/conf의/server.xml에 8080 모습과 같이 포트 커넥터 태그를 만들려면 :
<Connector port="8080" maxHttpHeaderSize="4096" maxPostSize="1073741824"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="600000" disableUploadTimeout="true" />
그리고 나서 Tomcat을 재시작했지만 나에게도 같은 오류가 발생합니다. 나는 다른 것을 놓치고 있습니까?
미리 감사드립니다.
EDIT : 사실 내 응용 프로그램은 Java이고 사용 된 컨트롤은 "업로드"가 아니며 "이미지"클래스이며 데이터베이스의 BLOB 필드에 연결되어 있습니다. 거래 양식의 필드 유형을 변경하는 경우가 아닙니까?