[RESOLVIDO] Buscar dados no BD para edição em JSP

Olá boa tarde,

Tenho uma aplicação onde faço cadastro, edição e exclusão de usuários
Cadastro e exclusão tá tudo certo, o meu problema tá na edição…

página editarPerfil.jsp

<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

<%@page import="negocio.Usuario" %>
<%@page import="java.util.Properties" %>
<%@page import="beans.*" %>
<!--jsp:useBean id="cadastro" class="negocio.Usuario" scope="session" /-->
<jsp:useBean id="usuario" class="beans.LoginBean" scope="session"/>

<jsp:include page="cabecalhoLogado.html" />

<c:if test="${usuario.usuario.logged == true}">  

    <span class="nomeUser"> <h1 class="nomeUsuario">${usuario.usuario.username}
            <a href="../logout" class="sair">Sair</a></h1>
    </span>

            <form name="cadastro" op="editar" action="cadastroUser" id="formcadastro"  method="post"><br>
        <p>Editar Perfil</p>
        <fieldset title="Edição de Perfil do Usuário" id="fieldsetdados"><br>
            <p>
                <label for=name">Username:</label>
                <input type="text" name="username" class="campos" id="campoUser" readonly="readonly" value="${usuario.usuario.username}"/><br>
            </p>
            <p>
                <label for="senha">Senha:</label>
                <input type="password" name="senha" id="senha" class="campos"/><br>
            </p>
            <p>
                <label for="nome">Nome:</label>
                <input type="text" name="nome" id="nome" class="campos" value="${usuario.usuario.nome}"/><br>
            </p>
            <p>
                <label for="email">E-Mail:</label>
                <input type="text" name="email" id="email" class="campos" value="${usuario.usuario.email}"/><br>
            </p>
            <p  class="toolbar">
                <input type="submit" id="cadastro-submit" value="Salvar"/>
                <input type="hidden" name="submited" value="true" />
                <input type="hidden" name="op" value="editar"/>
            </p>
        </fieldset>
    </form>
</c:if>  

Tenho um servlet que chama a página de edição, mas antes de redirecionar, ele tenta setar os dados do usuário através do username e senha, necessários pro acesso ao sistema.

classe CarregaDadosUsuarioServlet.java

package servlets;

import beans.UsuarioBean;
import beans.ErroBean;
import beans.LoginBean;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.swing.JOptionPane;
import org.apache.commons.beanutils.BeanUtils;

public class CarregaDadosUsuarioServlet extends HttpServlet {
    
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        HttpSession sessao = request.getSession();
        LoginBean lb = (LoginBean) sessao.getAttribute("usuario");

        UsuarioBean ub = new UsuarioBean();
        lb.setUsuario(ub.getCadUsuario(lb.getUsuario().getUsername()));

        try {
            request.setAttribute("usuario", lb);
            request.getRequestDispatcher("editarPerfil.jsp").forward(request, response);
        } catch (Exception e) {
            ErroBean erro = new ErroBean();
            erro.addMsg("Erro Desconhecido!");
            request.setAttribute("erros", erro);
        }
    }
}

Quando ele entra no try, tenta redirecionar pra página editarPerfil.jsp, mas cai na exception…

Alguém ae tem ideia do que to fazendo de errado?

Desde já agradeço
Abraço

Alguém???

Dá um sysout na Exception pra ver qual o erro mesmo

System.out.println("erro: " + e.getStackTrace());

Senão fica muito difícil de ajudar!

erro: [Ljava.lang.StackTraceElement;@459854

Não, não era bem isso que eu estava imaginando. Era o e.printStackTrace(), eu viajei. Tem como você rodar de novo?

Descobri o que tava acontecendo, tinha um atributo “logged” na minha classe LoginBean do pacote beans.LoginBean ae ele tava tentando procurar esse atributo em negocio.Usuario

Valeu pela ajuda, já resolveu parte do problema…

Se tiver mais alguma dúvida posto ae de novo

Deu tudo certo, consegui fazer ir pra página de edição!

Eu só tirei o <c:if test=${usuario.usuario.logged}>

E coloquei o atributo “logged” na minha classe Usuario.

Por enquanto acho que é só isso.

Até mais.