2013-06-25 36 views
6

Tôi có một java Nghỉ ngơi WebService URL http://localhost:8080/WebServiceEx/rest/hello/dgdgLàm thế nào để gọi java Nghỉ ngơi WebService bên trong một Servlet

Khi tôi thực hiện URL, phương pháp WebService Trả về một chuỗi

Yêu cầu của tôi là để gọi URL WebService trên bên một Servlet, có ai giúp được không?

ServletCode:

public Class StoreServlet extends HttpServlet{ 
protected void doPost(HttpServletRequest req, HttpServletResponse resp) 
     throws IOException, ServletException { 

//Invoke WebService and Get Response String Here 


} 

WebService Code:

public class HelloWorldService { 
    @Context 
    private ServletContext context; 

    @GET 
    @Path("/{param}") 
    public Response getMsg(@PathParam("param") String msg) { 

        return Response.status(200).entity(msg).build();  

       } 
    } 

Trả lời

0

Một khả năng là để tạo ra một khách hàng sử dụng webservice jaxws (cho mục đích này - tìm kiếm cho một hướng dẫn trên internet). Vì vậy, bạn nhận được một số lớp Java bạn có thể sử dụng như thường bên trong servlet của bạn.

4

Hãy nhìn vào Apache CXF JAX-RS khách hàng:

http://cxf.apache.org/docs/jax-rs-client-api.html

ví dụ

BookStore store = JAXRSClientFactory.create("http://bookstore.com", BookStore.class); 
// (1) remote GET call to http://bookstore.com/bookstore 
Books books = store.getAllBooks(); 
// (2) no remote call 
BookResource subresource = store.getBookSubresource(1); 
// {3} remote GET call to http://bookstore.com/bookstore/1 
Book b = subresource.getBook(); 

Hoặc, nếu bạn sử dụng JAX-RS 2.0, nó có một client API

ví dụ

Client client = ClientFactory.newClient(); 

String bal = client.target("http://.../atm/balance") 
        .queryParam("card", "111122223333") 
        .queryParam("pin", "9876") 
        .request("text/plain").get(String.class); 

Hoặc bạn có thể làm điều đó "cốt lõi" cách sử dụng Java chỉ đơn giản: http://www.mkyong.com/webservices/jax-rs/restfull-java-client-with-java-net-url/

Các vấn đề liên quan