我在我的应用中使用了@WebServlet
注释,如下所示:
@WebServlet("/tokenize")
public class TokenizerServlet extends HttpServlet {
...
}
这在Eclipse中的“localhost的J2EE预览”中不起作用。对http://localhost:8080/myApp/tokenizer
的任何请求都会返回404.当从web.xml
映射时,此相同的网址可以正常工作。
但是,当部署应用程序时(在我的情况下为Azure),可以正常工作。所以问题不在代码或配置中,而是与Eclipse中的预览服务器有关。
如何配置预览服务器以尊重我的注释?我到处寻找,似乎没有太多配置可言。我web.xml
的根元素如下所示:
<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">
在项目的“J2EE Preview”节点下,我有:
更新 -
我从未得到过这方面的解决方案,但我发现在本地运行Tomcat非常容易,我刚刚开始这样做了。我在这里留下这个问题以防其他人有同样的问题,只是因为你知道你并不孤单,也许有人会在某个时候提供答案。