【发布时间】:2012-04-09 05:14:19
【问题描述】:
我的应用程序需要实现动态图像,其中浏览器可以从我的数据库中获取 JPG 或 PNG。
我一直是reading this thread,并且在学习方面还没有走得太远。有人可以提供有关如何实现 ResourceHandler 的教程的链接。
浏览了亚马逊提供的关于 JSF 2.0 的所有书籍,似乎没有一本涵盖这个主题。提前致谢。
更新:这个问题被撤回,因为我采取了不同的解决方案路径,它只是实现一个 Servlet 来提供图像。我要问的是如何让 JSF Facelets Servlet 响应带有“image/png”媒体类型的 GET。尽管您似乎可以通过 ResourceHandler 工具来做到这一点,但我发现实现 Servlet 更容易,而且您在资源路径名称方面具有更大的灵活性。
令我惊讶的是,虽然 Servlet 在处理请求时没有 FacesContext,但您可以注入 CDI 管理的 bean 或资源。这使我可以像应用程序的其余部分一样访问 JPA 后端。所以我的问题解决了。
【问题讨论】:
-
Servlet 确实要容易得多。您只能将它与
<h:outputScript>/<h:ouputStylesheet>/<h:graphicImage>和library一起使用,因此您将错过重定位和版本控制的可能性。 -
@BalusC 是的,我不关心这个,只要我可以为图像生成一个可书签的 URL 以导出到其他网页。回到最初的话题,我还没有找到编写 ResourceHandler 的教程/介绍,我想知道你在另一个线程中帮助的那个人读到了他所做的那样。除了包的 javadoc 之外,我什么也没有想出。