WELD-001408 & ValidationInterceptor & Glassfish 4.0x & EAR & CODi не может быть развернут?

Я перевожу наше приложение JSF/Primefaces 3.5.x GF 3.1.1 на GF 4.0. Это EAR с войной, EJB-флягой и флягой, полной фляг.

WAR имеет WEB-INF/lib имеет:

org.apache.myfaces.extensions.cdi.core:myfaces-extcdi-core-api: 1.0.5, org.apache.myfaces.extensions.cdi.core:myfaces-extcdi-core-impl: 1.0.5 ",
'org.apache.myfaces.extensions.cdi.modules: myfaces-extcdi-jsf20-module-api:1.0.5', 'org.apache.myfaces.extensions.cdi.modules: myfaces-extcdi-jsf20-module-impl:1.0.5',

в дополнение к PF-материалам и Omnifaces и некоторым другим зависимостям (сообщения codi также включают api & impl - должно быть транзитивным dep). ПРИМЕЧАНИЕ: в WAR нет материалов для проверки CODi, а также нет спящих банок.

В EAR Lib также есть куча jar-файлов - он не дублирует содержимое CODi и пропускает PF, он включает в себя некоторые элементы скорости и скорости, Apache Commons и некоторые другие вещи - СНОВА, нет CODi-валидатора или гибернации.

При развертывании я получаю:

org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Validator] with qualifiers [@Default] at injection point [[UnbackedAnnotatedField] @Inject private org.hibernate.validator.internal.cdi.interceptor.ValidationInterceptor.validator]

Я видел 2 других сообщения SO, связанных с этим:

WELD-001408 Неудовлетворенные зависимости для типа [Validator]

&

CDI / Weld Неудовлетворенные зависимости

Ни один из них не проливает свет на то, что оба предполагают, что за этим стоит валидатор CODI - но у меня его просто нет в моем подразделении (или EAR).

Есть ли способ обойти это?

Переключение на DeltaSpike (и / или OS890 codi DS combo) не является немедленным вариантом; также не использует ee7. Мне нужно попытаться заставить это работать с как можно меньшим количеством изменений кода.

Есть идеи?

2 ответа

Они просто написали в Твиттере, что последний снимок можно использовать с EE7. Я полагаю, что никто не сообщил о проблеме обратно (по крайней мере, я не видел JIRA-билет до сегодняшнего дня).

Я нашел следующее решение:

В "myfaces-extcdi-jsf20-module-impl-1.0.5.jar" полностью удалите пакет "org.apache.myfaces.extensions.cdi.jsf.impl.bv".

Ничего идеального, но у меня пока работает...

Другие вопросы по тегам