我想打开一个新的 JSF 页面,该页面显示我通过来自 Web 服务的字符串获得的外部转换 HTML,将我自己的提交按钮附加到页面并为我自己的目的捕获表单数据(不提交回 Web 服务)。目的是通过调用 Web 服务并以字符串的形式接收转换后的 HTML,从而尝试为我节省大量工作。如何在 JSF 中显示这个 html?使用 IFrame 不是答案。
问问题
2063 次
2 回答
1
您总是可以使用简单的 javascript 来做到这一点,这里有一个使用 jquery 的示例:
还; 您将需要使用“jQquery 对象”访问您的 JSF 组件,请尝试以下操作:
问候,
于 2013-02-20T10:23:56.190 回答
1
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.connect();
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String input = null;
while ((input = in.readLine()) != null) {
result = input; //result is String
}
然后我将包含 HTML 的结果返回给我的支持 bean。
我使用 f:verbatim 在我的视图上呈现 HTML
connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setUseCaches(false);
connection.setAllowUserInteraction(false);
connection.setRequestProperty("Accept-Charset", "UTF-8");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
connection.connect();
InputStream in = new BufferedInputStream(connection.getInputStream());
Scanner scanner = new Scanner(in, "UTF-8").useDelimiter("\\A"); // \\A regex ensures that I get the whole stream in one go - Match only at beginning of string (same as ^)
while (scanner.hasNext()) {
result += scanner.next();
}
于 2013-02-20T11:46:51.827 回答