我使用eclipse JUNO运行一个简单的"Helloworld“servlet,并使用JBoss 7.1作为服务器。
下面是我运行的代码
import java.io.IOException;
import javax.servlet.ServletException;`
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Hello extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
PrintWriter out = response.getWriter();
out.println("Hello World");
}
}并且我的web.xml是(即使在运行servlet之后)
<display-name>bjp</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>
</web-app>显然,web.xml没有使用servlet信息进行更新,比如servlet映射和servlet类。
为什么web.xml没有使用servlet类进行更新?它在Tomact..Please上运行得很好,帮助我
发布于 2013-03-26 15:13:30
您使用的是哪个版本的servlet?如果您使用的是Servlets3.0,那么servlet可以通过@WebServlet注释进行配置,因此不需要web.xml配置,这就是为什么在您创建web.xml时Eclipse不会自动更新servlet文件的原因。所以你可以有一个像这样的代码:
@WebServlet("/Hello")
public class Hello extends HttpServlet {它将执行与web.xml配置相同工作。如果您仍然希望生成web.xml,并且不想使用注释,那么在创建动态web项目时,您必须将version从3.0更改为2.5。
https://stackoverflow.com/questions/14222972
复制相似问题