gpt4 book ai didi

jsf - 在基于 JSF 的 Web 应用程序中编写纯 HTML

转载 作者:行者123 更新时间:2023-12-02 01:41:09 24 4
gpt4 key购买 nike

我在 JSF 应用程序中有这个用例。

假设在 JSF 网络应用程序中,我有一个调用外部服务的按钮,该服务返回一个完整的 HTML 响应,那么我如何向我的用户浏览器显示该 HTML 响应?

事情的来龙去脉是这样的。

  1. 在用户浏览器中,显示我的应用程序。那里有一个按钮,用户可以点击。
  2. 点击按钮将调用外部服务。外部服务将返回有关某个 HTML 标记的信息。 HTML 包含 head/body 和 javascript。目前该服务可以通过 REST 服务或普通的数据库调用来实现
  3. 如何在我的用户浏览器中显示该 HTML 标记?

是否可以在 JSF 网络应用程序中编写非 JSF 输出?

补充一下,我认为我的问题是如何在我的支持 bean 中编写 HTML 并将其写回用户浏览器。

最佳答案

直接写到HTTP response body此后,您指示 JSF response is manually completed .原理和How to provide a file download from a JSF backing bean?没太大区别, 除了您需要将内容处置设置为 inline (无论如何这已经是默认设置)。

public void writeHtmlResponse() throws IOException {
FacesContext fc = FacesContext.getCurrentInstance();
ExternalContext ec = fc.getExternalContext();

ec.setResponseContentType("text/html;charset=UTF-8");
ec.setResponseCharacterEncoding("UTF-8");
ec.getResponseOutputStream().write(html.getBytes("UTF-8"));

fc.responseComplete(); // Important! Otherwise JSF will attempt to render the response which obviously will fail since it's already written with a file and closed.
}

关于jsf - 在基于 JSF 的 Web 应用程序中编写纯 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28538070/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com