Prezados colegas
Estou estudando JSF e estou convertendo um pequeno aplicativo de struts para JSF.
É um aplicativo de controle de despesas á minha duvida é em pagina onde tenho uma grid e em cada linha da grid tenho um link para editar e excluir.
As duvidas são as seguinte :
1.NO METODO EDITAR COMO PASSAR A DESPESA A SER EDITADA?
No struts
<td><bean:message key=“prompt.Editar”/></td>>
No JSF ?
<h:column>
<f:facet name=“header”>
<h:outputText value="#{msg[‘prompt.Editar’]}"/>
</f:facet>
<h:commandButton action="#{tipoDespesaBean.editar}" value="#{msg[‘prompt.Editar’]}"/>
</h:column>
2.NO METODO EXCLUIR COMO EXECUTAR O JAVASCRIPT E PASSAR O CODIGO DA DESPESA ?
No Struts
<td><bean:message
key=“prompt.Excluir”/></td>>
No jsf ?
<h:column>
<f:facet name=“header”>
<h:outputText value="#{msg[‘prompt.Excluir’]}"/>
</f:facet>
<h:commandButton action="#{tipoDespesaBean.editar}" value="#{msg[‘prompt.Excluir’]}"/>
</h:column>
1-despesa.jsp
<f:view>
<html>
<head>
<title><h:outputText value="#{msg[‘prompt.Titulo’]}"/></title>
</head>
<body>
<h:form>
<div align=“center”>
<div id=“body”>
<h1><h:outputText value="#{msg['prompt.TituloLisTipoDespesa']}"/></h1>
<h:dataTable id="estadosTable" value="#{tipoDespesaBean.tipoDespesas}" var="tipoDespesa"
border="1" cellspacing="0" cellpadding="86" rows="5"
styleClass="html-table">
<h:column>
<f:facet name="header">
<h:outputText value="#{msg['prompt.Codigo']}"/>
</f:facet>
<h:outputText value="#{tipoDespesa.cdTipoDespesa}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{msg['prompt.TipoDespesa']}"/>
</f:facet>
<h:outputText value="#{tipoDespesa.dsTipoDespesa}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{msg['prompt.Observacao']}"/>
</f:facet>
<h:outputText value="#{tipoDespesa.dsObservacao}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{msg['prompt.Editar']}"/>
</f:facet>
<h:commandButton action="#{tipoDespesaBean.editar}" value="#{msg['prompt.Editar']}"/>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{msg['prompt.Excluir']}"/>
</f:facet>
<h:commandButton action="#{tipoDespesaBean.editar}" value="#{msg['prompt.Excluir']}"/>
</h:column>
</h:dataTable>
<div align="center">
<p> </p>
<h:commandLink action="cadtipodespesa" value="#{msg['prompt.CadNovoTipoDespesa']}" />
<h:commandLink action="principal" value="#{msg['prompt.TelaPrincipal']}" />
</div>
</div>
</div>
</h:form>
</body>
</html>
</f:view>
2-DespesaBean.java
public class DespesaBean {
/**
* Referencia para a camada de regras de negocio.
*/
private DespesaBusiness despesaBusiness;
/**
* Usuario a serusado no form.
*/
private Despesa despesa = new Despesa();
/**
* Parametro de filtro.
*/
private String filtro;
/**
* Armazena o usuario logado apos a autenticacao.
*/
public DespesaBusiness getDespesaBusiness() {
return despesaBusiness;
}
public void setDespesaBusiness(DespesaBusiness despesaBusiness) {
this.despesaBusiness= despesaBusiness;
}
public Despesa getDespesa() {
return despesa;
}
public void setDespesa(Despesa despesa) {
this.despesa = despesa;
}
public List listar(){
List lista = despesaBusiness.listar();
return lista;
}
public void excluir(int cdDespesa){
despesaBusiness.excluir(cdDespesa);
return;
}
public void editar(Despesa despesa){
despesaBusiness.editar(despesa);
return;
}
public String cadastrar() {
try {
despesaBusiness.salvar(despesa);
return “listardespesa”;
} catch (Exception e) {
FacesMessage message = new FacesMessage();
message.setSeverity(FacesMessage.SEVERITY_ERROR);
message.setDetail(“Despesa inválida!”);
FacesContext.getCurrentInstance().addMessage(“DespesaForm”, message);
return null;
}
}
}