2012-07-26 91 views
0

我成功创建了restful web服务并将其部署到Apache Tomcat 7.0中。成功部署后,我启动我的服务器。通过使用下面的命令我调用Web服务。将值传递给REST风格的Web服务发布方法

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

我的web方法是

@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内容传递给Web方法。

+0

代码中的“web方法”在哪里? – 2012-07-26 07:29:36

+0

是web方法ESB吗? – 2012-07-26 07:33:30

+2

我真的很困惑,为什么这个问题被拒绝了两次。这个问题有什么问题?对我而言,这是一个真正合法的问题。如果你觉得英文很烦人,只要纠正它,不要把它投下来。你不能认为只有英语完美的人才可以提问。 – 2012-07-26 11:50:23

回答

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 
相关问题