2016-08-04 8 views
1

У меня следующая структура EAR, который развернут на WildFly 9.0.2wildfly порядок загрузки классов для банок в ухе/Библиотеке

root.ear 
    |-ejb1.jar 
    |-ejb2.jar 
    |-lib/ 
     |-libA.jar 
     |-libB.jar 

libA.jar и libB.jar оба имеют один и тот же класс. У меня нет доступа к изменению libB.jar, и мне нужны оба модуля EJB для выбора класса из libA.jar.

Как обеспечить соблюдение этого, как в случае с classpath, при заказе банки по мере необходимости?

ответ

2

Если вашим банкам EJB необходим доступ к классам в обеих баночках, вы должны удалить ненужный класс из libB.jar.

Все банки в каталоге EAR lib считаются одним и тем же модулем, когда речь идет о видимости класса. Это предусмотрено спецификацией Java EE.

Вы могли уйти с добавлением записи Class-Path к файлу MANIFEST.MF в каждом банке EJB:

Class-Path: Библиотека/libA.jar Lib/libB.jar

+0

Класс -Поле логики не работает –