Развертывание работает в Wildfly 14, но не в 15. IllegalArgumentException Не может требовать и предоставлять одну и ту же зависимость

Пытаюсь развернуть свое ухо на дикой мухе 15 или 16.

Я получаю эту ошибку:

"WFLYCTL0080: Failed services" => {"jboss.deployment.subunit.\"test.ear\".\"web.war\".INSTALL" => "WFLYSRV0153: Не удалось обработать фазу INSTALL подразвертывания \"web. война\» развертывания \"тест.ухо\" Вызвано: java.lang.IllegalArgumentException: не может требовать и предоставлять одинаковую зависимость: сервис jboss.naming.context.java.module.test.web.env.mainDB"}, mainDB — это источник данных postgresql, настроенный в файле standalone.xml.

Любые указатели на то, как я могу отследить источник проблемы, будут полезны.

Спасибо!

Точно такое же ухо развертывается без каких-либо проблем на версиях wildfly до 14.0.1. Проверено на 14.0.1, 10.0.1, 9 и 8.

Можете ли вы опубликовать все исключение из server.log? это может вызвать любую подсказку.

Ramesh Subramanian 25.03.2019 08:55

Привет, Рамеш. Спасибо за внимание. Удаление избыточной ссылки на ресурс в jboss-web.xml решило эту проблему.

user3757849 26.03.2019 19:09
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
584
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В jboss-web.xml в web.war/WEB-INF было следующее:

<jboss-web>
  <resource-ref>
    <res-ref-name>mainDB</res-ref-name>
    <jndi-name>mainDB</jndi-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
</jboss-web>

Как только я удалил это, ухо развернулось без проблем как на wildfly 15, так и на 16.
По-видимому, это использовалось для псевдонима источника данных при переносе кода некоторое время назад.

Для чего используется ссылка на ресурс в web.xml?

С тех пор код был обновлен, и псевдоним больше не использовался, что привело к тому, что псевдоним стал таким же, как имя jndi, в этом больше нет необходимости, и это привело к сбою развертывания.

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