Java 实例化servlet类时出错-HTTP状态500
正在尝试创建新的servlet。。。。但是得到了错误 HTTP状态500-实例化servlet类时出错Java 实例化servlet类时出错-HTTP状态500,java,servlets,Java,Servlets,正在尝试创建新的servlet。。。。但是得到了错误 HTTP状态500-实例化servlet类时出错 我的servlet类看起来像 package com.example.tutorial; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.
package com.example.tutorial;
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;
@WebServlet(description = "Test servlet this is", urlPatterns = { "/servletexample" })
public class ServletExample extends HttpServlet {
private static final long serialVersionUID = 1L;
public ServletExample() {
super();
}
protected void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("Testing servlet !!!");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>ServletJSPExample</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>ServletExample</servlet-name>
<servlet-class>com.example.tutorial.ServletExample</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletExample</servlet-name>
<url-pattern>/servletexample</url-pattern>
</servlet-mapping>
</web-app>
ServletJSPExample
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
servlete示例
com.example.tutorial.ServletExample
servlete示例
/servlete示例
不知道发生了什么。。。。。。非常感谢您的帮助……您可以删除注释或web.xml映射 如果两种方法都需要,则应类似于以下内容:
@WebServlet(name = "ServletExample", urlPatterns = {"/servletExample"})
public class ServletExample extends HttpServlet {
....
}
web.xml中的映射应该是:
<servlet>
<servlet-name>ServletExample</servlet-name>
<servlet-class>com.example.tutorial.ServletExample</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletExample</servlet-name>
<url-pattern>/servletExample</url-pattern>
</servlet-mapping>
servlete示例
com.example.tutorial.ServletExample
servlete示例
/servlete示例
在我看来,@WebServlet注释中缺少“name”属性。放置它并重试。如果500,则会出现异常。请出示stacktrace@WebServlet注释就足够了。您不需要在web.xml中再次为其配置Servlet标记。在Servlet 3.0中,引入了几个新的注释,它们是包javax.Servlet.annotation的一部分。它们仅用于提供元数据。在JSR 315中,可以使用@WebServlet指定Servlet元数据。因此,当您使用@WebServlet之类的注释时,您不再需要任何部署描述符(web.xml)。因此,要么在不使用web.xml的情况下使用@WebServlet注释,要么删除注释并使用web.xml。不要两者都使用。答案在异常和堆栈跟踪中。阅读服务器日志。嗨,谢谢你的帮助。我从web.xml中删除了servlet描述,它运行良好。很高兴它有帮助。。。那么,你为什么不接受它作为答案,帮助那些遇到同样问题的社区呢?