我想通过方法绑定从自定义控件传递SSJS代码。 以下是此示例的操作按钮背后的代码:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xc="http://www.ibm.com/xsp/custom">
<xc:ccSSJS>
<xc:this.ssjsCode>
<![CDATA[#{javascript:
var app = facesContext.getApplication();
app.createMethodBinding("#{javascript:var control = getComponent('viewPanel1');print(typeof control);}", null);
}]]>
</xc:this.ssjsCode>
</xc:ccSSJS>
</xp:view>
但是我得到了Script解释器错误,为什么我不能调用getComponent方法?
答案 0 :(得分:1)
解释原因有点复杂...... 解决方法是使用 FacesUtil 类的 getComponentFor 方法:
com.ibm.xsp.util.FacesUtil.getComponentFor(view,'viewPanel1')