pe:ckEditor 在添加 CombinedResourceHandler 后不再工作



我添加了OmniFaces来使用CombinedResourceHandler。但是现在PrimeFaces Extensions <pe:ckEditor>不再工作了。

是否有解决这个问题的方法?

不幸的是,这是一个由PrimeFaces Extensions加载和管理其JS资源的方式引起的已知问题。这个问题在旧的Google Code主机上已经报告过了,并且在当前的OmniFaces已知问题wiki中提到如下:

PrimeFaces Extensions <=0.7.1-4.0.0(可能还有未来的版本)

PrimeFaces Extensions JS资源primefaces-extensions.jsCombinedResourceHandler不兼容。在加载过程中,它试图从自己的<script>元素中找出版本,以便动态加载额外的CSS/JS资源。然而,这是不存在的,并且由于JS错误而失败,这反过来导致动态加载额外的CSS/JS资源(例如CKEditor)失败。

您最好的选择是通过向web.xml添加以下条目来排除primefaces-extensions.js的组合,告诉CombinedResourceHandler不要组合PrimeFaces Extensions主脚本文件:

<context-param>
    <param-name>org.omnifaces.COMBINED_RESOURCE_HANDLER_EXCLUDED_RESOURCES</param-name> 
    <param-value>primefaces-extensions:primefaces-extensions.js</param-value> 
</context-param>

如果您使用的是OmniFaces 2.2或更新版本,那么您可以使用通配符*作为名称:

<context-param>
    <param-name>org.omnifaces.COMBINED_RESOURCE_HANDLER_EXCLUDED_RESOURCES</param-name> 
    <param-value>primefaces-extensions:*</param-value> 
</context-param>

如果你在 3.0.0版本之前使用PrimeFaces Extensions ,那么你还需要确保PrimeFaces Extensions自己的资源处理程序在faces-config.xml CombinedResourceHandler之后显式声明:

<application>
    <resource-handler>org.omnifaces.resourcehandler.CombinedResourceHandler</resource-handler>
    <resource-handler>org.primefaces.extensions.application.PrimeFacesExtensionsResourceHandler</resource-handler>
</application>

此问题在PrimeFaces Extensions 6.2.8或更高版本中修复。

https://github.com/primefaces-extensions/primefaces-extensions.github.com/issues/601

相关内容

  • 没有找到相关文章

最新更新