2012-02-07 5 views
0

현재 바람둥이 (http : // 로컬 호스트 : 8080/myApp/getUsers)에서 실행중인 웹 서비스가 있습니다. 내 웹 서비스는 json 문자열을 수락하고 그에 따라 처리합니다. 내 웹 서비스 코드는 다음과 같습니다 :Java에서 REST Webservice 호출을 만드는 방법은 무엇입니까?

@Path("/getUsers") 
public class UsersWS 
{ 
    @POST 
    public Response post(String theRequestJSON) 
    { 
     try 
     { 
      JSONObject aJsonObj = new JSONObject(theRequestJSON); 
      String userID = aJsonObj.getString("userID"); 
      System.out.println(userID); 
     } 
    } 
} 

따라서 웹 서비스가 json 문자열을 처리하고 있습니다. 자 이제 위의 웹 서비스를 다른 JAVA 클래스 (request 매개 변수에 userID가있는 jsonObject가 있음)에서 호출해야합니다.

어떻게 만드시겠습니까? 간단히 말해서 JSON 객체를 요청 매개 변수로 사용하여 JAVA 클래스에서 웹 서비스 호출을 작성해야합니다. 요청 호출에서 json을 요청 매개 변수로 보내는 방법.

+1

가능한 중복 : //stackoverflow.com/questions/939682/how-to-post-json-data-to-a-server-using-java) –

답변

3

원시 URLConnection 또는 Apache HttpClient를 사용하여 서버에 HTTP 요청을 보냅니다. 매개 변수는 key=value&key2=value2... 형식으로 전달되어야합니다. 따라서 JSON 객체를 해당 형식으로 재구성하거나 data=jsonstring과 같은 다른 특수 매개 변수 이름을 사용하여 json 문자열을 일부 라이브러리를 사용하여 구문 분석해야 할 수 있습니다.

+0

고마워요 .. 당신은 또한 데이터로 게시 할 몇 가지 자바 라이브러리 제안 할 수 = jsonstring 요청에? –

+0

data = JSONObject.toString()? – George

2

@George 이미 질문에 대답 기본적으로했지만, JSON 처리의 관점에서 당신이 빠르게 자바 JSON 등가물로 개체를 변환 할 수 있습니다 잭슨 http://jackson.codehaus.org/

보고 할 수 있습니다. http://jersey.java.net

여기에 클라이언트를 사용하는 방법에 대한 좋은 쓰기이야 :

관련 문제