WebService可以有Get、?Post、Soap、Document四種方式調用,以下Java通過post方式調用WebService代碼:
import?java.io.BufferedReader;import?java.io.IOException;
import?java.io.InputStream;
import?java.io.InputStreamReader;
import?java.io.OutputStream;
import?java.io.OutputStreamWriter;
import?java.net.URL;
import?java.net.URLConnection;
import?java.net.URLEncoder;
import?org.apache.cxf.endpoint.Client;
import?org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
/**
*?功能描述:WebService調用 *? */public?class?ClientTest?{
/** *?功能描述:HTTP-POST *? */ public?String?post()?{ OutputStreamWriter?out?=?null; StringBuilder?sTotalString?=?new?StringBuilder(); try?{URL?urlTemp?=?new?URL(
"/WebServices/WeatherWebService.asmx/getSupportCity");URLConnection?connection?=?urlTemp.openConnection();
connection.setDoOutput(true);
out?=?new?OutputStreamWriter(connection.getOutputStream(),?"UTF-8");
StringBuffer?sb?=?new?StringBuffer();
sb.append("byProvinceName=福建");
out.write(sb.toString());
out.flush();
String?sCurrentLine;
sCurrentLine?=?"";
InputStream?l_urlStream;
l_urlStream?=?connection.getInputStream();//?請求
BufferedReader?l_reader?=?new?BufferedReader(new?InputStreamReader(
l_urlStream));while?((sCurrentLine?=?l_reader.readLine())?!=?null)?{
sTotalString.append(sCurrentLine);
}
}?catch?(Exception?e)?{e.printStackTrace();
}?finally?{if?(null?!=?out)?{
try?{
out.close();}?catch?(IOException?e)?{
e.printStackTrace();}
}
} return?sTotalString.toString(); }}