3

我在我的项目中使用 Omnifaces (GREAT LIBRARY)。这是一个带有 primefaces 4 库的 jsf 2 项目,在 JBoss 7.2 上运行。我已经使用了<p:graphicImage />从 db 加载图像。我在互联网上找到了代码并且它工作正常。

当我UnmappedResourceHandler在我的项目中激活omnifaces时,问题就来了。激活后,处理程序工作正常,我可以通过 css 的名称访问我的资源中的(其他)图像。但是这个处理程序处于活动状态,图像的加载<p:graphicImage />不再起作用。调试代码,我只能看到 1 个对内容的请求(没有 unmappedresourcehandler 的请求是 2 个)。

有什么解决方法吗?

谢谢!

4

1 回答 1

3

问题已解决。UnmappedResourceHandler错误地预期ResourceHandler#createResource()会返回这些null资源,以便它可以将调用委托给包装的资源处理程序。但是,它没有返回null,最终将一个空的资源主体写入响应。

通过检查请求参数是否ln等于“primefaces”以及请求参数pfdrid是否不是来修复它null。然后UnmappedResourceHandler将调用委托给包装的资源处理程序,这将是PrimeResourceHandler.

这些更改在提交8abfb8a中可见,并且根据今天的 1.8 快照可用。

于 2014-04-08T07:23:00.763 回答