相关疑难解决方法(0)

如何在Eclipse项目中导入javax.servlet API?

我想在Eclipse中使用Servlet进行开发,但它说javax.servlet无法解析包.如何将javax.servlet包添加到Eclipse项目中?

java eclipse servlets

313
推荐指数
9
解决办法
61万
查看次数

java.lang.NoClassDefFoundError:javax/servlet/http/HttpServletRequest

我收到以下错误:

06/08/2011 02:56:33 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet UploadTheme threw exception
java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletRequest
    at org.apache.commons.fileupload.servlet.ServletRequestContext.getContentType(ServletRequestContext.java:73)
    at org.apache.commons.fileupload.FileUploadBase$FileItemIteratorImpl.<init>(FileUploadBase.java:905)
    at org.apache.commons.fileupload.FileUploadBase.getItemIterator(FileUploadBase.java:331)
    at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:351)
    at org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:126)
    at cs236369.hw5.servlets.xml.UploadTheme.doPost(UploadTheme.java:47)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

我放置JARS WEB-INF/lib.这是项目类路径的样子: 项目设置

这是运行配置: 在此输入图像描述

添加FileUpload后麻烦开始了.
知道什么是错的吗?

java servlets jar

9
推荐指数
1
解决办法
2万
查看次数

java.lang.NoClassDefFoundError:javax/servlet/http/HttpServlet

我在一个Web应用程序上工作,我创建了一个带有axis2的web服务我在我的应用程序中集成了这个Web服务,但问题是当我尝试通过以下URL检索wsdl时:http:// localhost:8080/ConsoleSynoptique /服务/列表服务.我收到以下错误:

java.lang.NoClassDefFoundError: javax/servlet/http/HttpServlet
    java.lang.ClassLoader.defineClass1(Native Method)
    java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    java.lang.ClassLoader.defineClass(ClassLoader.java:615)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    java.security.AccessController.doPrivileged(Native Method)
    java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    java.lang.ClassLoader.loadClass(ClassLoader.java:295)
    java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Class.java:247)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1707)     org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)     org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:492)      org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)   org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)     org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2466)     org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2455)   java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)     java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)     org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)      
java.lang.Thread.run(Thread.java:662) 
Run Code Online (Sandbox Code Playgroud)

我在ide eclipse luna上工作,Tomcat 7作为应用服务器.arboressebce应用程序是:

C:.
?   .classpath
?   .project
?
????.settings
?       .jsdtscope
?       org.eclipse.jdt.core.prefs
?       org.eclipse.wst.common.component
?       org.eclipse.wst.common.project.facet.core.xml
?       org.eclipse.wst.jsdt.ui.superType.container
?       org.eclipse.wst.jsdt.ui.superType.name
?
????build
?   ????classes
?       ????fr
?       ?   ????test
?       ?       ????si
?       ?       ?   ????sdvlesb1
?       ?       ?       ????meddiftopnotifiertops_ws_v1_amont_notifiertops …
Run Code Online (Sandbox Code Playgroud)

axis2 java-ee tomcat7

6
推荐指数
1
解决办法
3万
查看次数

tomcat 10 ServletFileUpload#parseRequest(request) 出错

正在开发一个简单的文件上传程序。我必须使用 jakarta.servlet.* 类,因为我使用的是 Tomcat v10。我在 parseRequest(request) 行收到编译时错误。

代码 :

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        ServletFileUpload sf = new ServletFileUpload(new DiskFileItemFactory());
        try {
            List<FileItem> multifiles = sf.parseRequest(request);
            
            for(FileItem i : multifiles) {
                i.write(new File("C:/Users/Luffy/Documents/FileUploadDemo/"+i.getName()));
            }
            response.getWriter().print("The file is uploaded");
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
        response.getWriter().print("The file is uploaded");
    }
Run Code Online (Sandbox Code Playgroud)

错误如下:

ServletFileUpload 类型中的方法 parseRequest(javax.servlet.http.HttpServletRequest) 不适用于参数 (jakarta.servlet.http.HttpServletRequest)

我在谷歌上搜索了很多但找不到解决方案。

请提出解决方法或可能的解决方案。提前致谢。

这是我在 Stack Overflow 上的第一篇文章。所以请忽略我的错误(如果有的话):)

servlets multifile-uploader apache-commons-fileupload jakarta-ee tomcat10

4
推荐指数
1
解决办法
5413
查看次数