Ola boa tarde
Estou com o seguinte cenario, tenho uma pagina JSP que lista todos os meus usuarios e ao lado de cada usuario tenho o botao alterar, ao clicar neste botao é chamada uma Action(Struts2) que ira chamar o DAO para listar os dados deste usuario em uma outra tela jsp, porem ocorre um problema quando peco para listar, acredito que seja problema na minha logica no dao…vou colocar abaixo a forma que esta o meu dao de listar o usuario por id.
Alguem sabe me dizer se estou utilizando a clausula where corretamente?
DAO
public List<Clients> ShowClients(Long cliCod) {
return (List<Clients>) this.session.createQuery("select cliente from Clients as cliente where CliCod=?");
}
Pagina JSP
<c:forEach items="${cliente}" var="cliente">
<tr>
<td>${cliente.cliCod}</td>
<td>${cliente.cliNam}</td>
<td>${cliente.cliAdd}</td>
<td>${cliente.cliCep}</td>
<td>${cliente.cliCit}</td>
<td><a href="mostraCliente?id=${cliente.cliCod}">Alterar</a></td>
</tr>
</c:forEach
Action do Struts
public class MostraClienteAction {
private Long cliCod;
private Clients cliente;
@Action (value="mostraCliente", results = {
@Result(name="ok", location="/mostra-clientes.jsp")
})
public String execute() {
cliente = (Clients) new ClientDAO().ShowClients(cliCod);
return "ok";
}
public Clients getCliente() {
return cliente;
}
public void setId(Long cliCod) {
this.cliCod = cliCod;
}
}
Se nao fui claro me perguntem que explico novamente