これは私の最初の質問ですので、私に同行してください。HttpURLConnectionからHttpClientに切り替える方法
私は、HttpURLConnectionを介してサーバからXML forのデータを取得するSwingアプリケーションを持っています。今は、サーバーとの一定の要求応答接続を作成して、アプリケーションの更新があるかどうかを確認しようとしています(チェックは定期的に行われる必要があります。
私は、ライブ接続を維持するためにHttpURLConnectionの代わりにApache HttpClientを使用する方がよいと読んだが、現在のコードからHttpClientを使用しているものへの良い例は見つかりません。具体的には、HttpURLConnection.setRequestProperty()とHttpURLConnection.getOutputStream()の代わりに何を使用するのですか?あなたはHTTPClientの4を使用している場合、私は、Apacheがすべての例を提供して考える
Document request = new Document(xmlElement);
Document response = new Document();
String server = getServerURL(datasetName);
try {
URL url = new URL(server);
try {
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestProperty("Content-Type","application/xml; charset=ISO-8859-1");
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
OutputStream output = connection.getOutputStream();
XMLOutputter serializer = new XMLOutputter();
serializer.output(request, output);
output.flush();
output.close();
InputStream input = connection.getInputStream();
String tempString = ErrOut.printToString(input);
SAXBuilder parser = new SAXBuilder();
try {
response = parser.build(new StringReader(tempString));
}
catch (JDOMException ex) { ... }
input.close();
connection.disconnect();
}
catch (IOException ex) { ... }
}
catch (MalformedURLException ex) { ... }
おかげで、しかし、どのような私のXMLで、実際の要求テキストを追加する方法について? XMLを文字列としてpostMethodにStringEntityを追加しようとしましたが、今は "HTTP/1.1 400 Bad request"しか取得していません。 – Rolandas
@Rolandas、私はURLへのリンクで答えを編集しました。チェックアウトしてください。 – Santosh