2017-08-14 65 views
0

我想要澄清一下如何在servlet上部署一個restful service啓動。目前我正在使用包含resteasy的JBOSS AS7.1.1。下面我的web.xml就像jboss上的安靜服務as7.1.1啓動

<servlet> 
    <servlet-name>RESTEasy</servlet-name> 
    <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>RESTEasy</servlet-name> 
    <url-pattern>/api/*</url-pattern> 
    </servlet-mapping> 

這將是巨大的,知道使用上面的代碼時,JBoss的服務啓動。

感謝, 阿什利

回答

2

最終你甚至不需要在web.xml了,你肯定不需要上述配置。獲得JAX-RS會唯一需要的文件是一樣的東西:

RestApplication.java

import javax.ws.rs.ApplicationPath; 
import javax.ws.rs.core.Application; 

/** 
* Used to bootstrap JAX-RS. Otherwise this class is 
* not directly used. 
* 
*/ 
@ApplicationPath("/api") 
public class RestApplicationConfig extends Application { 
    // intentionally empty 
} 

之後,您將創建您的服務:

HelloWorld.java

import javax.ws.rs.GET; 
import javax.ws.rs.Path; 
import javax.ws.rs.Produces; 
import javax.ws.rs.core.MediaType; 
import javax.ws.rs.core.Response; 

@Path("/hello") 
public class HelloWorld { 

    @Produces({MediaType.TEXT_PLAIN}) 
    @GET 
    public Response getHeartBeat() { 
     return Response.ok("Hi There").build(); 
    } 
} 

此服務然後可以調用類似於http://localhost:8080/app-name/api/hello的地方,其中app-name是您的Web應用程序的名稱(假設它是沒有部署到/)。