这是我的第一个Servlet,我做任何书都说,但得到404
错误。
我使用Tomcat 7.0.56
和Windows 7
,我已经设置了所有可变环境。
这是我的servlet:
@WebServlet("/FirstServlet/PersonalServlet")
public class PersonalServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
response.setContentType("text/HTML");
PrintWriter out = response.getWriter();
out.println("<HTML>");
out.println("<HEAD>");
out.println("<TITLE>Simple Servlet</TITLE>");
out.println("</HEAD>");
out.println("<BODY>");
out.println("<BR><BR><BR>");
String clientName = request.getParameter("firstName");
out.println("<H1> A Simple Servlet for ");
out.println(clientName + "</H1></CENTER>");
out.println("</BODY>");
out.println("</HTML>");
out.flush();
}
}
这是Hello.html
C:\tomcat\webapps\FirstServlet\Hello.html
<html>
<head>
<title></title>
</head>
<body>
<form method=GET action="PersonalServlet">
Enter Your first name:
<input type="text" name="firstName" value="">
<br> <br>
<input type="submit" value="submit">
</form>
</body>
</html>
以下是web.xml
中的C:\tomcat\webapps\FirstServlet\WEB-INF
:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns=" http://java.sun.com/xml/ns/javaee "
xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance "
xsi:schemaLocation=" http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd "
version="3.0">
<servlet>
<servlet-name>PersonalServlet</servlet-name>
<servlet-class>PersonalServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>PersonalServlet/servlet-name>
<url-pattern>/PersonalServlet</url-pattern>
</servlet-mapping>
</web-app>
我的tomcat已成功配置,
但是当我尝试http://127.0.0.1:8080/FirstServlet/PersonalServlet
或http://127.0.0.1:8080/FirstServlet/
我收到了这个错误。
我把servlet类放在C:\tomcat\webapps\FirstServlet\WEB-INF\classes
答案 0 :(得分:0)
在这里提供完全合格的班级名称..
内部web.xml
<servlet-class>**Fully qualified class name**</servlet-class>
为什么同时使用xml和Annotation,删除
@WebServlet("/FirstServlet/PersonalServlet")
来自你的班级..
答案 1 :(得分:0)
答案 2 :(得分:-1)
这应该是这样的:
<web-app>
<servlet>
<servlet-name>PersonalServlet</servlet-name>
<servlet-class>PersonalServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>PersonalServlet</servlet-name>
<url-pattern>/PersonalServlet/*</url-pattern>
</servlet-mapping>
</web-app>