как мне ждать обслуживания, когда от него зависит другой сервис - PullRequest
2 голосов
/ 21 июля 2009

Я собираюсь развернуть два разных, но зависимых war-файла в одном jboss (AS 4.2.x GA) Один реализует некоторые веб-сервисы (jax-ws), выставляя свои интерфейсы через WSDL. Другой - это, скажем, веб-интерфейс, использующий вышеупомянутые веб-сервисы. Когда я одновременно сбрасываю оба варфайла в $ JBOSS_HOME / server / default / deploy, я вижу, что первый развертывается (каким-то образом), но второй зависает, и весь jboss не отвечает. Когда я развертываю их один за другим, все нормально (просто работает:)

  • Есть ли способ сообщить jboss, что развертывание warfile2.war должно ждать для warfile1.war завершить развертывание до начала развертывания warfile2.war?

  • Есть ли способ программно определить, развернут ли данный «сервис» и готов?

  • Интересно, что происходит, когда присутствуют обе войны и перезапускается jboss?

С уважением, Джей Ви.

Ответы [ 3 ]

1 голос
/ 22 июля 2009

Чтобы ответить на ваш последний вопрос первым, JBoss развернет содержимое своего каталога deploy в алфавитном порядке. Если вы перетащите два файла WAR в каталог развертывания работающего сервера, результаты будут непредсказуемыми, но должны быть безопасными, поэтому я не уверен, что там происходит.

Когда вы описываете зависимость, это звучит так, как будто пользователь использует WAR веб-интерфейса, он вызывает WAR веб-службы, и что при запуске нет никакой связи между ними? Может ли кто-нибудь пытаться использовать внешнюю WAR, пока веб-служба WAR все еще разворачивается? Какая война стоит на первом месте в алфавитном порядке?

В качестве возможного решения, когда у вас есть два WAR-файла, которые зависят друг от друга, вам следует рассмотреть возможность упаковки их обоих в один EAR-файл. Таким образом, JBoss будет развертывать их вместе контролируемым образом.

0 голосов
/ 22 июля 2009

Это верно. backend.war развернут перед frontend.war.

Я развернул его на своем локальном jboss, и никто другой не имеет к нему доступа.

Когда я отлаживаю в jboss, я вижу, что веб-интерфейс обращается к бэкэнду, wsdl (https://localhost:9999/app/svc?wsdl) зависает, пока jboss не готов.

\ у Арне Бурмейстера: подход слушателя не помогает. слушатель вызывается на ранней стадии процесса: я могу подключиться к backendWsdlUrl, но backenWsdlUrl.getConnection (). getOutputstream () зависает

Думаю, я попробую ухо. Есть ли хорошая документация о том, как упаковать вещи в ухо? (Скаффман уже указал мне правильное направление)

Большое спасибо всем, кто до сих пор помогает, Jan

0 голосов
/ 21 июля 2009

А как насчет реализации слушателя в веб-интерфейсе, ожидающего успешного запроса головы к wsdl на localhost?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...