Можно ли создать собственный веб-сервис на любом ПК без установки какого-либо приложения веб-сервера, например: tomcat? Я хочу сделать его как агент/плагин на любом ПК. Для доступа к веб-службам мне нужно только получить доступ к http://: 8080/web_service. Любое предложение об этом?
Развертывание веб-службы java без использования веб-сервера
Ответ 1
Даже легче запуска Jetty вы можете использовать HttpServer, встроенный в Java.
Вам нужно будет написать свой собственный код для анализа данных запроса, но это, безусловно, возможно.
http://blogs.operationaldynamics.com/andrew/software/free-java/sun-secret-webserver.html
Ответ 2
Посмотрите Jetty, очень легкий контейнер сервлета
Ответ 3
Посмотрите Apache CXF. Он может использовать причал для самостоятельных веб-сервисов. Он интегрируется с Spring, что упрощает добавление веб-сервиса просто как spring - bean с очень небольшим дополнительным кодом.
Ответ 4
Вам потребуется что-то, чтобы прослушать http-соединение. К счастью, у Java 6 есть все, что вам нужно, во время выполнения по умолчанию.
Посмотрите:
http://hofmanndavid.blogspot.com/2008/11/easiest-way-to-publish-java-web.html
Ответ 5
Вы упомянули Tomcat как пример того, что вы не хотите делать, но Tomcat можно запустить во встроенном режиме, где он запускается изнутри вашего приложения:
http://tomcat.apache.org/tomcat-5.5-doc/catalina/docs/api/org/apache/catalina/startup/Embedded.html
Говоря это, я бы рекомендовал Jetty, он был более легким, чем Tomcat.
Ответ 6
Я думаю, что Spring веб-сервисы могут быть настроены для работы на "фальшивом" веб-сервере - обсуждение этого на Spring форуме веб-сервисов наверняка (мне нужно было то же самое, но в итоге используя веб-сервер из-за других проблем)
Ответ 7
Я выполнял этот довольно простой учебник, и он делает именно то, что вы хотите
http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/
Похоже, платформа Java SE 6 имеет небольшой сервер веб-приложений, который будет публиковать веб-службу во время работы JVM.
Ответ 8
тот же вопрос с Легкий Webservice, созданный на Java (без сервера приложений)
javax.xml.ws.Endpoint.publish("http://localhost:8000/myService/", myServiceImplementation);
Ответ 9
Идеальное решение здесь от IBM
https://www.ibm.com/developerworks/webservices/tutorials/ws-jse/