Я создал компонент Facelet для расширения h: 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 не имеет свойства submit».Я понимаю причину этой ошибки, потому что при рендеринге my: commandLink он пытается оценить # {applyBacking.submit} для свойства.Вместо этого я хочу, чтобы информация о вызываемом методе (applyBacking.submit) передавалась в шаблон и оценивалась при отображении h: commandLink.
Есть предложения?