Я создаю веб-сервис на основе CXF, и теперь я посылаю переменные в некоторые URL-адреса с помощью кода:
url = new URL(urlSSO + "/user");
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
connection.setRequestProperty("Content-Length","" + Integer.toString(urlParameters.getBytes().length));
connection.setRequestProperty("Content-Language", "en-EN");
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);
response.append('\r');
}
rd.close();
userInfo = response.toString();
if (userInfo != null) {
//do something
} else {
// some problem with user
return "home";
}
Но мне интересно, есть ли более простой способ сделать это с CXF?
Я имею в виду, может быть, в CXF есть что-то встроенное?
Я думаю, что этот код может занять много времени для отправки и получения ответа от другого сервлета ... Этот веб-сервис CXF будет помещен в servicemix, поэтому мне нужно что-то очень быстрое для отправки переменных