Eclipse错误。 valve元素类型“jboss-web”的内容必须匹配... jboss-web.xml

时间:2016-08-03 09:10:14

标签: java xml eclipse jboss dtd

我使用eclipse mars.2 我正在尝试导入现有的ecplipse项目,我收到一个错误:

The content of element type "jboss-web" must match "(class-loading?,security-domain?,context-root?,virtual-host*,use-session-cookies?,replication-config?,resource-env-ref*,resource-ref*,security-role*,ejb-ref*,ejb-local-ref*,message-destination-ref*,message-destination*,webservice-description*,service-ref*,depends*,servlet*,authenticators*)".    

jboss-web.xml文件

<!DOCTYPE jboss-web PUBLIC
  "-//JBoss//DTD Web Application 2.4//EN"
  "http://www.jboss.org/j2ee/dtd/jboss-web_4_0.dtd">

<jboss-web>
    <security-domain>java:/jaas/SPNEGO</security-domain>
<valve>
        <class-name>org.jboss.security.negotiation.NegotiationAuthenticator</class-name>
    </valve>
</jboss-web>

我不明白为什么jboss-web_4_0.dtd不包含vavlve。 当我删除阀门 - 错误消失。但我需要它。 请帮帮我。

1 个答案:

答案 0 :(得分:0)

艾伦,

你应该对jboss-web.xml使用不同的xml声明,因为这个元素首先在JBoss AS 7中引入。你的文件使用JBoss AS 4.0.x的dtd文件。 ;)

<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.jboss.org/schema/jbossas
    http://www.jboss.org/schema/jbossas/jboss-web_7_0.xsd">

...

</jboss-web>