将war部署到JBoss AS 7(域模式)时出错:“无法处理部署的阶段结构”

我正试图在域模式下将我的战争部署到JBoss AS 7中,我收到此错误:

[Server:node02] 13:51:46,049 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-11) MSC00001: Failed to start service jboss.deployment.unit."ROOT.war".STRUCTURE: org.jboss.msc.service.StartException in service jboss.deployment.unit."ROOT.war".STRUCTURE: Failed to process phase STRUCTURE of deployment "ROOT.war" [Server:node02] at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] [Server:node02] at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] [Server:node02] at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA] [Server:node02] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_30] [Server:node02] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_30] [Server:node02] at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30] [Server:node02] Caused by: java.lang.IllegalArgumentException: Given parent is not an ancestor of this virtual file [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:116) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:122) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:122) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:122) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:122) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.vfs.VirtualFile.getPathNameRelativeTo(VirtualFile.java:110) [jboss-vfs-3.1.0.Final.jar:3.1.0.Final] [Server:node02] at org.jboss.as.server.deployment.module.ManifestClassPathProcessor.createAdditionalModule(ManifestClassPathProcessor.java:193) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] [Server:node02] at org.jboss.as.server.deployment.module.ManifestClassPathProcessor.handlingExistingClassPathEntry(ManifestClassPathProcessor.java:185) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] [Server:node02] at org.jboss.as.server.deployment.module.ManifestClassPathProcessor.deploy(ManifestClassPathProcessor.java:162) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] [Server:node02] at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final] [Server:node02] ... 5 more [Server:node02] [Server:node02] 13:51:46,060 INFO [org.jboss.as.server] (host-controller-connection-threads - 3) JBAS015870: Deploy of deployment "ROOT.war" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"ROOT.war\".STRUCTURE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"ROOT.war\".STRUCTURE: Failed to process phase STRUCTURE of deployment \"ROOT.war\""}} [Server:node02] 13:51:46,062 INFO [org.jboss.as.server.deployment] (MSC service thread 1-9) JBAS015877: Stopped deployment ROOT.war in 1ms [Server:node02] 13:51:46,063 INFO [org.jboss.as.controller] (host-controller-connection-threads - 3) JBAS014774: Service status report [Server:node02] JBAS014777: Services which failed to start: service jboss.deployment.unit."ROOT.war".STRUCTURE: org.jboss.msc.service.StartException in service jboss.deployment.unit."ROOT.war".STRUCTURE: Failed to process phase STRUCTURE of deployment "ROOT.war" [Server:node02] 

我的jboss-deployment-structure.xml如下所示

       <!--  -->                       

这是JBOSS AS 7.1.1-Final中的一个错误,它已在较新版本中修复。

作为好的arcticle JBoss AS 7.1.2和7.1.3的奇怪案例解释了JBoss AS 7.1.1充满了bug。

所以我从源代码构建了JBoss 7.2.0,不再出现此错误。

我刚刚遇到了EAP 6.1和JBoss Developer Studio 6.0的这个问题。 我已经从使用EAP Server 6.0转到6.1。 解决方法是从我的机器中删除有问题的* .war文件的所有实例,然后在重新启动新的EAP 6.1运行时服务器后执行.war项目的完全发布。

当我的应用程序从jboss5升级到jboss-as-7.1.1时,我也面临同样的问题。经过一整天的研究,将版本更改为jboss-as-7.1.3.Final解决了我的问题。
jboss-as-7.1.3.Final不能直接下载,开发人员必须自己构建它, building-jboss-as-7.1.3.Final显示构建jboss-as-7.1.3.Final的完整过程。

希望这有助于某人。

我也面临同样的问题,在将java jdk版本1.6更改为1.7后解决它。