2012-07-26 2 views
0

편안한 웹 서비스를 성공적으로 작성하고 Apache Tomcat 7.0에 배치합니다. 배포가 성공적으로 끝나면 서버를 시작합니다. 아래 명령을 사용하여 웹 서비스를 호출합니다.RESTful 웹 서비스 게시 메서드에 값 전달

WebResource resource = client.resource("http://localhost:8080/rest/samp/create"); 

내 웹 방법은 인수로

@POST 
@Path("/create") 
@Produces(MediaType.TEXT_XML) 
@Consumes(MediaType.TEXT_XML) 
public final String sample(final String xmlMessage) { 

    return "<xml version=1.0><welcome>"+xmlmessage+"</welcome>";  
} 

여기에 내가 통과하고 XML 내용이며, 응답으로 XML 컨텐츠를 얻을.

이제 XML 내용을 웹 메서드에 전달하는 방법을 알아야합니다.

+0

코드에서 "웹 방식"은 어디에 있습니까? –

+0

웹 방식 ESB입니까? –

+2

나는 왜이 질문이 두 번이나 투표로 내려 졌는지 정말 당혹 스럽다. 이 질문에 무엇이 잘못 되었습니까? 나에게 그것은 정말로 합법적 인 질문이다. 영어가 번거롭다면 해결하고 투표하지 마세요. 완벽한 영어를 구사하는 사람들 만 질문 할 수 있다고 가정 할 수는 없습니다. –

답변

1

.

적절한 HTTP 헤더, 메소드 및 엔티티 본문을 설정하려면 빌더를 사용해야합니다.

WebResource resource = client.resource("http://localhost:8080/rest/samp/create"); 
String request = "<your_xml>...</your_xml>"; 
String response = resource.accept(
    MediaType.TEXT_XML). 
    header("X-FOO", "BAR"). //this line is not necessary, just an example 
    type(MediaType.TEXT_XML). 
    post(String.class, request); 

대신 JAXB를 사용하는 것이 좋습니다. XML을 일반 문자열로 작성하는 것은 간단하고 불필요하게 짜증나게됩니다. (XML 전체를 잡고 다른 태그로 묶는) 간단한 예제에는 표시되지 않지만 곧 완료 될 것입니다.

This tutorial으로 시작해야합니다.

3

당신은 컬을 시도 할 수 있습니다 :

http://curl.haxx.se/ 

간단한 명령 줄이 게시물 데이터를 전송 : 내가 사용하고있는 라이브러리가 여기 뉴저지 것으로 추측하고있어

curl -d "here puts data" -X POST http://mysite/create