Java 从github部署WebContent文件夹作为WAR文件

Java 从github部署WebContent文件夹作为WAR文件,java,tomcat,servlets,configuration,web.xml,Java,Tomcat,Servlets,Configuration,Web.xml,我下载了以下项目作为zip文件从 我原本希望使用IDE为我构建一个WAR文件,但在遇到一些与netbeans相关的依赖项后,我放弃了 在我设法在eclipse中编译它并获得一个classes目录之后,我将它放在WebContent的WEB-INF文件夹中 webContent文件夹看起来像一个普通的WAR文件夹,因此我将webContent压缩并重命名为webContent.WAR,并将其部署到tomcat 6 webapps目录中。我使用与我在其中编译的JRE相同的JRE来运行tomcat 但

我下载了以下项目作为zip文件从

我原本希望使用IDE为我构建一个WAR文件,但在遇到一些与netbeans相关的依赖项后,我放弃了

在我设法在eclipse中编译它并获得一个classes目录之后,我将它放在WebContent的WEB-INF文件夹中

webContent文件夹看起来像一个普通的WAR文件夹,因此我将webContent压缩并重命名为webContent.WAR,并将其部署到tomcat 6 webapps目录中。我使用与我在其中编译的JRE相同的JRE来运行tomcat

但是它不会运行

web.xml(位于web-INF中)的内容是:

    <?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <display-name>fileupload</display-name>
    <servlet-mapping>
        <servlet-name>UploadServlet</servlet-name>
        <url-pattern>/UploadServlet</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
    <servlet>
        <description/>
        <display-name>UploadServlet</display-name>
        <servlet-name>UploadServlet</servlet-name>
        <servlet-class>info.sudr.file.UploadServlet</servlet-class>
    </servlet>
</web-app>

文件上传
上传servlet
/上传servlet
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
上传servlet
上传servlet
info.sudr.file.UploadServlet
我可以在tomcat错误日志中看到以下消息:

2013年12月28日20:20:27 org.apache.catalina.startup.ContextConfig应用程序网络配置 严重:jndi:/localhost/WebContent/web-INF/web.xml处的应用程序web.xml文件中出现解析错误 java.lang.IllegalArgumentException:Servlet映射指定未知的Servlet名称UploadServlet

如果我随后从web.xml中删除以下内容(或将其移动到包含servlet类的定义下方):


上传servlet
/上传servlet
我可以看到位于WebContent中index.html的bear bones html,但无法访问servlet本身

我是否正确地怀疑index.html中调用的表单操作可能需要web.xml文件中的一些映射,因为我看不出上传可以做什么:

 <form id="fileupload" action="upload" method="POST" enctype="multipart/form-data">

我尝试将action更改为action=“UploadServlet”和action=“/UploadServlet”,但没有效果。
我上传了战争文件(只需点击中间的小下载按钮!)

请重新措辞,但我可以访问servlet。您得到的是404吗?您的
操作
属性应具有与您的
中映射的值相同的值,如果我不将包含url模式的servlet映射标记移动到带有UploadServlet显示名称标记的servlet映射下面,我会得到404tomcat日志中对应的消息是java.lang.IllegalArgumentException:Servlet映射指定了一个未知的Servlet名称UploadServlet。将
移动到
下,然后使用
操作=“${pageContext.request.contextPath}/upload”
重试。提交表单时您看到了什么?没有乐趣,您能够部署它吗?
 <form id="fileupload" action="upload" method="POST" enctype="multipart/form-data">