我目前正在编写网络小部件,我想在我的服务器上用 wicket组件生成的一些HTML数据填充此小部件的内容。
为此,服务器将通过JSONP输出HTML数据。到目前为止一切都很好。
但是我需要获取此HTML数据。 如何在服务器上 某个wicket组件的HTML输出?
答案 0 :(得分:6)
我不知道这是否可以应用于您的配置,但我正在使用视图行代码来检索我之前写的用于构建基于HTML的电子邮件以便能够在其中使用wicket组件的呈现的html
protected final String renderPage(Component page) {
final Response oldResponse = RequestCycle.get().getResponse();
BufferedWebResponse tempResponse = new BufferedWebResponse((WebResponse) RequestCycle.get().getOriginalResponse());
try {
RequestCycle.get().setResponse(tempResponse);
page.render();
}
finally {
RequestCycle.get().setResponse(oldResponse);
}
return tempResponse.toString();
}
由于此呈现是在实际的Web应用程序周期内进行的,但与实际请求周期无关,因此建议保留原始请求周期。该页面将在您的临时webresponse中呈现,您可以从中检索呈现的html输出。
希望这可能是你正在寻找的东西
答案 1 :(得分:0)
您可以在此Wicket Wiki文章和链接的源代码中找到所需的一切:Use wicket as template engine
虽然我必须承认我从未尝试过,但请阅读并记住以供进一步参考......