2014-04-09 1 views
0

저지에서 만든이 프로젝트와 웹 서비스를 연결하는 간단한 프로젝트를 만들고 싶습니다.Simple JAX-RS Client - 저지와 관련된 문제

내 웹 서비스 다음 서비스가 있습니다

http://localhost:8080/esinister/test/findtest?testnumber=12345. 

이 서비스의 정의입니다 :

@GET 
@Path("findtest") 
@Produces(MediaType.APPLICATION_XML) 
public Customer findTest(@DefaultValue("") @QueryParam("testnumber") String clientNumber) 
나는 고객 번호 12345을 가지고 응용 프로그램을 만들 싶습니다

(문자열) . 어떻게 만들 수 있습니까?

나는이 길에 내 응용 프로그램을 시작

...

public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    Client client = ClientBuilder.newClient(); 
    WebTarget target = client.target("http://localhost:8080/esinister/test/findtest?testnumber=12345"); 
    javax.ws.rs.core.Response rs = target.request(MediaType.TEXT_PLAIN).get(); 
    System.out.println(rs.toString()); 
} 

하지만 내가 뭔가를 잊고 생각 ...

내 오류는 다음과 같습니다

InboundJaxrsResponse{ClientResponse{method=GET, uri= http://localhost:8080/esinister/test/findtest?testnumber=12345, status=406, reason=Inacceptable}} 

당신이 아이디어를 가지고 있나요 ?

+2

무엇이 문제입니까? findTest 메소드가 호출되지 않습니다. 예외가 발생합니까? – dimoniy

+0

응답을 받고 인쇄 만하는 방법을 알고 싶습니다! –

답변

0

서비스가 XML 응답을 생성합니다. 클라이언트의 응답 유형을 일반 텍스트로 설정 했으므로 클라이언트가이 값을 읽을 수 없습니다. XML 응답을 허용하도록 클라이언트에 지시해야합니다. 다음과 같이 서비스를 호출해야합니다.

javax.ws.rs.core.Response rs = target.request(MediaType.APPLICATION_XML).get();