如何在注释中为web.XML提供注释映射。我已经完成了web.XML.我想尝试使用注释映射,如下所示:
<web-app>
<servlet-mapping>
</servlet-mapping>
</web-app>
注释表示元数据。如果使用注释,则不需要部署描述符(web.xml文件)。但是您应该有tomcat7,因为它不会在以前版本的tomcat中运行@WebServlet注释用于映射具有指定名称的servlet。
@WebServlet("/Simple")
public class Simple extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out=response.getWriter();
out.print("<html><body>");
out.print("<h3>Hello Servlet</h3>");
out.print("</body></html>");
}
}
一个简单的例子是:
@WebServlet(value="/hello")
public class HelloServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
// then write the data of the response
String username = request.getParameter("username");
if (username != null && username.length() > 0) {
out.println("<h2>Hello, " + username + "!</h2>");
}
}
}
问题内容: 我在Web应用程序中一起使用jsf和spring。我已经在一个配置类中配置了数据源和会话工厂,该配置类使用了诸如此类的注释。我在我的项目中没有任何applicationContext.xml文件,因为我正在处理Configuration类中上下文xml的每个条目。该测试用例成功运行,但是当我部署Web应用程序时,它给了我错误 java.lang.IllegalStateExceptio
提前谢了。
问题内容: 前面提到的依赖项对我不起作用。从Jersey用户指南中: Jersey提供了两个Servlet模块。第一个模块是Jersey核心Servlet模块,它提供核心Servlet集成支持,并且在任何Servlet 2.5或更高版本的容器中都是必需的: 为了支持其他Servlet 3.x部署模式和异步JAX-RS资源编程模型,需要一个附加的Jersey模块: 模块取决于模块,因此,在使用该模块
问题内容: 我有一个内容为web.xml的文件: 我尝试过要求 这两个请求都由Servlet2处理。为什么? 更新 谢谢你们的帮助。我意识到行为取决于servlet映射声明的顺序。我尝试了这个web.xml 结果: 问题答案: 从Servlet 3.0 规范开始,这是Web容器在收到请求后必须定位servlet的方式(重点是我的): 用于映射到servlet的路径是来自请求对象的请求URL减去上下
我试过请求 这两个请求都由Servlet2处理。为什么? 更新 结果:
问题内容: 我有一个现有的Web应用程序,我希望将其转换为不带Servlet 3.0的web.xml。我设法使其正常工作,但是web.xml中有2个标记,但我仍然不知道在无web.xml的环境中的等效代码。 任何帮助表示赞赏 问题答案: 在Servlets 3.0中,在许多情况下不需要web.xml,但是有时它是必需的或仅是有用的。您的情况只是其中之一- 没有特殊的注释来定义欢迎文件列表或错误页面