1

我正在尝试在 OpenShift 上托管我的应用程序。当我尝试上传文件时,会显示此错误消息:

exception

javax.servlet.ServletException: Servlet execution threw an exception

root cause

java.lang.NoSuchMethodError: org.apache.tomcat.util.http.fileupload.servlet.ServletFileUpload.parseRequest(Ljavax/servlet/http/HttpServletRequest;)Ljava/util/List;
    com.bios.controller.UploadServlet.processRequest(UploadServlet.java:62)
    com.bios.controller.UploadServlet.doPost(UploadServlet.java:114)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.40 logs.

但是当我在 NetBeans 中运行文件时,它可以在我的本地主机上运行。我在 NetBeans 上的 lib 文件夹中导入了 Apache Tomcat 7.0.34。

4

2 回答 2

2

这是由于在本地和 OpenShift 中使用了不兼容的 Tomcat 版本。

不过令人惊讶的是,版本号仅相差很小的次要版本号。

但请尝试在本地使用完全相同版本的 Tomcat (7.0.40)。

于 2013-10-13T13:59:55.070 回答
0

我们使用 Maven 在 OpenShift 中构建您的项目,因此我将在 pom.xml 中为邮件 servlet 添加声明。

您还可以将库的 jar 放在OpenShift 项目的 git 存储库的lib目录中。不要忘记执行“git add”。添加后。

对于上述任何一种方法,您都需要执行 git commit 然后执行 git push 以使更改生效。

于 2013-10-13T22:20:43.300 回答