cub*_*beb 4 java jsp servlets intellij-idea
我试图运行我的jsp页面和servlet.当我尝试通过url调用它时找不到Servlet
http:// localhost:8080/StudentServlet 我收到404错误说:
"请求的资源不可用".
我也试图通过表格来调用它.当我单击提交时,无法识别它产生相同的错误.
在这里阅读答案,要求使用Maven或通过web.xml设置映射.根据我的理解,通过web.xml设置是旧方法,新方法是在我拥有的servlet上设置名称.不确定我做错了什么.
我没有使用和构建工具,只是启动我在本地使用的Tomcat服务器来运行jsp页面.但Servlet无法识别.添加了项目结构的截图,以防出现问题.
Servlet的
@WebServlet(name = "StudentServlet")
public class StudentServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<h3>Student name is:" +
request.getParameter("firstname") +
" " +
request.getParameter("lastname") +
"</h3>");
out.println("</body></html>");
}
}
Run Code Online (Sandbox Code Playgroud)
的index.jsp
<form action="StudentServlet" method="get">
First Name: <input type="text" name="firstname"/>
<br/><br/>
Last Name: <input type="text" name="lastname"/>
<br/><br/>
<input type="submit" value="Submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)
项目结构
WebServlet文档说明以下内容:
必须在注释的
valueorurlPattern属性中声明至少一个URL模式,但不能同时在两者中声明.
您可以使用以下内容:
@WebServlet("/StudentServlet")
Run Code Online (Sandbox Code Playgroud)
或这个:
@WebServlet(name = "StudentServlet", urlPatterns={"/StudentServlet"})
Run Code Online (Sandbox Code Playgroud)
或这个:
@WebServlet(name = "StudentServlet", value="/StudentServlet")
Run Code Online (Sandbox Code Playgroud)
该
value属性被建议用于URL模式是唯一的属性被设置,否则urlPattern应使用属性.
| 归档时间: |
|
| 查看次数: |
2919 次 |
| 最近记录: |