servlet 中web.xml在eclipse下报错?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet 中web.xml在eclipse下报错?相关的知识,希望对你有一定的参考价值。
这是用eclipse中java ee tools生成的web.xml文件,但是他自己报错。为什么?
参考技术A 你的命名空间的样式应用不全,有些没有添加进去 参考技术B 你的命名空间的样式应用不全,有些没有添加进去在 Eclipse Juno 4.2 中创建 servlet 时未自动获取 web.xml 文件
【中文标题】在 Eclipse Juno 4.2 中创建 servlet 时未自动获取 web.xml 文件【英文标题】:Not getting automatically web.xml file while creating servlet in Eclipse Juno 4.2 【发布时间】:2013-01-29 01:41:24 【问题描述】:我正在使用 Eclipse Juno 4.2、Java 1.7 和 Tomcat 7。但是在我的系统中,当我创建 servlet 时,web.xml
文件不会自动创建,但另一个系统会自动创建 web.xml
文件。我完全糊涂了,有什么要配置的吗?
当我要创建动态项目时,我还添加了web.xml
文件。
【问题讨论】:
【参考方案1】:如果您使用 Servlet 2.5 版本而不是 3.0,则 web.xml 将自动更新以包含您创建的 servlet。
【讨论】:
【参考方案2】:Tomcat 7 是一个与 Servlet 3.0 兼容的容器。从 Servlet 3.0 开始,servlet 可以通过类上的@WebServlet
注释进行配置,而无需web.xml
配置条目。仔细查看您刚刚创建的 servlet 类,上面有一个 @WebServlet
注释,其中包含您在 New Servlet 向导中指定的所有信息。
实际上,这种配置 servlet 的新方法
@WebServlet("/hello")
public class HelloServlet extends HttpServlet
与配置 servlet 的传统方式完全相同
<servlet>
<servlet-name>helloServlet</servlet-name>
<servlet-class>com.example.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
如果出于某种原因您仍希望 Eclipse 创建 web.xml
条目,那么您应该在 Project Facets 中将 Dynamic Web Module 版本从 3.0 更改回 2.5项目属性部分。
【讨论】:
但是如果不对 tomcat 7 进行进一步调整,该注释将无法工作。请参阅 ***.com/questions/11669507/… @arun 请不要将“嵌入式 Tomcat”与“Tomcat”混淆。当前的问题是关于 Tomcat,您链接的问题是关于 Embedded Tomcat,这是完全不同的事情。 即使在使用多个 servlet 时,@WebServlet
标签也能正常工作吗?
@BalusC,谢谢,解释有帮助。但是,是否可以配置 Eclipse - 创建 web.xml 并添加 Servlet 条目作为对新 @WebServlet
注释的响应 - 以实现向后兼容性? (如果我想使用 Servlet 2.5 部署应用程序)
@NShomik:只需将动态 Web 项目方面的版本设置为 2.5。以上是关于servlet 中web.xml在eclipse下报错?的主要内容,如果未能解决你的问题,请参考以下文章
Eclipse新建Servlet时候,不会自动生成mapping到web.xml,而是在代码中加入注解@WebServlet
Servlet开发技术,创建,以及Servlet的配置,web.xml的配置
eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servle