部署到Wildfly 10的servlet的路径映射

时间:2016-08-11 23:35:27

标签: java servlets servlet-3.0 wildfly-10

我第一次尝试创建一个servlet,结果出现了一个我无法解决的问题;(

我的输入页面,简单的hello world,看起来就是这样:

@WebServlet("/")
public class EntryServlet extends HttpServlet {


   @Override
   protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
       resp.setContentType("text/html");

       PrintWriter writer = resp.getWriter();
       writer.println("Hello World");
       writer.close();
   } 

所以我对@WebServlet(“/”)的期望是GET /返回Hello World页面 所有其他请求,例如GET / wrong-url应该返回404.令人惊讶的是,在将WAR部署到Wildfly10后,我为每个尝试过的网址收到了“Hello World”。

所以@WebServlet(“/”)表现得有点像@WebServlet(“/ *”) - 它应该是它还是我做错了什么?

UPDATE
我在这里找到了答案: Difference between / and /* in servlet mapping url pattern

1 个答案:

答案 0 :(得分:0)

我认为使用@WebServlet(“/ helloworld”)而不是@WebServlet(“/”)。所以如果你把GET / wrong-url放到它会产生404错误。