Pessoal,
sempre vejo apontar actionListener para um metodo no managedbean, porem sei que funciona se apontar para um metodo do model(mesmo sem o actionevent).
Eis a duvida é errado fazer isso? Como ficam as boas praticas neste caso???
Coloquei um caso ridiculo apenas pra ilustrar.
View<h:form>
<h:panelGrid columns="2">
<h:outputLabel value="String 1:" />
<h:inputText value="#{myMn.myModel.string1}" />
<h:outputLabel value="String 2:" />
<h:inputText value="#{myMn.myModel.string2}" />
<h:outputLabel value="Resultado concatenado:" />
<h:inputText value="#{myMn.myModel.concatenado}" />
<h:commandButton value="Atualizar via MB" actionListener="#{myMn.concatena()}" />
<h:commandButton value="Atualizar via model" actionListener="#{myMn.myModel.concatena()}" />
</h:panelGrid>
</h:form>
private MyModel myModel;
public MyMb() {
myModel = new MyModel();
}
//getters setters omitidos
public void concatena(ActionEvent event) {
myModel.concatena();
}
private String string1;
private String string2;
private String concatenado;
public MyModel() {
string1 = "";
string2 = "";
concatenado = "";
}
//getters setters omitidos
public void concatena() {
concatenado = string1 + string2;
}