2011-01-05 45 views
2

爲什麼我在這個非常簡單的jboss-web.xml文件中的元素「resource-ref」上有驗證錯誤?jboss-web.xml驗證錯誤

<?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.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-web_6_0.xsd" 
    version="6.0"> 

    <resource-ref> 
     <res-ref-name>jdbc/RoadsDB</res-ref-name> 
     <jndi-name>java:/RoadsDB</jndi-name> 
    </resource-ref> 

</jboss-web> 

如果我把XML聲明遠離這樣的,我沒有問題,部署我的應用程序:

<jboss-web> 

    <resource-ref> 
     <res-ref-name>jdbc/RoadsDB</res-ref-name> 
     <jndi-name>java:/RoadsDB</jndi-name> 
    </resource-ref> 

</jboss-web> 

我只是想知道是什麼問題。

+0

你要說什麼錯誤了,還是讓我們猜測? – skaffman 2011-01-05 14:24:35

+0

這是「resource-ref」元素上的驗證錯誤。 – user564032 2011-01-05 14:30:17

+0

Eclipse給我的錯誤消息:找到無效內容從元素「resource-ref」開始。 和JBoss說:無法解析.../jboss-web.xml的Java綁定(檢查模式綁定解析器配置) – user564032 2011-01-05 14:32:38

回答

0

這是因爲resource-ref與模式jboss-web_6_0.xsd不存在。對於jboss-web_6_0.xsd,這些是以下元素有效

<xsd:sequence> 
    <xsd:element name="class-loading" type="jboss:class-loadingType" minOccurs="0"/> 
    <xsd:element name="security-domain" type="jboss:security-domainType" minOccurs="0"/> 
    <xsd:element name="jacc-star-role-allow" type="jboss:jacc-star-role-allowType" minOccurs="0"/> 
    <xsd:element name="context-root" type="jboss:context-rootType" minOccurs="0"/> 
    <xsd:element name="virtual-host" type="jboss:virtual-hostType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="use-session-cookies" type="jboss:use-session-cookiesType" minOccurs="0"/> 
    <xsd:element name="replication-config" type="jboss:replication-configType" minOccurs="0"/> 
    <xsd:group ref="jboss:jndiEnvironmentRefsGroup"/> 
    <xsd:element name="security-role" type="jboss:security-roleType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="message-destination" type="jboss:message-destinationType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="webservice-description" type="jboss:webservice-descriptionType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="depends" type="jboss:dependsType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="servlet" type="jboss:servletType" minOccurs="0" maxOccurs="unbounded"/> 
    <xsd:element name="max-active-sessions" type="jboss:max-active-sessionsType" minOccurs="0"/> 
    <xsd:element name="passivation-config" type="jboss:passivation-configType" minOccurs="0"/> 
    <xsd:element name="annotation" type="jboss:annotationType" minOccurs="0"/> 
</xsd:sequence> 
+0

是的。我知道這一點,因爲日食讓我自動完成這些元素。但是這並不能解決問題。因爲資源ref在這裏似乎是允許的,因爲jboss評估這個條目來設置我的數據源綁定。或者我應該如何描述我的資源引用? – user564032 2011-01-05 15:00:19

+0

資源引用在'web.xml'中描述。 jboss的方式(如果我沒有弄錯)在jboss 3和4中是可以接受的。之後,我從來沒有和JBoss合作過,所以我不能真正幫忙。 – 2011-01-05 15:05:30

+0

非常感謝。讓我困惑的是,這個問題一方面需要這個入口,另一方面該架構不允許它。 – user564032 2011-01-05 15:16:13

2

這似乎是因爲JBoss的不喜歡,如果你把它們放在你的jboss-web.xml文件來解析模式定義,即使它是完全有效的XML。因此,如果您想添加定義,以便像Eclipse XML編輯器這樣的工具可以使用它們,那麼運氣不好,除非在部署應用程序之前再次刪除它們。

也許有人來自JBoss AS團隊可以發表評論。

FWIW,如果包含模式定義,這裏是您在JBoss 6.0 Final上遇到的錯誤。

12:47:27,359 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Parse: name=vfs:///C:/Development/SGMS/ChinaMobile/workspace/.metadata/.plugins/org.jboss.ide.eclipse.as.core/JBoss_6.0_Runtime_Server1305317047609/deploy/ChinaTDS.ear state=PreParse mode=Manual requiredState=Parse: org.jboss.deployers.spi.DeploymentException: Error creating managed object for vfs:///C:/Development/SGMS/ChinaMobile/workspace/.metadata/.plugins/org.jboss.ide.eclipse.as.core/JBoss_6.0_Runtime_Server1305317047609/deploy/ChinaTDS.ear/ChinaTDS_Web.war/ 
at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49) [:2.2.0.GA] 
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:383) [:2.2.0.GA] 
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:343) [:2.2.0.GA] 
at org.jboss.deployment.JBossWebAppParsingDeployer.createMetaData(JBossWebAppParsingDeployer.java:99) [:6.0.0.Final] 
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:315) [:2.2.0.GA] 
at org.jboss.deployment.JBossWebAppParsingDeployer.createMetaData(JBossWebAppParsingDeployer.java:80) [:6.0.0.Final] 
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.deploy(AbstractParsingDeployerWithOutput.java:255) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:179) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1832) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1550) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1603) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1491) [:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersImpl.java:1983) [:2.2.0.GA] 
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:1076) [:2.2.0.GA] 
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:679) [:2.2.0.GA] 
at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.process(MainDeployerPlugin.java:106) [:6.0.0.Final] 
at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.process(ProfileControllerContext.java:143) [:0.2.2] 
at org.jboss.profileservice.dependency.ProfileDeployAction.deploy(ProfileDeployAction.java:151) [:0.2.2] 
at org.jboss.profileservice.dependency.ProfileDeployAction.installActionInternal(ProfileDeployAction.java:94) [:0.2.2] 
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54) [jboss-kernel.jar:2.2.0.GA] 
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42) [jboss-kernel.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654) [jboss-dependency.jar:2.2.0.GA] 
at org.jboss.profileservice.dependency.ProfileActivationWrapper$BasicProfileActivation.start(ProfileActivationWrapper.java:190) [:0.2.2] 
at org.jboss.profileservice.dependency.ProfileActivationWrapper.start(ProfileActivationWrapper.java:87) [:0.2.2] 
at org.jboss.profileservice.dependency.ProfileActivationService.activateProfile(ProfileActivationService.java:215) [:0.2.2] 
at org.jboss.profileservice.dependency.ProfileActivationService.activate(ProfileActivationService.java:159) [:0.2.2] 
at org.jboss.profileservice.AbstractProfileService.activateProfile(AbstractProfileService.java:154) [:0.2.2] 
at org.jboss.system.tools.ProfileServiceToolsFacade.addURI(ProfileServiceToolsFacade.java:233) [:6.0.0.Final] 
at org.jboss.system.tools.LegacyDeploymentScannerAdapter.addURL(LegacyDeploymentScannerAdapter.java:140) [:6.0.0.Final] 
at org.jboss.system.tools.DeploymentScanner.addURL(DeploymentScanner.java:91) [:6.0.0.Final] 
at org.jboss.system.tools.DeploymentScanner.addURL(DeploymentScanner.java:83) [:6.0.0.Final] 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_26] 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [:1.6.0_26] 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [:1.6.0_26] 
at java.lang.reflect.Method.invoke(Unknown Source) [:1.6.0_26] 
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157) [:6.0.0.GA] 
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96) [:6.0.0.GA] 
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) [:6.0.0.GA] 
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:271) [:6.0.0.GA] 
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:670) [:6.0.0.GA] 
at org.jboss.system.server.jmx.MBeanServerWrapper.invoke(MBeanServerWrapper.java:138) [:6.0.0.Final (Build SVNTag:JBoss_6.0.0.Final date: 20101228)] 
at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown Source) [:1.6.0_26] 
at javax.management.remote.rmi.RMIConnectionImpl.access$200(Unknown Source) [:1.6.0_26] 
at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown Source) [:1.6.0_26] 
at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown Source) [:1.6.0_26] 
at javax.management.remote.rmi.RMIConnectionImpl.invoke(Unknown Source) [:1.6.0_26] 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_26] 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [:1.6.0_26] 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [:1.6.0_26] 
at java.lang.reflect.Method.invoke(Unknown Source) [:1.6.0_26] 
at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) [:1.6.0_26] 
at sun.rmi.transport.Transport$1.run(Unknown Source) [:1.6.0_26] 
at java.security.AccessController.doPrivileged(Native Method) [:1.6.0_26] 
at sun.rmi.transport.Transport.serviceCall(Unknown Source) [:1.6.0_26] 
at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) [:1.6.0_26] 
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) [:1.6.0_26] 
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) [:1.6.0_26] 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) [:1.6.0_26] 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [:1.6.0_26] 
at java.lang.Thread.run(Unknown Source) [:1.6.0_26] 

造成的:

java.lang.Exception: Failed to resolve Java binding for /C:/Development/SGMS/ChinaMobile/workspace/.metadata/.plugins/org.jboss.ide.eclipse.as.core/JBoss_6.0_Runtime_Server1305317047609/deploy/ChinaTDS.ear/ChinaTDS_Web.war/WEB-INF/jboss-web.xml (check the SchemaBinding resolver configuration) 
at org.jboss.xb.util.JBossXBHelper.parse(JBossXBHelper.java:259) [jbossxb.jar:2.0.3.GA] 
at org.jboss.xb.util.JBossXBHelper.parse(JBossXBHelper.java:231) [jbossxb.jar:2.0.3.GA] 
at org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer.parse(SchemaResolverDeployer.java:137) [:2.2.0.GA] 
at org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer.parse(SchemaResolverDeployer.java:121) [:2.2.0.GA] 
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parseAndInit(AbstractVFSParsingDeployer.java:352) [:2.2.0.GA] 
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parseAndInit(AbstractVFSParsingDeployer.java:334) [:2.2.0.GA] 
at org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer.parse(AbstractVFSParsingDeployer.java:251) [:2.2.0.GA] 
at org.jboss.deployers.spi.deployer.helpers.AbstractParsingDeployerWithOutput.createMetaData(AbstractParsingDeployerWithOutput.java:369) [:2.2.0.GA] 
... 76 more