Jsf 如何在Richface';当readonly属性设置为true时,是否设置编辑器?

Jsf 如何在Richface';当readonly属性设置为true时,是否设置编辑器?,jsf,tinymce,richfaces,Jsf,Tinymce,Richfaces,在使用Seam 2.2、jsf 1.2和Richfaces 3.3处理遗留应用程序时,我遇到了以下问题: 当一个项目处于草稿模式并因此可编辑时,我有一个漂亮的编辑器用于输入和格式化文本。文本和项目通过管理员批准后,将不再可编辑(请参见最后一个属性-只读): 现在显示同一页面时,我立即失去了Richfaces编辑器的所有功能,只有一个丑陋的小文本字段。但是,我仍然需要一些功能,例如全屏切换 任何人都有办法让readonly属性不那么“激进”?当设置“readonly=false”时,richf

在使用Seam 2.2、jsf 1.2和Richfaces 3.3处理遗留应用程序时,我遇到了以下问题:

当一个项目处于草稿模式并因此可编辑时,我有一个漂亮的编辑器用于输入和格式化文本。文本和项目通过管理员批准后,将不再可编辑(请参见最后一个属性-只读):


现在显示同一页面时,我立即失去了Richfaces编辑器的所有功能,只有一个丑陋的小文本字段。但是,我仍然需要一些功能,例如全屏切换


任何人都有办法让readonly属性不那么“激进”?

当设置“readonly=false”时,richfaces编辑器将始终还原为一个简单的文本框。因此,在这种情况下,该属性是无用的。相反,我通过使用两个单独的configuration.properties文件来实现我的目标,从而解决了这个问题

xhtml根据参数“configFile”加载适当的属性文件:

<rich:editor id="pLRiTa" value="#{pReq.comment}"
         autoResize="true" useSeamText="false"
         configuration="#{configFile}"
         oninit="tinyMCE.activeEditor.getBody().setAttribute('contenteditable', #{isEditable});">
<f:param name="save_enablewhendirty" value="true" />
<f:param name="save_onsavecallback" value="savenow" />
禁用编辑的配置属性文件是:

theme="advanced"
plugins="fullscreen"
theme_advanced_buttons1="fullscreen"
theme_advanced_buttons2=""
theme_advamced_buttons3=""
theme_advanced_toolbar_location="top"
theme_advanced_toolbar_align="left"
width="100%"
“savenow”的定义如下:

<a4j:jsFunction name="savenow" id="savenowid"
        action="#{plEditModalController.saveWithoutClosing()}"
        ignoreDupResponses="true" immediate="false" process="plEditAll"
        oncomplete="console.log('saved')"/>


他们在引擎盖下使用CKEditor。查看richfaces showcase和ckeditor,看看是否可以获得所需的内容@axemoi RichFaces 3使用的是正确的,它是tinyMCE 3。我会尽快发布我的解决方案。
theme="advanced"
plugins="fullscreen"
theme_advanced_buttons1="fullscreen"
theme_advanced_buttons2=""
theme_advamced_buttons3=""
theme_advanced_toolbar_location="top"
theme_advanced_toolbar_align="left"
width="100%"
<a4j:jsFunction name="savenow" id="savenowid"
        action="#{plEditModalController.saveWithoutClosing()}"
        ignoreDupResponses="true" immediate="false" process="plEditAll"
        oncomplete="console.log('saved')"/>