Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
httpclient在java中发布xml内容_Java_Xml_Apache Commons Httpclient - Fatal编程技术网

httpclient在java中发布xml内容

httpclient在java中发布xml内容,java,xml,apache-commons-httpclient,Java,Xml,Apache Commons Httpclient,我正在尝试使用httpclient发布xml请求,如下所示: String parm1 = MyXml.toString(); PostMethod post = new Postmethod(url); post.setRequestEntity(new StringRequestEntity(parm1)); ... 我在程序中有一个对象,我想把它转换成xml表示 我的问题是,在java中以xml格式创建Myxml的最佳方法是什么,然后我可以简单地打印出它的字符串格式 谢谢。试着这样使用它

我正在尝试使用httpclient发布xml请求,如下所示:

String parm1 = MyXml.toString();
PostMethod post = new Postmethod(url);
post.setRequestEntity(new StringRequestEntity(parm1));
...
我在程序中有一个对象,我想把它转换成xml表示

我的问题是,在java中以xml格式创建Myxml的最佳方法是什么,然后我可以简单地打印出它的字符串格式


谢谢。

试着这样使用它

public void postData() throws Exception {


 HttpClient client = new DefaultHttpClient();
 HttpPost httppost = new HttpPost("https://www.xyz.com");

 List<NameValuePair> list = new ArrayList<NameValuePair>(1);

 list.add(new BasicNameValuePair("name","ABC");

 httppost.setEntity(new UrlEncodedFormEntity(list));

 HttpResponse r = client.execute(httppost);

}
public void postData()引发异常{
HttpClient=new DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(“https://www.xyz.com");
列表=新的ArrayList(1);
添加(新的BasicNameValuePair(“名称”、“ABC”);
setEntity(新的UrlEncodedFormEntity(列表));
HttpResponse r=client.execute(httppost);
}

在Java中创建XML有许多选项。这个答案提供了一个很好的演示,展示了一种似乎适合您的用例的常用方法。

下面是如何使用Apache HttpClient发布XML请求。

  • 使用ApacheVelocity创建请求xml格式
  • 使用Castor将响应流(respReader)转换为java对象

    final String request = createXmlRequest(); // helper method to create the xml request
    final HttpClient client = new HttpClient();
    final PostMethod post = new PostMehod(url); // url - www.google.cm/someoperaion
    
    post.setRequestHeader("Content-Language", "en-US");
    post.setRequestEntity(new StringRequestEntity(request, "text/xml", "ISO-8859-1"));
    
    final int returnCode = client.executeMethod(post);
    
    final BufferedReader respReader = new BufferedReader(new InputStreamReader(post.getResponseBodyAsStream()));
    

您是在询问创建
toXML()
方法的最佳方法,还是在询问发布数据的技术?我更感兴趣的是创建一个xml,以后我可以使用它为http post传递参数。因此,我想我是在问这两个问题。您可以查看xml部分。