2010-05-22 2 views
6

Tomcat, Jetty 또는 Java EE 6 컨테이너를 사용하여 REST 서비스를 제공하지 않고 내장 웹 서버를 제공하고 싶습니다. 사용하려는 어떤 포트Java SE 6의 내장 웹 서버로 저지를 실행하는 방법은 무엇입니까?

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

픽업 :

+0

좋은 질문을. 웹 서비스의 경우 Java SE 사용자에게는 도움이되지 않는 것 같습니다. 그리고 모든 사람들이 웹 서버를 엔터프라이즈 감각으로 원한다는 것은 아닙니다. 여기에 게시 된 예제 나 도움말이 더 많기를 바랍니다. –

답변

5

는 그것뿐만 아니라 간단합니다, 당신은 클래스 경로에 뉴저지의 jersey-server.jar이 있는지 확인합니다.

+0

@wjl : Java SE의 내장 웹 서버로 Jersey를 실행하는 방법에 대한 질문입니다. 문제는 Jersey가 임의의 서버에서 실행되도록 구성/준비하는 방법이 아니라는 것입니다. 모든 서버에서 동일합니다. – BalusC

0

Jersey 2.x의 경우 classpath에 jersey-container-jdk-http이 필요합니다. 당신이 받는다는을 사용하는 경우 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);