У меня есть несколько веб-сервисов (с аннотацией @WebService), которые в настоящее время опубликованы в /ws/
f.e. «PanelService» будет доступен в /myAppContextRoot/ws/PanelService
Я сделал это, привязав Glassfish-WS-Servlet (следовательно, JAXWS-RI) к /ws/* в web.xml.
Есть ли аналогичный способ для Wildfly, предпочтительнее без использования Wildfly аннотации - просто по конфигурации? Я не хочу, чтобы в моем пути к классам были классы jboss.
Мое текущее «решение» — добавить JAXWS-RI в путь к классам и опубликовать службы два раза — с помощью JBoss-WS и JAXWS-RI
€edit:
Решение Терренса Каррана действительно работает... но... мне пришлось добавить незначительные изменения.
- Чего я не знал: пришлось поместить файл в src/main/webapp/META-INF (веб-проект Maven) - раньше пробовал src/main/resources/META-INF...
- корневой контекст должен был содержать мое имя приложения... мой jboss-webservices.xml сейчас:
Код: Выделить всё
myApp/ws
- Мне пришлось пометить хотя бы один веб-сервис как @Stateless EJB. Не спрашивайте меня, почему - но если я удалю аннотацию, файл, похоже, не будет анализироваться и применяться. Только если в качестве EJB присутствует один WS, мой wildlfy применит jboss-webservices.xml. (Ошибка?)