Загрузка классов JBoss 6.4
У меня есть.ear, который содержит несколько.war, и я хотел бы развернуть его на сервере jboss 6.4.7. Проблема в том, что один из.war использует модуль jboss (hibernate-jpa-2.0), но приложение требует версию hibernate-jpa-2.1. Как рассказать мою войну, не используя этот модуль jboss. Я добавил структуру jboss-deploying в Ear/application/META-INF с этим исключением:
<jboss-deployment-structure>
<ear-subdeployments-isolated>true</ear-subdeployments-isolated>
<sub-deployment name="myapp.war">
<exclusions>
<module name="javax.persistence.api" />
</exclusions>
</sub-deployment>
</jboss-deployment-structure>
но не работает..
Файл "javax.persistence.api" записан в файле module.xml на сервере jboss.
Спасибо за вашу помощь.
1 ответ
Добавить следующее
<jboss-deployment-structure>
<ear-subdeployments-isolated>true</ear-subdeployments-isolated>
<sub-deployment name="myapp.war">
<exclude-subsystems>
<subsystem name="jpa" />
</exclude-subsystems>
<exclusions>
<module name="javaee.api" />
</exclusions>
</sub-deployment>
</jboss-deployment-structure>
Подсистема - это набор возможностей, добавляемых расширением. Он определяет, как он будет использоваться и настраиваться. Он также определяется в файле конфигурации EAP (standalone.xml или domain.xml) с использованием тега под профилем. Для каждого расширения, добавленного в экземпляр EAP, возможности и атрибуты этого расширения настраиваются с помощью
<subsystem>
элемент.
Другим вариантом может быть просто заменить банку в JBOSS на новый