Сервлеты + JAX-WS - PullRequest
       28

Сервлеты + JAX-WS

5 голосов
/ 10 апреля 2009

Я пытаюсь представить метод веб-службы с помощью аннотаций JAX-WS. Многие примеры, которые я видел, ссылаются на метод EndPoint.publish (), чтобы быстро настроить службу в автономном приложении (например, из Web-сервисов Java: запуск и запуск, 1-е издание):

public class TimeServerPublisher {
public static void main(String[ ] args) {
  // 1st argument is the publication URL
  // 2nd argument is an SIB instance
  Endpoint.publish("http://127.0.0.1:9876/ts", new TimeServerImpl());
}

}

Одна вещь, по которой я скучаю, это то, как выполнить по существу то же самое, но в существующем приложении. Буду ли я сделать сервлет, чтобы справиться с этим? Как правильно опубликовать этот сервис в существующем файле WAR?

Ответы [ 3 ]

4 голосов
/ 10 апреля 2009

В контейнере не нужно публиковать, как это. Контейнер сделает публикацию. Если вы планируете использовать его на сервере JBoss, попробуйте JBossWS в противном случае для Tomcat или любого другого сервера Axis2 может быть лучшим выбором.

Узнайте больше по следующим ссылкам.

http://jbossws.jboss.org/mediawiki/index.php?title=JBossWS

http://ws.apache.org/axis2/

3 голосов
/ 10 апреля 2009

Это зависит от того, какой стек WS вы используете.

Если вы используете Java 6, то это включает в себя эталонную реализацию JAX-WS , тогда вы можете обратиться к документации о содержимом WAR JAX-WS RI .

1 голос
/ 13 сентября 2011

Как отмечает @Jerrish и @andri, существуют различные подходы и решения, в зависимости от ваших проблем.

Идея заключается в том, что вам не нужно устанавливать конфигурацию (порт и т. Д.), Когда будет опубликован ваш веб-сервис. Наилучшим подходом может быть установка этого через файлы конфигурации (XML, свойства и т. Д.) Или использование @Annotations.

Например, если вы привыкли использовать фреймворки, такие как Guice или Spring, вы знаете, что можно / рекомендуется запустить контекст публикации вашего приложения или инициализировать некоторые объекты, фабрики, источники данных и т. Д., А публикация веб-сервисов - еще одна задача. это можно сделать в это время, потому что будет доступно, когда вы запустите свое приложение, не так ли?

Кстати, у меня хороший опыт работы с CXF, и другим решением может быть Spring Web Services другое мощное решение для создания веб-служб.

...