【问题标题】:Attributes in the web.xml's <web-app> don't work in Eclipseweb.xml 的 <web-app> 中的属性在 Eclipse 中不起作用
【发布时间】:2012-05-10 01:29:07
【问题描述】:

我有一个多模块 Maven 项目。它在 NetBeans 中运行良好。但不是在 Eclipse (EE Helios SR 1) 中。在 web.xml 文件中,我有以下内容:

<web-app version="3.0" 
         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"
             metadata-complete="true">

我收到 5 个 xml 错误。每个看起来都是这样的:

必须为元素类型“web-app”声明属性“version”

并且在其他错误中将"version" 部分更改为"xmlns:xsi" 等等。我尝试将动态 Web 模块版本更改为 3.0,但没有帮助。

在迁移到 Eclipse 时,我在 war 模块中使用了 mvn eclipse:eclipse -Dwtpversion=2.0,在其他模块中使用了 mvn eclipse:eclipse。我还安装了m2em2e-wtp 插件。所以,我想这个项目应该可以正常工作。

为什么 Eclipse 不能处理在另一个 IDE 中工作的项目?我还不得不将其中一个 JSP 上的 &lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %&gt; 更改为 &lt;%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %&gt;,这也有点奇怪,因为这个 uri 的旧版本在 NetBeans 中工作。

希望有人能澄清其(出乎我意料的)行为的原因以及如何解决此问题。

【问题讨论】:

  • 接受的答案并没有完全解决这个问题。我已经为另一个问题写了一个答案。请检查一次。 Here是链接

标签: java eclipse maven web.xml


【解决方案1】:

改用 2.4。

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee">

已编辑。

【讨论】:

  • 感谢您的回复。太糟糕了,您的代码示例中的每个属性都有相同的错误。您知道为什么会发生这种情况吗?
  • 查看已编辑。保存文件后,选择project -&gt;clean 重新验证并编译您的项目实例。
  • 太好了,现在可以使用了。好吧,我仍然不知道如何正常运行它(NetBeans 在某些方面要容易得多),但这是另一个问题,并且没有错误,这很好,谢谢。不过,如果您能解释它在不同 IDE 中工作方式不同的原因,我将不胜感激。
猜你喜欢
  • 2014-08-25
  • 2021-12-31
  • 1970-01-01
  • 1970-01-01
  • 2012-04-27
  • 2013-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多