发送Post类型XML请求Webservice Java-失败响应
我正在执行以下java代码,以使用java将XML请求发送到webservice URL。我已经查看了这个链接来创建我的脚本。 作为回应,我正在经历失败。我打印了XML字符串。XML格式正确,没有任何问题。 我需要知道我哪里出了问题,在这个时候任何指导都是非常有用的发送Post类型XML请求Webservice Java-失败响应,java,xml,web-services,Java,Xml,Web Services,我正在执行以下java代码,以使用java将XML请求发送到webservice URL。我已经查看了这个链接来创建我的脚本。 作为回应,我正在经历失败。我打印了XML字符串。XML格式正确,没有任何问题。 我需要知道我哪里出了问题,在这个时候任何指导都是非常有用的 import java.net.*; import java.io.*; import java.security.*; import javax.net.ssl.SSLSocketFactory; import javax.net
import java.net.*;
import java.io.*;
import java.security.*;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.SSLSocket;
import sun.net.www.http.HttpClient;
public class Sample {
public static void main(String[] args) throws Exception {
excutePost();
}
public static String excutePost() throws Exception {
URL url;
HttpURLConnection connection = null;
try {
//Create connection
String targetURL="https://XXXXXX.html";
System.out.println(targetURL);
String urlParameters="<?xml version=\"1.0\" encoding=\"iso-8859-1\"? >\r\n<request>\r\n <control>\r\n <senderid>XXXX</senderid>\r\n <password>XXXX</password>\r\n <controlid>ControlIdHere</controlid>\r\n <uniqueid>false</uniqueid>\r\n <dtdversion>3.0</dtdversion>\r\n </control>\r\n <operation>\r\n <authentication>\r\n <login>\r\n <userid>XXX</userid>\r\n <companyid>XXXX</companyid>\r\n <password>XXXX</password>\r\n </login>\r\n </authentication>\r\n\r\n<content>\r\n <function controlid=\"testControlId\">\r\n <readByQuery>\r\n <object>CUSTOMER</object>\r\n <query/>\r\n </readByQuery>\r\n </function>\r\n</content>\r\n </operation>\r\n</request>";
System.out.println(urlParameters);
url = new URL(targetURL);
connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type",
"application/xml");
connection.setUseCaches (false);
connection.setDoInput(true);
connection.setDoOutput(true);
//Send request
DataOutputStream wr = new DataOutputStream (
connection.getOutputStream ());
wr.writeBytes (urlParameters);
wr.flush ();
wr.close ();
//Get Response
InputStream is = connection.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer response = new StringBuffer();
while((line = rd.readLine()) != null) {
response.append(line);
System.out.println(line);
response.append('\r');
}
rd.close();
return response.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
if(connection != null) {
connection.disconnect();
}
}
}
}
import java.net.*;
导入java.io.*;
导入java.security.*;
导入javax.net.ssl.SSLSocketFactory;
导入javax.net.ssl.SSLSocket;
导入sun.net.www.http.HttpClient;
公共类样本{
公共静态void main(字符串[]args)引发异常{
excutePost();
}
公共静态字符串excutePost()引发异常{
网址;
HttpURLConnection=null;
试一试{
//创建连接
字符串targetURL=”https://XXXXXX.html";
System.out.println(targetURL);
字符串urlParameters=“\r\n\r\n\r\n XXXX\r\n XXXX\r\n ControlIdHere\r\n false\r\n 3.0\r\n\r\n\r\n\r\n XXX\r\n XXXX\r\n\r\n XXXX\r\n\r\n\r\n\r\n\r\n\r\n客户\r\n\r\n\r\n\n\r\n”;
System.out.println(URL参数);
url=新url(targetURL);
connection=(HttpURLConnection)url.openConnection();
connection.setRequestMethod(“POST”);
connection.setRequestProperty(“内容类型”,
“应用程序/xml”);
connection.setUseCaches(false);
connection.setDoInput(true);
connection.setDoOutput(真);
//发送请求
DataOutputStream wr=新的DataOutputStream(
connection.getOutputStream());
writeBytes(urlParameters);
wr.flush();
wr.close();
//得到回应
InputStream is=connection.getInputStream();
BufferedReader rd=新的BufferedReader(新的InputStreamReader(is));
弦线;
StringBuffer响应=新的StringBuffer();
而((line=rd.readLine())!=null){
响应。追加(行);
系统输出打印项次(行);
append('\r');
}
rd.close();
返回response.toString();
}捕获(例外e){
e、 printStackTrace();
返回null;
}最后{
if(连接!=null){
连接断开();
}
}
}
}
您得到了什么样的故障响应?什么类型的故障?什么样的反应?当我在浏览器中传递时失败。我得到的与错误响应相同这不是你在这个网络上的第一个问题@卡蒂,你应该更清楚