on 11-11-2015 9:57 AM
Hello Experts,
My J2EE server version is 7.01 SP16.
I'm trying to use apache file upload in my code.
Apache solution includes two files:
commons-fileupload-1.2.2, commons-io-1.4 (the files are for Java 1.4.2)
If I create a servlet and copy the files to WEB-INF/lib everything works.
But when I try to use External Libray DC, the code compiles but I'm getting run time error:
java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
#1.5 #001B787505DE006600000022000016BC000524407A0FFF7D#1447234227555#com.sap.engine.services.servlets_jsp.client.RequestInfoServer#<my package>/createreqear#com.sap.engine.services.servlets_jsp.client.RequestInfoServer#omricoh#186##n/a##ce636c1b885611e5b4f200001e5cd776#SAPEngine_Application_Thread[impl:3]_35##0#0#Error##Plain###application [LocalDevelopment~createreq~<my package>] Processing HTTP request to servlet [UploadAttachmentServlet] finished with error. The error is: java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
at org.apache.commons.fileupload.servlet.ServletFileUpload.isMultipartContent(ServletFileUpload.java:68)
at <my package>.files.management.UploadAttachmentServlet.doPost(UploadAttachmentServlet.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1064)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
I guess it causes some class loader issue.
My problem is similar to the problem in this thread:
https://scn.sap.com/thread/3293843
How to solve this problem?
Regards,
Omri
Solved it on my own.
As I suspected it's a classloader issue: external library is loaded from lib/ext which causes the exception.
The solution: in this case not to use external library, instead copy the two jars under the lib folder of the web application (in this way I'm still using SAP DC which I need for other references).
Regards,
Omri
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
93 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.