Развертывание веб-службы Java без использования веб-сервера

Можно развернуть созданный мной веб-сервис на любом ПК без установки какого-либо приложения веб-сервера, например: tomcat? Я хочу сделать это как агент / плагин на любом ПК. Чтобы получить доступ к веб-сервисам, мне нужно получить доступ только к http://:8080/web_service. Любое предложение по этому поводу?

9 ответов

Даже легче, чем запуск Jetty, вы можете использовать встроенный в Java HttpServer.

http://java.sun.com/javase/6/docs/jre/api/net/httpserver/spec/com/sun/net/httpserver/package-summary.html

Вам понадобится написать собственный код для разбора данных запроса, но это, безусловно, выполнимо.

http://blogs.operationaldynamics.com/andrew/software/free-java/sun-secret-webserver.html

Взгляните на Jetty, очень легкий контейнер для сервлетов

Тот же вопрос с Lightweight Webservice, производящим на Java (без сервера приложений)

javax.xml.ws.Endpoint.publish("http://localhost:8000/myService/", myServiceImplementation);

Посмотрите на Apache CXF. Он может использовать причал для автономных веб-сервисов. Он интегрируется с Spring, что позволяет легко добавлять веб-сервис просто как Spring-bean с очень небольшим дополнительным кодом.

Вам нужно что-то прослушивать для http-соединения. К счастью, в Java 6 есть все, что вам нужно во время выполнения по умолчанию.

Посмотри на:

http://hofmanndavid.blogspot.com/2008/11/easiest-way-to-publish-java-web.html

Вы упоминаете Tomcat как пример того, что вы не хотите делать, но Tomcat можно запустить во встроенном режиме, когда он запускается изнутри вашего приложения:

http://tomcat.apache.org/tomcat-5.5-doc/catalina/docs/api/org/apache/catalina/startup/Embedded.html

Сказав это, я бы порекомендовал Jetty, он более легкий, чем Tomcat.

Я думаю, что веб-службы Spring могут быть настроены для работы на "поддельном" веб-сервере - об этом наверняка есть обсуждение на весеннем форуме веб-служб (мне нужно то же самое, но в итоге я использовал веб-сервер из-за других проблемы)

Я следовал этому довольно простому уроку, и он делает то, что вы хотите

http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/

Кажется, что платформа Java SE 6 имеет небольшой сервер веб-приложений, который будет публиковать веб-сервис во время работы JVM.

Идеальное решение здесь от IBM

https://www.ibm.com/developerworks/webservices/tutorials/ws-jse/

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