[英]tomcat resource missing, servlet not running
import javax.servlet.*;
import java.io.*;
public class MyServlet implements Servlet
{
public void init(ServletConfig con) {}
public void service(ServletRequest req, ServletResponse res) throws IOException,ServletException
{
res.setContentType("text/html");
PrintWriter out=res.getWriter();
String s="blah";
String s1="blah";
out.println("<html><body>");
if((s.equals(req.getParameter("firstname")))&&(s1.equals(req.getParameter("pwd"))))
out.println("passwords match");
else
out.println("password and name combo does not match");
out.println("</body></html>");
}
public void destroy() {}
public ServletConfig getServletConfig() { return null;}
public String getServletInfo() { return null;}
}
这是我的java文件,其中servlet class.its以名称MyServlet.java保存,因此是类文件。
这是xml文件:
<web-app>
<servlet>
<servlet-name>demoo</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demoo</servlet-name>
<url-pattern>/demo</url-pattern>
</servlet-mapping>
</web-app>
我已将文件夹设为WEB-INF,然后是类... WEB-INF也包含.xml文件
但是当我尝试运行servlet时,它说资源未找到ps-我已经在寻找名为的servlet:demo
localhost:8081 / s1 / demo * s1是war文件*
war文件中的html文件似乎在服务器上正常运行。
*
如果您使用的是Java 6,只需在servlet类中添加以下注释,并从WEB-INF
目录中删除web.xml
文件。 我希望它能奏效
@WebServlet(name = "MyServlet", urlPatterns = {"/demo"})
使用以下代码,删除web.xml,重新编译和部署Web应用程序
import javax.servlet.*;
import java.io.*;
import javax.servlet.annotation.WebServlet;
@WebServlet(name = "MyServlet", urlPatterns = {"/demo"})
public class MyServlet implements Servlet {
public void init(ServletConfig con) {
}
public void service(ServletRequest req, ServletResponse res) throws IOException, ServletException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String s = "blah";
String s1 = "blah";
out.println("<html><body>");
if ((s.equals(req.getParameter("firstname"))) && (s1.equals(req.getParameter("lastname")))) {
out.println("passwords match");
} else {
out.println("password and name combo does not match");
}
out.println("</body></html>");
}
public void destroy() {
}
public ServletConfig getServletConfig() {
return null;
}
public String getServletInfo() {
return null;
}
}
如果您正在为项目使用maven,那么本地应用程序启动可能会这样做:
mvn clean tomcat:run-war
别忘了在你的pom.xml中提到
<packaging>war</packaging>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.