这是我的第一个 Java EE“应用程序”。我有点困惑......谷歌搜索后,我认为我做的一切都是正确的,但如果是这样,我就不会遇到问题:)
我的save.jsp下的表单:
<body>
<form method="post" action="${pageContext.request.contextPath}/save">
<table>
<tr>
<td><label for="idTxtName" >Name:</label></td>
<td><input type="text" id="idTxtName" name="name"/></td>
</tr>
<tr>
<td><label for="idTxtSurname" >Surname:</label></td>
<td><input type="text" id="idTxtSurname" name="surname"/></td>
</tr>
... etc...
<tr>
<td></td>
<td><input type="submit" value="Save person" /></td>
</tr>
</table>
</form>
</body>
我也尝试过:
form method="post" action="/save"
以及
form method="post" action="save"
我的Servlet:
package servlets;
import java.io.IOException;
import java.sql.SQLException;
import // etc
public class SaveServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// some actions
}
}
和 web.xml 映射:
<servlet>
<servlet-name>SavingServlet</servlet-name>
<servlet-class>servlets.SaveServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SavingServlet</servlet-name>
<url-pattern>/save</url-pattern>
</servlet-mapping>
提交 save.jsp 表单后,我看到一条经典消息:
HTTP Status 404 - /SImpleCRUD/save
type Status report
message /SImpleCRUD/save
description The requested resource is not available.
我做错了什么?我的映射不正确吗?
最佳答案
有时会发生这种情况。您的代码没有任何问题。但只需重新启动服务器并再次运行即可。也许它会工作得很好。
在 JSP 中 action="SavingServlet" 和 @WebServlet("/SavingServlet") 在 Servlet 的类级别配置此注释。现在无需在 web.xml 中配置您的 servlet
关于java - Servlet 映射问题 - 我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22421775/