Boa noite!!!
Tenho uma lista com o botão editar, quando, eu clicar no botão editar, como faço para levar as informações da tabela para o input.Não estou conseguindo fazer
**lista.jsp**
<%@ taglib prefix=“display” uri=“http://displaytag.sf.net” %>
<%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
<%@ taglib prefix=“fmt” uri=“http://java.sun.com/jsp/jstl/fmt”%>
<title>Listagem de Usuários</title>
<link type="text/css" rel="stylesheet" href="/chamados/resources/bootstrap-4.1.3-dist/css/bootstrap.min.css" />
<link type="text/css" rel="stylesheet" href="/chamados/resources/css/formstyle.css" />
<link type="text/css" rel="stylesheet" href="/chamados/resources/displaytag/displaytag.css" />
<link rel="shortcut icon" href="/chamados/resources/ico/Ghost-Black.ico">
Lista de Usuários
<button class="btn btn-primary btn-sm" onclick="forms[0].action='/chamados/usuario/edit'">Novo Usuário</button>
<br><br>
<div style="display:flex; justify-content: center; align-items: center; ">
<table class = "table table-hover table-bordered table-striped">
<caption>Cadastro de Usuários</caption>
<thead>
<tr>
<th>Usuario</th>
<th>Email</th>
<th>Telefone</th>
<th>Editar</th>
</tr>
</thead>
<tbody>
<c:forEach var="item" items="${usuarios}">
<tr>
<td data-label="First name">
<c:out value="${item.nmUsuario}"/>
</td>
<td data-label="First name">
<c:out value="${item.dsEmail}"/>
</td>
<td data-label="First name">
<c:out value="${item.nrTelefone}"/>
</td>
<td>
<button class="btn btn-primary btn-sm" onclick="read(${item.idUsuario})">Editar</button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
classe UsuarioController.java
package br.com.jsm.chamados.controllers;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import br.com.caelum.vraptor.Controller;
import br.com.caelum.vraptor.Result;
import br.com.caelum.vraptor.validator.I18nMessage;
import br.com.caelum.vraptor.validator.Validator;
import br.com.jsm.chamados.business.SetorBO;
import br.com.jsm.chamados.business.UsuarioBO;
import br.com.jsm.chamados.models.UsuarioModel;
import br.com.jsm.chamados.types.StUsuarioType;
/**
- Classe Destinada para realizar o CRUD
- C - CREATE
- R - READ
- U - UPDATE
- D - DELETE
- @author Usuário
*/
@Controller
public class UsuarioController {
@Inject
private EntityManager entityManager;
@Inject
private Result result;
@Inject
private Validator validator;
private UsuarioBO usuarioBO;
private SetorBO setorBO;
public void edit(UsuarioModel usuario) {
setorBO = new SetorBO();
result.include("setores", setorBO.getListSetor(entityManager));
result.include("situacoes", StUsuarioType.values());
result.include("usuario", usuario);
}
//@SuppressWarnings("unchecked")
public void list() {
/*Query query = this.entityManager.createQuery("from UsuarioModel");
List<UsuarioModel> usuarios = query.getResultList();
result.include("usuarios", usuarios); */
usuarioBO = new UsuarioBO();
result.include("usuarios", usuarioBO.getListUsuarios(entityManager));
}
public void save(UsuarioModel usuario) throws Exception {
validator.validate(usuario);
if (usuario.getSetor().getIdSetor() == 0) {
validator.add(new I18nMessage("idSetor", "not.blank"));
}
if (usuario.getStUsuario().equals(StUsuarioType.SELECIONE)) {
validator.add(new I18nMessage("stUsuario", "not.blank"));
}
if (! validator.hasErrors()) {
if(usuario.getDsSenha() != null && ! usuario.getDsSenha().equals("")) {
if (! usuario.getDsSenha().equals(usuario.getDsSenhaConfirm())) {
validator.add(new I18nMessage("dsSenha", "senha.nao.confere"));
}
}
}
validator.onErrorForwardTo(this).edit(usuario);
usuarioBO = new UsuarioBO();
if (usuario.getDsSenha() != null && ! usuario.getDsSenha().equals("")) {
String dsSenha = usuarioBO.encryptPassword(usuario.getDsSenha());
usuario.setDsSenha(dsSenha);
}else {
if (usuario.getIdUsuario() != 0) {
UsuarioModel usuarioBD = this.entityManager.find(UsuarioModel.class, usuario.getIdUsuario());
usuario.setDsSenha(usuarioBD.getDsSenha());
}
}
if (usuario.getIdUsuario() == 0) {
create(usuario);
}else {
update(usuario);
}
}
public void create(UsuarioModel usuario) {
this.entityManager.persist(usuario);
result.forwardTo(this).edit(null);
}
public void read(UsuarioModel usuario) {
UsuarioModel setorBD = this.entityManager.find(UsuarioModel.class, usuario.getIdUsuario());
result.forwardTo(this).edit(setorBD);
}
public void update(UsuarioModel usuario) {
this.entityManager.merge(usuario);
result.forwardTo(this).edit(null);
}
public void delete(UsuarioModel usuario) {
UsuarioModel setorBD = this.entityManager.find(UsuarioModel.class, usuario.getIdUsuario());
this.entityManager.remove(setorBD);
result.forwardTo(this).edit(null);
}
}