[RESOLVIDO]Pode apontar actionListener para o model?

5 respostas
asousaj

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>
managedbean
private MyModel myModel;
	public MyMb() {
		myModel = new MyModel();
	}
	//getters setters omitidos
	public void concatena(ActionEvent event) {
		myModel.concatena();
	}
model
private String string1;
	private String string2;
	private String concatenado;

	public MyModel() {
		string1 = "";
		string2 = "";
		concatenado = "";
	}

	//getters setters omitidos
	public void concatena() {
		concatenado = string1 + string2;
	}

5 Respostas

Hebert_Coelho

Sua dúvida é sobre apontar ou não com o ActionEvent event no parâmetro?

Se for isso, o correto é com. Existem implementações que permitem isso numa boa, outras não.

asousaj

Obrigado pela informação Hebert,
Mas também tenho a duvida quando a apontar direto para o metodo do model(com o ActionEvent), é correto? Desculpe a duvida é que até então sempre apontei actionListener para os ManagedBeans.

Hebert_Coelho

asousaj:
Obrigado pela informação Hebert,
Mas também tenho a duvida quando a apontar direto para o metodo do model(com o ActionEvent), é correto? Desculpe a duvida é que até então sempre apontei actionListener para os ManagedBeans.
Aqui mostra:
JSF Mini Livro - Dicas, conceitos e boas práticas

asousaj

Excelente material Hebert, assim como todo o blog.

Vi realmente que no caso do actionListener é apontar para o metodo no ManagedBean assim como eu vinha fazendo, o problema era a falta do ActionEvent que eu não colocava.
Vou aproveitar e dar mais umas estudadas no seu blog.

Grato!
RESOLVIDO

Hebert_Coelho

asousaj:
Excelente material Hebert, assim como todo o blog.

Vi realmente que no caso do actionListener é apontar para o metodo no ManagedBean assim como eu vinha fazendo, o problema era a falta do ActionEvent que eu não colocava.
Vou aproveitar e dar mais umas estudadas no seu blog.

Grato!
RESOLVIDO

Opa! Valeu pelo apoio. [=

Criado 26 de setembro de 2012
Ultima resposta 26 de set. de 2012
Respostas 5
Participantes 2