Hallo zusammen,
ich habe ein Problem im Kontext HttpSession.
Wir haben ein sehr altes Servlet am laufen. Der Request wird durch die service() Methode (Ich weiß es gibt mittlerweile get und post ), ist historisch gewachsen wie man so schön sagt, verarbeitet.
In dieser Methode erzeuge ich eine neue Session für den User, wenn noch nicht vorhanden:
jetzt rufe ich in dieser Methode noch eine weitere Methode A() auf. Dort prüfe ich dann ob der User ein Testuser ist. Ich hole mir dazu die Session und schaue:
In dieser Methode werden wiederum eine Methode B() aufgerufen. Auch da wir geprüft ob Testuser. Ist die gleiche Abfrage wie oben.
Wenn ich nun im Tomcat (Version 6) - ich weiß, alt - schaue dann bauen sich pro Request nicht eine Session auf sondern ein Vielzahl an Sessions. Das sehe ich ja im Tomcat Web Application Manager.
Ich verstehe tatsächlich nicht warum das passiert. Ich würde meinen mit einer Anfrage an das Servlet und das Neuerstellen der Session wird diese auch nur einmal gezählt.
Kennt jemand das Problem?
Grüße Franzy
ich habe ein Problem im Kontext HttpSession.
Wir haben ein sehr altes Servlet am laufen. Der Request wird durch die service() Methode (Ich weiß es gibt mittlerweile get und post ), ist historisch gewachsen wie man so schön sagt, verarbeitet.
In dieser Methode erzeuge ich eine neue Session für den User, wenn noch nicht vorhanden:
Java:
HttpSession session = request.getSession(false);
if(session == null)
{
session = request.getSession(true);
}
jetzt rufe ich in dieser Methode noch eine weitere Methode A() auf. Dort prüfe ich dann ob der User ein Testuser ist. Ich hole mir dazu die Session und schaue:
Java:
HttpSession session = request.getSession(false);
if(session != null)
{
if (session.getValue("isTestuser") != null) {
isTestuser = (Boolean) session.getValue("isTestuser");
}
}
In dieser Methode werden wiederum eine Methode B() aufgerufen. Auch da wir geprüft ob Testuser. Ist die gleiche Abfrage wie oben.
Wenn ich nun im Tomcat (Version 6) - ich weiß, alt - schaue dann bauen sich pro Request nicht eine Session auf sondern ein Vielzahl an Sessions. Das sehe ich ja im Tomcat Web Application Manager.
Ich verstehe tatsächlich nicht warum das passiert. Ich würde meinen mit einer Anfrage an das Servlet und das Neuerstellen der Session wird diese auch nur einmal gezählt.
Kennt jemand das Problem?
Grüße Franzy