我有主頁,當我點擊引用Servlet時不起作用,我得到404錯誤。我想問題在web.xml
映射,但一個不明白的地方。請幫我解決這個問題。謝謝。請勿使用servlet。在web.xml中使用servlet映射的問題
我web.xml
<!--Homepage.-->
<servlet>
<servlet-name>HomePageServlet</servlet-name>
<servlet-class>ru.pravvich.servlets.HomePageServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HomePageServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!--Add user in database.-->
<servlet>
<servlet-name>AddUserServlet</servlet-name>
<servlet-class>ru.pravvich.servlets.AddUserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddUserServlet</servlet-name>
<url-pattern>/addition</url-pattern>
</servlet-mapping>
我的JSP網頁:
<body>
<ul>
<li><a href="addition.jsp">addition</a></li>
</ul>
</body>
而且隨着doGet
方法爲它的servlet:
public class HomePageServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF8");
req.getRequestDispatcher("/WEB-INF/views/index.jsp").forward(req,resp);
}
}
而且通過http://localhost:8080/items/
我得到我的主頁。
但是,當我在參考單擊從index.jsp
,返回:HTTP Status [404] – [Not Found]
我addition.jsp
同樣橫亙在/WEB-INF/views/addition.jsp
我的servlet工作與addition.jsp
:
public class AddUserServlet extends HttpServlet {
private DBJoint db;
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
db = (DBJoint) getServletContext().getAttribute("db");
db.getDBExecutor().addUser(
new User(req.getParameter("name"),
req.getParameter("login"),
req.getParameter("email")));
req.setAttribute("serverAnswer", "Add ok!");
req.getRequestDispatcher("/WEB-INF/views/answer.jsp").forward(req, resp);
}
}
而且addition.jsp
:
<body>
<form method="post" action="addition">
<input type="text" required placeholder="name" name="name"><br>
<input type="text" required placeholder="login" name="login"><br>
<input type="text" required placeholder="email" name="email"><br>
<input type="submit" value="add">
</form>
</body>
謝謝。但是我在AddUserServlet和addition.jsp之間的數據傳輸沒有問題。我的問題:我的參考文獻'
你試過這樣嗎? ' addition.jsp servlet的名稱> /addition.jsp 加成。jsp servlet-name> /addition url-pattern> servlet-mapping> ' –
我想問你一些問題,請問:) web.xml中的Servlet映射是否需要?因爲我構建的項目和web.xml是空的,但我創建每個servlet,右鍵單擊並添加servlet,在部署描述符包括服務器映射,我看到那裏我的小服務程序,但我沒有手動添加。我正在使用Eclipse IDE。 –