Boa tarde,
Estou com um problema para fazer o tratamento de uma sessão. O que acontece é que ao validar o login do usuário eu grava o objeto(Convenio) retornado dentro da sessão e dou um forward para a página seguinte, sendo que, quando eu abro outra janela e digito o endereço da próxima página direto(ServletLoginConvenio) ele testa a sessão e se ouver algum objeto(Convenio) com o valor de true para o atributo logado eu dou um forward para a pagina. Só que eu queria que se ele abrice uma outra aba no navegador ou abrice outra janela e tentace entrar direto na página ele fosse redirecionado para index.jsp.
Abaixo segue o meu código:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String login = null;
String senha = null;
BaseDao bd = new BaseDao();
List<Convenio> lstConvenio = null;
if (request.getParameter("login") != null &&
request.getParameter("senha") != null) {
login = request.getParameter("login");
senha = request.getParameter("senha");
lstConvenio = ((List<Convenio>) (bd.search("Convenio.findByLoginAndSenha", "login", login, "senha", senha)));
if (lstConvenio.size() == 1) {
lstConvenio.get(0).setLogado(true);
request.getSession().setAttribute("Convenio", lstConvenio.get(0));
request.getSession().setMaxInactiveInterval(60);
RequestDispatcher rd = request.getRequestDispatcher("resultVIEW.jsp");
rd.forward(request, response);
} else {
response.sendRedirect("index.jsp");
}
} else {
if (((Convenio)(request.getSession().getAttribute("Convenio"))).getLogado() == true) {
RequestDispatcher rd = request.getRequestDispatcher("resultVIEW.jsp");
rd.forward(request, response);
} else {
response.sendRedirect("index.jsp");
}
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
Bem… Espero ter me feito entender
Desde de já obrigado.