Boa noite a todos do fórum.
Bem estou com um problema em exibir os campos de uma tabela em um formulário de alteração de usuarios.
Tenho as classes abaixos:
Cadastro:
[code]package classe.modelo.vo;
import java.sql.Date;
public class Cadastro{
private int id;
private String cnpjCpf;
private String razaoSocial;
private String nome;
private String inscrEstadual;
private String rg;
private String inscrMun;
private String rua;
private String complemento;
private String numero;
private String bairro;
private Municipio municipio; // campo municipio id
private String cep;
private String telefone;
private String www;
private String email;
private String obs;
private Date dtCadastro;
private String sts;
private Empresa empresa;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getCnpjCpf() {
return cnpjCpf;
}
public void setCnpjCpf(String cnpjCpf) {
this.cnpjCpf = cnpjCpf;
}
public String getRazaoSocial() {
return razaoSocial;
}
public void setRazaoSocial(String razaoSocial) {
this.razaoSocial = razaoSocial;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getInscrEstadual() {
return inscrEstadual;
}
public void setInscrEstadual(String inscrEstadual) {
this.inscrEstadual = inscrEstadual;
}
public String getRg() {
return rg;
}
public void setRg(String rg) {
this.rg = rg;
}
public String getInscrMun() {
return inscrMun;
}
public void setInscrMun(String inscrMun) {
this.inscrMun = inscrMun;
}
public String getRua() {
return rua;
}
public void setRua(String rua) {
this.rua = rua;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
public String getBairro() {
return bairro;
}
public void setBairro(String bairro) {
this.bairro = bairro;
}
public Municipio getMunicipio() {
return municipio;
}
public void setMunicipio(Municipio municipio) {
this.municipio = municipio;
}
public String getCep() {
return cep;
}
public void setCep(String cep) {
this.cep = cep;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getWww() {
return www;
}
public void setWww(String www) {
this.www = www;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getObs() {
return obs;
}
public void setObs(String obs) {
this.obs = obs;
}
public Date getDtCadastro() {
return dtCadastro;
}
public void setDtCadastro(Date dtCadastro) {
this.dtCadastro = dtCadastro;
}
public String getSts() {
return sts;
}
public void setSts(String sts) {
this.sts = sts;
}
public Empresa getEmpresa() {
return empresa;
}
public void setEmpresa(Empresa empresa) {
this.empresa = empresa;
}
}
[/code]
A classe Usuario:
[code]
package classe.modelo.vo;
public class Usuario extends Cadastro{
private int id;
private String login;
private String senha;
private String status;
@Override
public int getId() {
return id;
}
@Override
public void setId(int id) {
this.id = id;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}[/code]
Aí eu fiz um método chamado procurar, para trazer o usuário a ser alterado.
O método procurar na classe UsuarioDao:
public Usuario procurar(int Id){
try {
Usuario usuario = null;
String sql="SELECT c.cad_id ,c.cad_nome ,c.cad_email ,c.cad_telefone ,c.cad_cnpjcpf , " +
"c.cad_rg ,c.cad_rua ,c.cad_complemento ,c.cad_numero ,c.cad_bairro ,c.cad_dtcadastro , " +
"u.usu_id ,u.usu_login ,u.usu_senha ,u.usu_sts ,m.mun_descricao FROM cadastro c " +
"INNER JOIN usuario u " +
"ON " +
"u.usu_id = c.cad_id " +
"INNER JOIN municipio m " +
"ON " +
"m.mun_id = c.cad_munid " +
"where u.usu_id = ? ";
PreparedStatement consulta = conexao.prepareStatement(sql);
consulta.setInt(1,Id);
ResultSet resultado = consulta.executeQuery();
if(resultado.next()){
usuario = new Usuario();
usuario.setMunicipio(new Municipio());
usuario.setId(resultado.getInt("cad_id"));
usuario.setNome(resultado.getString("cad_nome"));
usuario.setEmail(resultado.getString("cad_email"));
usuario.setTelefone(resultado.getString("cad_telefone"));
usuario.setCnpjCpf(resultado.getString("cad_cnpjcpf"));
usuario.setRg(resultado.getString("cad_rg"));
usuario.setRua(resultado.getString("cad_rua"));
usuario.setComplemento(resultado.getString("cad_complemento"));
usuario.setNumero(resultado.getString("cad_numero"));
usuario.setBairro(resultado.getString("cad_bairro"));
usuario.setDtCadastro(resultado.getDate("cad_dtcadastro"));
usuario.setId(resultado.getInt("usu_id"));
usuario.setLogin(resultado.getString("usu_login"));
usuario.setSenha(resultado.getString("usu_senha"));
usuario.setStatus(resultado.getString("usu_sts"));
usuario.getMunicipio().setDescricao(resultado.getString("mun_descricao"));
}
return usuario;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
e por último a JSP para alterar o usuário:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<jsp:useBean id="usuario" scope="session" class= "classe.modelo.vo.Usuario" />
<jsp:useBean id="cadastro" scope="session" class= "classe.modelo.vo.Cadastro" />
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Alterar Usuário</title>
</head>
<body>
<jsp:include page="menu.jsp" />
<fieldset>
<h2> Alterar Usuário</h2>
<!-- Colocar imagem para cadastro de usuarios -->
<!-- <center><img id="photo_compagny" src="images/business_7.jpg" alt="company xhdzy" title="photo_compagny" /></center>
<div class="clear"></div><br>-->
<form method="post" action="ServletUsuario?acao=Cadastrar">
<fieldset>
<legend>Informações pessoais</legend>
<br />
<table cellpadding=0 cellspacing=0 border="0">
<tr>
<td>Nome completo: </td>
<td><input type="text" name="nome" required="true" size="50" value="${cadastro.nome}"></td>
</tr>
//só exibe os dados daqui...
<tr>
<td>Login: </td>
<td><input type="text" name="login" required="true" value="${usuario.login}"></td>
</tr>
<tr>
<td>Senha: </td>
<td><input type="password" name="senha" required="true" value="${usuario.senha}"></td>
</tr>
<tr>
<td>Status do Usuário: </td>
<td>
//...até aqui.
<c:if test="${usuario.status == 'AT'}">
<input type="radio" name="sts" value="AT" checked="true"/>Ativo
</c:if>
<input type="radio" name="sts" value="IN" />Inativo
</td>
</tr>
<tr>
<td>Endereço de E-Mail: </td>
<td><input type="text" name="email" required="true" size="50" value="${cadastro.email}"></td>
</tr>
<tr>
<td>Telefone de Contato: </td>
<td><input type="text" name="telefone" required="true" value="${cadastro.telefone}"></td>
</tr>
<tr>
<td>Cpf: </td>
<td><input type="text" name="cnpjCpf" required="true" value="${cadastro.cnpjCpf}"></td>
</tr>
<tr>
<td>RG: </td>
<td><input type="text" name="rg" required="true" value="${cadastro.rg}"></td>
</tr>
</table>
</fieldset>
<br>
<fieldset>
<legend>Endereço</legend>
<table cellpadding=0 cellspacing=0 border="0">
<tr>
<td>Rua: </td>
<td><input type="text" name="rua" required="true" size="50" value="${cadastro.rua}"></td>
</tr>
<tr>
<td>Complemento: </td>
<td><input type="text" name="complemento" size="50" value="${cadastro.complemento}"></td>
</tr>
<tr>
<td>Número: </td>
<td><input type="text" name="numero" size="50" value="${cadastro.numero}"></td>
</tr>
<tr>
<td>Bairro: </td>
<td><input type="text" name="bairro" size="50" value="${cadastro.bairro}"></td>
</tr>
<tr>
<td>Município: </td>
<td><select name="municipio" required="true">
<c:forEach items="${Municipio}" var="item">
<option value="${item.id}" <c:if test="${item.id == usuario.municipio.id}"> selected</c:if> >${item.descricao}</option>
</c:forEach>
</select></td>
</tr>
<tr>
<td>Cep: </td>
<td><input type="text" name="cep" value="${cadastro.cep}"></td>
</tr>
<tr>
<td valign="top">Observação: </td>
<td height="52" valign="bottom"><textarea name="obs">${cadastro.obs}</textarea></td>
</tr>
</table>
</fieldset>
<table cellpadding=0 cellspacing=0 style="width:100%;height:100%;" border="0">
<tr>
<td colspan="2" align="center"><input type="submit" name="salvar" value="Salvar"/></td>
<td colspan="2" align="center"><input type="reset" name="reset" value="Cancelar"/></td>
<td colspan="2" align="center"><input type="button" name="btn" onclick="window.location.href='menu.jsp'" value="Home"/></td>
</tr>
</table>
</form>
</fieldset>
</body>
</html>
O problema é que não dá nenhuma mensagem de erro mas também não exibe os dados do cadastro, somente exibe o login, a senha e status que pertence a classe usuario.
O que está errado? :?: