0

我想将 JavaScript 框架(名为 Ideal Forms)与 JSF 一起使用。这个框架使用了一些data-idealJSF 不知道的特殊属性(例如“”)。这些属性被 JSF 的呈现过程移除。

基于BalusC代码片段(来自 stackoverflow),我试图将这些属性欺骗到 JSF 组件中:

public class PreRenderViewListener implements SystemEventListener {

    @Override
    public void processEvent(SystemEvent event) throws AbortProcessingException {
       UIViewRoot root = (UIViewRoot) event.getSource();
       UIComponent comp = root.findComponent("myForm:myField");

       comp.getAttributes().put("style", "width: 100px;");
       comp.getAttributes().put("data-ideal", "some_content");
    }
    ...

xhtml代码是

<h:form id="myForm">
    <h:inputText id="myField" ... />
</h:form>

结果是

<form id="myForm" name="myForm" ... >
    <input id="myForm:myField" type="text" name="myForm:myField" style="width: 100px;" />
</form>

如您所见,第一个属性style(h:inputText 已知)被呈现给客户端,第二个属性data-ideal(JSF 根本不知道)不是。有什么建议可以在无需编写自定义组件的情况下支持 jsf-foreign 属性吗?非常感谢。

4

0 回答 0