0

我需要制作一个struts 2 应用程序。在此应用程序的一个视图中,我必须通过提供的 URL 获取另一个应用程序的视图,例如 (http://localhost:8080/hudson/)...

现在。1.如何与其他应用程序连接?(可以用 Apache HttpURLClient 完成吗?或任何其他方式请指导。)

2、如果可以用Apache HttpURLClient,那么如何在stuts2框架中渲染Response对象。

请帮忙。提前谢谢了。

4

2 回答 2

0

我必须这样做,我正在使用 struts2,但我有一个 servlet。在 struts.xml 中,您必须使用 httpauarlconnection 或 httpclient (apache) 获取 url 的内容,并将其放在 servlet 响应中。

我有这个,但我对 html 的相对链接有问题,因为它试图用我的域名(使工作正常的 servlet 的名称)解析。

于 2012-09-14T17:04:05.797 回答
0

您可以使用java.net包来解决问题。示例代码:

URL urlApi = new URL(requestUrl);
HttpURLConnection httpURLConnection = (HttpURLConnection) urlApi.openConnection();
httpURLConnection.setRequestMethod(<requestMethod>); // GET or POST
httpURLConnection.setDoOutput(true);
//in case HTTP POST method un-comment following to write request body
//DataOutputStream ds = new DataOutputStream(httpURLConnection.getOutputStream());
//ds.writeBytes(body);
InputStream content = (InputStream) httpURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(content));
StringBuilder stringBuilder = new StringBuilder(100);
String line = null;
while ((line = bufferedReader.readLine()) != null) {
    stringBuilder.append(line);
}
String serverResult = stringBuilder.toString();
//now you have a string representation of the server result page
//do what you need

希望这可以帮助

于 2012-08-31T18:54:45.430 回答