Boa tarde pessoal, estou comecando a estudar sobre struts, e jsp…
E estou com uma duvida, criei uma pagina jsp q tem um login.
Entro com login e senha. o jsp chama a minha classe Action que verifica se o login é valido ou nao.
A duvida é q dependendo do resultado que vou montar a pagina de resposta.
Estava pensando ( idéia ) em gravar na seção o atributo loginValido, dai
quando for criar a pagina jsp de resposta avaliar este atributo. Só que pra fazer isso eu preciso de algum exemplo se alguem tiver algum para me mostrar Ou alguma outra dica…eu agradeço…
/* * Created on Jun 20, 2005 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Style - Code Templates */packagebr.com.xpto.struts.action;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importorg.apache.commons.beanutils.BeanUtils;importorg.apache.struts.action.Action;importorg.apache.struts.action.ActionForm;importorg.apache.struts.action.ActionForward;importorg.apache.struts.action.ActionMapping;importbr.com.xpto.struts.dao.LoginDAO;importbr.com.xpto.struts.form.LoginForm;importbr.com.xpto.struts.model.LoginBean;/** * @author web35 * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */publicclassLoginActionextendsAction{publicActionForwardexecute(ActionMappingmap,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsException{System.out.println("Algum usuario tentando logar");LoginFormformulario=(LoginForm)form;LoginDAOlogin=newLoginDAO();if(!login.validaLogin(formulario)){returnmap.findForward("erro");}else{HttpSessionsession=request.getSession();LoginBeanusuarios=newLoginBean();BeanUtils.copyProperties(usuarios,formulario);//joga usuario na sessãosession.setAttribute("usuario",usuarios);returnmap.findForward("ok");}}}
Amigão, também estou começando a engatinhar neste assunto…
De qualquer forma, pelo que entendi, você está fazendo a validação do login do usuário dentro da Action. Pelo que tenho lido por aí, isso não deve ser feito dentro a Action.
Posta seu código aí pra galera entender melhor o que você está fazendo.
Depois, vou te mandar um exemplo que segui em um tutorial bem legalzinho…
Abração.
renanpto
public class LoginActionForm extends Action{
/**CreatesanewinstanceofLoginActionForm*/publicLoginActionForm(){}publicActionForwardexecute(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse)throwsException{LoginFormloginForm=(LoginForm)form;// Aqui chamo direto a camada de persistencia para testar o acesso ao bancoAbstractDAOabstractDAO=FactoryAbstractDAO.getAbstractDAO(EntidadesDAO.HSQL.toString());booleanloginTrue=abstractDAO.login(loginForm);returnmapping.findForward(String.valueOf(loginTrue));}
}
renanpto
Pedrosa como você usa o bean no Jsp… ? e por que você utilizou esta linha “BeanUtils.copyProperties(usuarios,formulario);” ?
Pedrosa
Na verdade eu não uso faz tempo o Struts, mas é algo mais ou menos assim: