2012-01-04 2 views
1

, 나는 뉴저지 구현을 사용하여 시도 및 호출 클라이언트 목록을 반환하는 간단한 웹 서비스 코드 작성 :저지 REST 웹 서비스에서 Array를 반환하는 방법은 무엇입니까? 나는 REST의 웹 서비스에 새로운 오전

@GET 
@Produces(MediaType.TEXT_XML) 
public GenericEntity<List<String>> stringlist() { 
    List<String> list = Arrays.asList("test", "as"); 
    return new GenericEntity<List<String>>(list) { 
    }; 
} 

내 클라이언트의 목록의 값을 얻는 방법을 모르겠습니다합니다. 방금 클라이언트에서 아래 코드를 사용하여 시도했지만 오류가 발생했습니다.

service.path("rest") 
     .path("getVal") 
     .accept(MediaType.TEXT_XML) 
     .get(GenericEntity.class 

클라이언트에게 배열을 전달하는 간단한 웹 서비스 코드를 알려주는 사람이 있습니까?

답변

2

당신은 어떤 @XmlRootElement 주석 객체의 단지 목록을 반환하고 액세스 할 수 있어야합니다 :이 일반 문자열 더 복잡 어떤 이유로

service.path("rest").path("getVal").accept(MediaType.TEXT_XML).get(new GenericEntity<List<MyObj>>{}); 

을, 당신은

JAXBElement 첨부로 캡슐화 할 필요가
@GET 
@Produces(MediaType.TEXT_XML) 
public List<JAXBElement<String>> stringlist() { 
    Arrays.asList(new JAXBElement[] { 
     new JAXBElement(QName.valueOf("element1"), String.class, "ahoj"), 
     new JAXBElement(QName.valueOf("element2"), String.class, "nazdar") 
    };); 
} 

과 유사 이전의 경우와 같이 액세스,하지만 당신은

new GenericEntity<List<JAXBElement<String>>>{} 
은 "요청"해야
관련 문제