Java JSP Servelet 404异常Tomcat

Java JSP Servelet 404异常Tomcat,java,eclipse,jsp,tomcat,Java,Eclipse,Jsp,Tomcat,我有一个java servelet,它也映射到web.xml文件中,但当我运行它时,它会引发404错误。这是我的源代码 我的表单和操作如下所示 <form name="productsForm" method="post" action="/Checkout"> 这是我的web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLS

我有一个java servelet,它也映射到web.xml文件中,但当我运行它时,它会引发404错误。这是我的源代码 我的表单和操作如下所示

<form name="productsForm" method="post" action="/Checkout">

这是我的web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>AP Assignment 5</display-name>
  <servlet>
    <description>Called to process any forms on the website</description>
    <display-name>Form Processing Servlet</display-name>
    <servlet-name>Checkout</servlet-name>
    <servlet-class>Servlets.MyServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Checkout</servlet-name>
    <url-pattern>/Checkout</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

AP作业5
被要求处理网站上的任何表格
表单处理Servlet
结账
Servlets.MyServlet
结账
/结帐
index.jsp
这是我的项目层次结构和servelet代码


中删除此处无效的
.class


应该是

<servlet-class>Servlets.MyServlet</servlet-class>
Servlets.MyServlet
而不是

<servlet-class>Servlets/MyServlet.class</servlet-class>
<form name="productsForm" method="post" action="/Checkout">
servlet/MyServlet.class

--编辑--

如果您在JSP中使用上下文路径,请尝试追加它;如果在HTML中使用上下文路径,请直接追加上下文路径

<form name="productsForm" method="post" 
                          action="<%=request.getContextPath() %>/Checkout">

而不是

<servlet-class>Servlets/MyServlet.class</servlet-class>
<form name="productsForm" method="post" action="/Checkout">


请看一看类似的问题。

您的web.xml中有两个错误

  • 您不应该使用
    .class
  • 如果包中存在类,则应使用点(
    ) 非斜杠(
    /
  • 所以改变

    <servlet-class>Servlets/MyServlet.class</servlet-class>
    
    servlet/MyServlet.class
    

    <servlet-class>Servlets.MyServlet</servlet-class>
    
    Servlets.MyServlet
    
    根据我的观点,web.xml和servlet页面上没有错误。 web.xml应该是

    <servlet>
            <servlet-name>ServeletName</servlet-name>
            <servlet-class>Package.ServeletName</servlet-class>
        </servlet>
    <servlet-mapping>
            <servlet-name>ServeletName</servlet-name>
            <url-pattern>/ServeletName</url-pattern>
        </servlet-mapping>
    
    
    ServeletName
    Package.ServeletName
    ServeletName
    /ServeletName
    
    怎么回事?别忘了添加评论。别偷懒了。我错了,我知道我已经提出了建议,但我可以纠正它。有时我不完全正确。请在
    之后加上
    。它可能有用。你错过了
    ,但我又编辑了它。@user1375948请看我更新的帖子。这可能会对你有所帮助。@Braj是的,这是答案仍然不起作用404错误我已经更新了web.xml文件现在检查有什么问题有人告诉我有什么问题吗here@Braj是的,但你的答案也是半对的。你不应该猜出为什么会有这样的错误?