Ну, Tomcat или Jetty могут быть излишними для публикации только некоторых методов в качестве веб-сервиса. Но с другой стороны, это не слишком сложно, и они делают свою работу, так почему бы и нет?
У меня была похожая проблема не так давно, и я использовал Tomcat вместе с Axis2. Просто скачайте Tomcat, распакуйте его, разверните Axis2 WAR. Чтобы опубликовать веб-сервис, есть несколько подходов, один из которых я выбрал, вероятно, один из самых простых:
Просто соберите ваше приложение как обычно и аннотируйте класс и методы веб-службы соответствующими аннотациями из javax.jws. *. Упакуйте все в банку. Создайте файл service.xml в каталоге META-INF вашего jar-файла и поместите его в него:
<service name="name of the service" scope="<one of request, session or application>">
<description>
optional description of your service
</description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass" locked="false">put here the fully qualified name of your service class (e.g. x.y.z.FooService)</parameter>
</service>
Переименуйте .jar в .aar и поместите его в каталог / webapps / axis2 / WEB-INF / services /. Запустите Tomcat, и служба будет развернута. Вы можете проверить, работает ли он, посетив страницу axis2 (http://localhost:8080/axis2/).. Там вы увидите, какие службы развернуты и какие методы экспортированы. Также вы можете получить там URL-адрес WSDL для подключения к вашей службе.
Прочтите http://ws.apache.org/axis2/1_4_1/contents.html, чтобы узнать больше об использовании Axis2. Подход, который я описал здесь, не найден в документации точно таким же образом, но он работает очень хорошо.
Обновление: Если вы просто хотите предоставлять веб-сервисы и не нуждаетесь ни в каких других функциях Tomcat (например, в обслуживании простых старых веб-страниц, jsps или других материалах), вы также можете используйте автономный сервер Axis2. Но за исключением части настройки, это ничего не меняет, что я описал.
Я написал немного более подробную версию этого, которую можно найти по адресу: http://www.slashslash.de/lang/en/2008/10/java-webservices-mit-apache-tomcat-und-axis2/ (не позволяйте немецкому URL раздражать вас, он написан на английском)