Bom dia
Galera, estou com 1 elefante branco…
Criei 1 sistema de login, que se o usuário digitar a senha corretamente, ele preenche algumas variáveis de sessão, caso contrario, eu invalido a sessão.
HttpSession session = request.getSession();
session.invalidate();
Bom na minha máquina local, está funcionando perfeitamente, mas quando eu publiquei no meu servidor, as vezes 1 usuário loga com a senha corretamente, e ele traz alguns dados de outra pessoa, já verifiquei a query, está retornando os dados corretamente do input do login e senha.
Mas está alocando as session erroneamente, está como por exemplo, trazendo de 1 usuário logado (foi o que eu percebi).
Tenho que tratar o servidor tomcat em algum lugar, indicando que vai ser multi-usuário ?
vou postar o código do meu login (controler)
package util.controller;
import java.io.IOException;
import java.sql.SQLException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import util.modulo.*;
public class Login extends HttpServlet
{
/**
*
*/
private static final long serialVersionUID = 1L;
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
HttpSession session = request.getSession();
UsuarioBin user = new UsuarioBin();
try
{
user = UsuarioDao.locUser(request.getParameter("login"),request.getParameter("senha"));
}
catch (Exception e)
{
session.invalidate();
e.printStackTrace();
}
if (request.getParameter("disconnect") != null)
{
if ( request.getParameter("disconnect").equals("logout"))
{
session.invalidate();
response.sendRedirect("login.html");
}
}
else
{
if (user != null)
{
session.setAttribute("filial" , user.getFilial());
session.setAttribute("usuario" , user.getLogin());
session.setAttribute("menuLogin" , user.getMenu());
session.setAttribute("codVendedor" , user.getCodvend());
session.setAttribute("nomVendedor" , user.getNomusr());
session.setAttribute("nomPortal" , user.getNomportal());
session.setAttribute("codusr" , user.getUsrsis());
session.setAttribute("usrnivel" , user.getNivel());
session.setAttribute("usrcc" , user.getUsrcc());
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date data = new Date();
String versao = "1.0.0.1.";
session.setAttribute("versao",versao);
session.setAttribute("data",dateFormat.format(data));
if (user.getUsrcodcli() != null)
{
session.setAttribute("codcliente", user.getUsrcodcli());
session.setAttribute("codloja", user.getUsrlojcli());
}
ArrayList<MenuBin> pais = new ArrayList<MenuBin>();
try {
pais = MenuDao.locMenu(user.getMenu());
session.setAttribute("menuPai",pais);
response.sendRedirect("index.jsp");
} catch (SQLException e) {
session.invalidate();
e.printStackTrace();
}
}
else
{
session.invalidate();
response.sendRedirect("login.html");
}
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
doPost(request, response);
}
}
Desde já agradeço a ajuda
Obrigado
Christian