4
我創建了一個Facelet組件來擴展h:commandLink(以添加一些功能和圓角)。擴展JSF commandLink組件
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<span class="btn-left btn-corners"> </span>
<span type="submit" class="submit">
<h:commandLink id="#{id}" value="#{label}" action="#{action}" />
</span>
<span class="btn-right btn-corners"> </span> </ui:composition>
我的新組件可以使用
<my:commandLink id="continue" label="continue" action="#{applyBacking.submit}"/>
訪問和Java代碼
public String submit(){
...
}
但是它給了我一個錯誤 「ApplyBacking沒有物業提交」。 我明白這個錯誤的原因,因爲在呈現my:commandLink時,它會嘗試評估#{applyBacking.submit}屬性。相反,我希望關於調用的方法(applyBacking.submit)的信息被傳遞給模板並在渲染h:commandLink時進行評估。
有什麼建議嗎?