Я не хочу использовать Tomcat, Jetty или Java EE 6, чтобы предлагать услуги REST, но встроенный веб-сервер.Как управлять Джерси со встроенным веб-сервером с Java SE 6?
6
A
ответ
5
Убедитесь, что у вас есть Джерси jersey-server.jar
в пути к классам, то это так же просто, как:
HttpServer server = HttpServerFactory.create("http://localhost:9998/");
server.start();
Пика любой порт, который вы хотите использовать.
+0
@wjl: Вопрос о том, как запустить Джерси со встроенным веб-сервером Java SE. Вопрос не в том, как настроить/подготовить Джерси для запуска на произвольном сервере. Это одинаково для всех серверов. – BalusC
0
Для Jersey 2.x вам понадобится jersey-container-jdk-http в вашем пути к классу. Если вы используете Maven добавить к вашей pom.xml
:
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-jdk-http</artifactId>
<version>2.9.1</version>
</dependency>
Чтобы начать использовать сервер это:
URI baseUri = UriBuilder.fromUri("http://localhost/").port(10000).build();
ResourceConfig resourceConfig=new ResourceConfig(WebService.class);
HttpServer httpServer=JdkHttpServerFactory.createHttpServer(baseUri, resourceConfig,true);
Хороший вопрос. Кажется, что пользователям Java SE не помогает, когда речь заходит о веб-сервисах. И не все хотят веб-сервера в смысле Enterprise ... Надеюсь, здесь есть еще несколько примеров или рекомендаций. –