Olá, to com problemas para alterar os dados de um cadastro.
Eu tenho uma tabela com um botão de editar que manda as informações da linha da tabela para a área de cadastro, porém, o botão de atualizar não ta funcionando não sei pq!!
Aí vai o código:
VeiculoDAO:@Override
public void update(Veiculo value) {
if (this.valida(value)) {
em.merge(value);
}
}
private final String UPDATE = "atualizar";
...
public String getAcao() {
return acao;
}
public void setAcao(String acao) {
this.acao = acao;
}
...
public void actionSalvar() {
System.out.println("actionevent");
if (UPDATE.equals(this.acao)) {
System.out.println("update");
Veiculo veiculo = new Veiculo();
veiculo.setId(Long.valueOf(id));
veiculo.setDescricao(descricao);
veiculo.setCapacidade(capacidade);
veiculo.setConsumo(consumo);
dao.update(veiculo);
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Cadastro Realizado Com Sucesso !", ""));
} else {
System.out.println("save");
Veiculo veiculo = new Veiculo();
veiculo.setDescricao(descricao);
veiculo.setConsumo(consumo);
veiculo.setCapacidade(capacidade);
dao.create(veiculo);
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Cadastro Realizado Com Sucesso !", ""));
}
}
<h:inputText value="#{veiculoMNG.acao}"/>
<p:messages id="msg" showDetail="true" autoUpdate="true"/>
<p:commandButton value="Salvar" actionListener="#{veiculoMNG.actionSalvar}" ajax="false" />
Esse código não dá erro nenhum! Se eu clico no botão da tabela pra editar e mando atualizar, não acontece nada! Parece que nem entra no if do update!
Mas se eu for cadastrar um novo, ele cadastra normal!
Alguém pode me ajudar????
