переход с JBoss 4.2.3 на 5.1 - модуль, указанный в application.xml, не является распознанным развертыванием - PullRequest
1 голос
/ 03 марта 2011

У меня есть ухо, которое в настоящее время отлично работает при развертывании в JBoss 4.2.3.Я пытаюсь перейти на JBoss 5.0.1, но получаю сообщение об ошибке «модуль classpath, указанный в application.xml, не является распознанным развертыванием».

Ниже приведено строение моего уха:

              MyApp
                |       
                +- classpath
                |       
                +- lib
                |   |
                |   +- A.jar
                |   +- B.jar
                |   +- C.jar
                |
                +- META-INF 
                |   |
                |   +- application.xml
                |   +- jboss-app.xml
                |
                +- D.jar
                |
                *- E.jar
                |
                +- F.jar
                |
                +- myApp.war
                    |
                    +- WEB-INF
                    |
                    +- ....

Ниже приведено то, что у меня есть в моем application.xml:

<application>
  <display-name>MyApp</display-name>
  <module>
    <java>classpath</java>
  </module>
  <module>
    <java>lib/A.jar</java>
  </module>
  <module>
    <java>lib/B.jar</java>
  </module>
  <module>
    <java>D.jar</java>
  </module>

  ...      

  <module>
    <web>
      <web-uri>myApp.war</web-uri>
      <context-root>/WEB-INF</context-root>
    </web>
  </module>
</application>

Как уже упоминалось, текущая структура моегоear и application.xml, описанные выше, все отлично работает в JBoss 4.2.3.Тем не менее, когда я развертываю это JBoss 5.1.0, он не похож на модуль «classpath», определенный в application.xml.

Ниже приведена полная трассировка стека:

17:02:09,767 WARN  [HDScanner] Scan failed
    org.jboss.deployers.spi.DeploymentException: Exception determining structure: AbstractVFSDeployment(MyApp.ear)
        at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
        at org.jboss.deployers.structure.spi.helpers.AbstractStructuralDeployers.determineStructure(AbstractStructuralDeployers.java:85)
        at org.jboss.deployers.plugins.main.MainDeployerImpl.determineStructure(MainDeployerImpl.java:1004)
        at org.jboss.deployers.plugins.main.MainDeployerImpl.determineDeploymentContext(MainDeployerImpl.java:440)
        at org.jboss.deployers.plugins.main.MainDeployerImpl.addDeployment(MainDeployerImpl.java:390)
        at org.jboss.deployers.plugins.main.MainDeployerImpl.addDeployment(MainDeployerImpl.java:300)
        at org.jboss.system.server.profileservice.repository.MainDeployerAdapter.addDeployment(MainDeployerAdapter.java:86)
        at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:344)
        at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:255)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
    Caused by: java.lang.RuntimeException: Error determining structure: MyApp.ear
        at org.jboss.deployment.EARStructure.determineStructure(EARStructure.java:293)
        at org.jboss.deployers.vfs.plugins.structure.StructureDeployerWrapper.determineStructure(StructureDeployerWrapper.java:73)
        at org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl.doDetermineStructure(VFSStructuralDeployersImpl.java:196)
        at org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl.determineStructure(VFSStructuralDeployersImpl.java:221)
        at org.jboss.deployers.structure.spi.helpers.AbstractStructuralDeployers.determineStructure(AbstractStructuralDeployers.java:77)
        ... 16 more
    Caused by: java.lang.RuntimeException: classpath module listed in application.xml is not a recognized deployment, .ear: MyApp.ear
        at org.jboss.deployment.EARStructure.determineStructure(EARStructure.java:277)
        ... 20 more

Я рву себе волосы с этим!Любая помощь будет принята с благодарностью.

Спасибо

Ответы [ 2 ]

1 голос
/ 03 марта 2011

Хорошей новостью является то, что JBoss 5.x автоматически добавляет любые JAR-файлы в lib в путь к классу EAR, поэтому вам не нужно указывать их в application.xml.

Для вашего *Каталог 1005 *, вам придется переименовать его в classpath.jar, а затем 5.x должен принять его.

0 голосов
/ 04 марта 2011

Что такое

 <module>
    <java>classpath</java>
  </module>

Вы имеете в виду в application.xml?Это не похоже на действительное имя архива jar.Попробуйте удалить эту запись и заново развернуть ее.

...