【问题标题】:Servlet is not working and pages are not goes into tomcat webapps directoryServlet 不工作,页面没有进入 tomcat webapps 目录
【发布时间】:2015-09-23 03:17:04
【问题描述】:

我已经使用 Eclipse Luna IDE 和一个简单的 jsp 页面创建了一个简单的 servlet。当我部署它时,它不起作用。我正在使用 tomcat 8。

错误是

HTTP 状态 404 - /ServletLearning/DynamicPage/welcome 类型:状态报告

消息:/ServletLearning/DynamicPage/welcome

说明:请求的资源不可用。

我的代码在这里。

 package atulrai;

 import java.io.IOException;
 import java.io.PrintWriter;

 import javax.servlet.ServletException;
  import javax.servlet.annotation.WebServlet;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class DynamicServlet
*/
 @WebServlet("/DynamicServlet")
public class DynamicServlet extends HttpServlet {
/**
 * 
 */
private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException {


    res.setContentType("text/html");
    PrintWriter pw = res.getWriter();
    String name = req.getParameter("name");
    pw.println("Welcome " + name);
}
}

jsp页面是

 <html>
<head>
<meta charset="ISO-8859-1">
 <title>dynamic page using Servlet</title>
 </head>
 <body>
<form action="welcome" method="get">
    Enter your name:<input type="text" name="name"><br> 
    <input type="submit" value="login">
</form>

</body>
</html>

web.xml

  <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee       http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>ServletLearning</display-name>
<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>
    <servlet-name>atulrai</servlet-name>
    <servlet-class>DynamicServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>atulrai</servlet-name>
    <url-pattern>/welcome</url-pattern>
</servlet-mapping>

【问题讨论】:

  • 你得到的错误是什么。?当配置了 web.xml 时,我认为你不需要给 @webservlet 注释。
  • 错误是 HTTP 状态 404 - /ServletLearning/DynamicPage/welcome 类型:状态报告消息:/ServletLearning/DynamicPage/welcome 描述:请求的资源不可用。

标签: java jsp tomcat servlets servlet-3.0


【解决方案1】:

您需要将form标签的action属性值更改为

&lt;form action="${pageContext.request.contextPath}/welcome" method="get"&gt;

同时更改web.xml 以指向正确的位置。

<servlet>
    <servlet-name>atulrai</servlet-name>
    <servlet-class>atulrai.DynamicServlet</servlet-class>
</servlet>

使用annotationweb.xml 映射servlet。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 2012-12-04
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 2010-09-08
    • 2014-01-19
    相关资源
    最近更新 更多