2010-05-22 11 views
6

No quiero utilizar Tomcat, Jetty o un contenedor Java EE 6 para ofrecer servicios REST sino el servidor web incorporado.¿Cómo ejecutar Jersey con el servidor web incorporado de Java SE 6?

+0

Buena pregunta. Parece que no hay ayuda para los usuarios de Java SE cuando se trata de servicios web. Y no todos quieren un servidor web en el sentido de Enterprise ... Espero que haya más ejemplos o ayuda publicados aquí. –

Respuesta

5

Asegúrese de que tiene Jersey de jersey-server.jar en la ruta de clase, entonces es tan simple como:

HttpServer server = HttpServerFactory.create("http://localhost:9998/"); 
server.start(); 

escoger cualquier puerto que desea utilizar.

+0

@wjl: La pregunta es acerca de cómo ejecutar Jersey con el servidor web incorporado de Java SE. La pregunta no es sobre cómo configurar/preparar Jersey para que se ejecute en un servidor arbitrario. Es lo mismo para todos los servidores. – BalusC

0

Para Jersey 2.x necesitará jersey-container-jdk-http en su classpath. Si está utilizando Maven agregar esto a su pom.xml:

<dependency> 
    <groupId>org.glassfish.jersey.containers</groupId> 
    <artifactId>jersey-container-jdk-http</artifactId> 
    <version>2.9.1</version> 
</dependency> 

Para iniciar el uso del servidor esto:

URI baseUri = UriBuilder.fromUri("http://localhost/").port(10000).build(); 
ResourceConfig resourceConfig=new ResourceConfig(WebService.class); 
HttpServer httpServer=JdkHttpServerFactory.createHttpServer(baseUri, resourceConfig,true); 
Cuestiones relacionadas