Pessoal,
Sobre o construção de interfaces com JSF composition.
Dado um Template.xhtml…
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html 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">
<h:head>
</h:head>
<h:body>
<h:form>
<h:panelGroup>
<h:commandButton action="#{mbean[doCancelar]}" value="Cancelar" />
<h:commandButton action="#{mbean[doOk]}" value="OK" />
</h:panelGroup>
</h:form>
</h:body>
</html>
E um CadastroXXX.xhtml que usa esse Template.xhtml…
<ui:composition template="Template.xhtml">
<ui:param name="mbean" value="#{actCadastroXXX}" /> //DEFINE O MBEAN, OK!
<ui:param name="doCancelar" value="doCancelar" /> //MAS ISSO EU NAO GOSTARIA DE FAZER EM TODOS OS CADASTROS...
</ui:composition>
Como eu poderia definir apenas o mbean ‘actCadastroXXX’ para ser usado no Template.xhtml, sem precisar definir os métodos ‘doCancelar’ e ‘doOk’ no CadastroXXX.xhtml?
O motivo é que tenho vários cadastros que utilizarão esse template, por isso gostaria de passar somente o mbean, e não os seus métodos, que serão fixos para todos os cadastros.
CadastroXXXAct.java:
@ManagedBean(name="actCadastroXXX")
@RequestScoped
public class CadastroXXXAct implements Serializable {
public String doCancelar() {
//TODO
}
public String doOk() {
//TODO
}
}
Alguma idéia ??
[]'s

