【问题标题】:java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getPart(Ljava/lang/String;)Ljavax/servlet/http/Part;java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getPart(Ljava/lang/String;)Ljavax/servlet/http/Part;
【发布时间】:2015-12-24 19:15:18
【问题描述】:

这个问题在堆栈溢出上问了很多次,我检查了所有并尝试了所有其他人所说的删除上述错误的可能性,但仍然没有弄清楚。 Servlet api-3.1,使用 Maven 构建工具,使用 JRE 1.7,我的 web-inf 文件夹包含与我在 pom.xml 文件中定义的相同的 javax.servlet 3.1。

这是我的 pom.xml 文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.ebooks</groupId>
  <artifactId>project</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>InsaneNerds Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>



     <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
        <scope>provided</scope>
</dependency>


    <dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.2</version>
</dependency>

    <dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-io</artifactId>
    <version>1.3.2</version>
</dependency>







       <dependency>  
       <groupId>javax</groupId>  
       <artifactId>javaee-api</artifactId>  
       <version>6.0</version>  
       <scope>provided</scope>  
     </dependency> 


       <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>1.7.1</version>
    </dependency>

        <dependency>  
    <groupId>org.hibernate</groupId>  
    <artifactId>hibernate-core</artifactId>  
    <version>4.1.9.Final</version>  
</dependency>  

<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.9</version>
    </dependency>
    <dependency>
    <groupId>com.restfb</groupId>
    <artifactId>restfb</artifactId>
    <version>1.17.0</version>
</dependency>


    <dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4</version>
</dependency>


  </dependencies>
  <build>
    <finalName>project</finalName>
  </build>
</project>

我想要上传一个文件并将其存储在我的 sql 数据库中,我使用本教程 http://www.codejava.net/coding/upload-files-to-database-servlet-jsp-mysql 来执行此操作,但我遇到了错误。

我尝试了什么:- 1.我检查了我的依赖 2. 我的 Web-INF 文件夹 3.所有可能的解决方案,即在互联网上提供但仍未弄清楚。

有没有其他方法可以从html上传文件并将其存储在mysql数据库中。 有人可以帮忙吗?

【问题讨论】:

    标签: java maven servlets


    【解决方案1】:

    您已将 servlet-api 标记为 provided -- 您应该这样做 -- 但这意味着您依赖于应用程序服务器提供的版本。 (provided 说“不要将此库捆绑在 WAR 中;应用服务器将提供它。”)您还没有说明您使用的是什么应用服务器或版本,但如果是的话,因为例如,Tomcat 5.5,那么我对这个错误一点也不感到惊讶,因为这个方法是在 servlet 规范的 3.0 中添加的。

    【讨论】:

    • 嗯,很好奇。 Tomcat 7 支持 servlet 3.0...你的 web.xml 文件的前几行怎么样?你是在声明使用 3.0 版的模式吗?
    【解决方案2】:

    当我使用 servlet 3.0 规范但 pom 有 3.1 时发生在我身上

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-07
      • 1970-01-01
      • 2014-12-26
      • 1970-01-01
      • 1970-01-01
      • 2012-01-26
      • 2019-07-22
      • 2019-05-28
      相关资源
      最近更新 更多