通貨の略語を持つ 2 つの文字列変数を含む Java サーブレットがあります。通貨レートを提供する外部 JAX-WS サービスhttp://www.webservicex.net/ws/WSDetails.aspx?CATID=2&WSID=10があります。このサービスへのリクエスト方法は?この 2 つの文字列変数を彼に送信し、数値を取得するにはどうすればよいですか? Eclipse EE Kepler、Tomcat 6 の使用
2066 次
1 に答える
1
www.webservicex.netの一部のサービスでは、HTTP を使用して GET リクエストを実行できます。例えば:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String from = "USD";
String to = "EUR";
java.net.URL url = new java.net.URL(
"http://www.webservicex.net/CurrencyConvertor.asmx"
+ "/ConversionRate?FromCurrency=" + from
+ "&ToCurrency=" + to);
java.util.Scanner sc = new java.util.Scanner(url.openStream());
// <?xml version="1.0" encoding="utf-8"?>
sc.nextLine();
// <double xmlns="http://www.webserviceX.NET/">0.724</double>
String str = sc.nextLine().replaceAll("^.*>(.*)<.*$", "$1");
sc.close();
Double rate = Double.parseDouble(str);
log("Rate: " + rate);
}
于 2013-10-24T13:56:49.397 に答える