Tomcat/java-Session-Problem

Status
Nicht offen für weitere Antworten.

qeldroma

Mitglied
Hallo zusammen,

wir haben hier eine kleine Benutzerverwaltung in jsp-Seiten vorliegen. Diese haben wir nun angepasst, was die Textfelder der Benutzereingabe angeht.
Das wiederum erkläre ich, damit klar ist, das am Login sich nichts verändert hat ;)

Nun ist das so, das jede Seite eine "header.jsp" includiert, in der die Session auf Gültigkeit getestet wird. Die Session wird vom Server verwaltet, ist also nicht "selbstgebaut".

header.jsp-Code:
Code:
<%@ page contentType="text/html; charset=ISO-8859-15" %>
<%
        if(!request.isRequestedSessionIdValid()){
                response.sendRedirect("index.jsp?session");
        }
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
....
....

Wenn die "index.jsp" mit "?session" aufgerufen ist, wird die Session ungültig erklärt und der Login neu aufgerufen.

Nun zum Problem:
Nachdem wir diese Änderungen im "backend" durchgeführt haben klappt der Login nicht mehr auf allen Rechnern, so gibt es nun zwei von sieben Rechnern, auf denen durch die "header.jsp" sofort nach dem Login die Session für abgelaufen erklärt wird.

Alle Rechner MÜSSEN den jeweils installierten IE verwenden, ich darf weder die Version ändern, noch einen anderen Browser installieren (Bitte nicht thematisieren, ist einfach so).

1. Erst dachte ich an ein Cookie-Problem, habe also auf allen "kaputten" die Cookies und die "temporären Internetdateien" gelöscht.
Fehlanzeige.

2. Dann habe ich die IE-Sicherheitseinstellungen allesamt auf den niedrigsten Level gestellt.
Fehlanzeige.

3. Dann habe ich, nach dem Löschen dieser Daten, die entsprechenden Rechner mal verzweifelt neu gebootet.
Wieder Fehlanzeige.

Merkwürdig ist, das dieses unabhängig von Windows-Version und IE-Version ist. So habe ich bei den beiden "kaputten" die Kombination IE5.5/NT4 und IE6/W2k. Genau diese Kombinationen sind aber auch bei den anderen 5 auf denen es klappt ?!?!?

Jemand eine Idee?

Grüße, Florian
 

bronks

Top Contributor
qeldroma hat gesagt.:
...Wenn die "index.jsp" mit "?session" aufgerufen ist, wird die Session ungültig erklärt und der Login neu aufgerufen ...
Das macht man definitiv so:
Code:
...eb/dpviewersamjs.jsp;jsessionid=aaac3aH6SsFnox?aktion=w...
Zu den anderen Problemen hab ich eine Frage: Kann es sein, daß genau in der Zeit wo Du die App umgebaut hast das Netzwerk umgebaut wurde. Evtl. irgendein Proxy?
 

Bleiglanz

Gesperrter Benutzer
die index.jsp darf natürlich NICHT die header.jsp einbinden

genausowie die seite auf der die Session erzeugt wird

ganz schlechter Stil: erst ein Redirect UND dann noch HTML Daten schicken, das ist Quatsch und nicht unbedingt ideal...
 

qeldroma

Mitglied
Bleiglanz hat gesagt.:
die index.jsp darf natürlich NICHT die header.jsp einbinden

genausowie die seite auf der die Session erzeugt wird

Sorry, war unklar formuliert:
Die index.jsp hat NICHT diese header.jsp, sondern eine eigene. Die header.jsp mit der Session-Überprüfung wird nur von allen "backend"-Seiten benutzt, das Login steht für sich allein, ergo index.jsp!

Moment.....
index.jsp:
Code:
<%
/*****************************************
**** index.jsp
******************************************
**** Dient der Darstellung der Login-Seite
******************************************/%>
<%
// Einige generelle Sitzungseigenschaften
session.removeAttribute("mandant");
session.setMaxInactiveInterval(300);
%>
<script language="JavaScript" type="text/javascript">
//Fehlermeldungen zum Login
if("<%=request.getQueryString()%>"=="error"){
        alert("Fehler beim einloggen!\nBitte berprfen Sie nochmal die Daten.");
}else if("<%=request.getQueryString()%>"=="session"){
        alert("Ihre Sitzung ist abgelaufen!\nBitte melden Sie sich erneut an.");
}
</script>
<%@ include file="templates/headerLogin.jsp" %>

...die headerLogin.jsp ist eine java-lose Datei, könnt ich auch in html umbenennen ;)

---------------------------------------------------------------------------------------
wie gesagt, es LIEF Monatelang, nur jetzt nimmer...

Grüße, Florian[/code]
 

Bleiglanz

Gesperrter Benutzer
na und, was genau habt ihr denn geändert

wo und wann wird zum ersten Mal die Session erzeugt?

Code:
if("<%=request.getQueryString()%>"=="error"){
        alert("Fehler beim einloggen!\nBitte berprfen Sie nochmal die Daten.");
}else if("<%=request.getQueryString()%>"=="session"){
        alert("Ihre Sitzung ist abgelaufen!\nBitte melden Sie sich erneut an.");
}

[edit]

AHEM, warum mit Javascript?
 

qeldroma

Mitglied
Die Session wird, dachte ich, automatisch vom Tomcat verwaltet?

Schließlich habe ich ja das HttpSession Objekt, welches ich abfragen kann und welches in der Tat bei allen anderen 5 Rechnern das Timeout nach 10 Minuten auch auslöst? Dies zeugt ja davon, das es automatisiert ist, vermutlich über ein Speichercookie?

Ich habe das bisher so verstanden, das eine Session nur dann manuell erzeugt werden muß, wenn man KEINE Cookies zur Verfügung hat, also nicht in meinem Fall?!

Grüße, Florian
 

Bleiglanz

Gesperrter Benutzer
du kannst dir zwar eine Session automatisch erzeugen lassen, aber damit request.isRequestedSessionIdValid funktioniert muss MINDESTENS ein Round-Trip stattgefunden haben

Aufruf index.jsp zum ersten Mal in einer Sitzung

=> session erzeugt, cookie zum client

=> wenn cookies abgeschaltet, führt der POST zu einer url, auf der keine Session vorhanden ist und also zum Fehler

also: biste sicher dass auf den beiden Defekt-Rechnern Cookies aktiviert sind?

=>
 

qeldroma

Mitglied
Bleiglanz hat gesagt.:
also: biste sicher dass auf den beiden Defekt-Rechnern Cookies aktiviert sind?

Soweit ich den "nierigsten Sicherheitseinstellungen" des IE vertrauen kann ;)
Wie gesagt, die kaputten IEs sind auf minimale Sicherheit eingestellt, das sollte wohl alles zulassen, was es so gibt..

Außerdem funktionierte dieser Login ja auch schon vorher, daher müssen die Cookies ja funktioniert haben, denn ich habe keine alternatives Sessionhandling eingebaut, insofern hätte es ohne Cookies früher genauso krachen müssen....

Ich finde dieses Problem inzwischen alles andere als trivial ???:L

Grüße, Florian
 

qeldroma

Mitglied
In den betroffenen Seiten:
einfügen von <%@ page contentType="text/html; charset=ISO-8859-15" %> am Anfang, um alles zu vereinheitlichen.
Dann in einer Folgeseite mehrere Formularelemente in ihrer Form oder Beschriftung.

Nichts auf jeden Fall, was irgendeinen Zusammenhang zur Session haben könnte, denn sonst wäre ich dem ja schon lange hinterhergestiegen.

Ich werd wohl als nächstes erstmal ein paar Ausgaben einbauen müssen, z.B. die Session-Erstellungszeit. Das habe ich bisher vermieden, weil ich dabei ja gezwungen bin, einem der beiden Benutzer den Arbeitsplatz zu blockieren, um das vernünftig auszuwerten, was nicht gerade gut ankommt.

Wer definiert eigentlich den Erstellungszeitpunkt der Session? Der Server, oder? Und der Server vergleicht dann die Zeit mit dem Timeout anhand der Systemzeit, oder?

Nicht das es irgendein Uhrzeitproblem ist ;)

Grüße, Florian
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Java Tomcat findet Website nicht Allgemeines EE 8
J Tomcat java verzeichnis Allgemeines EE 4
S Tomcat Application Path bestimmen Allgemeines EE 0
TheWhiteShadow JSF plugins für tomcat webapp Allgemeines EE 0
X Tomcat checkParachute Allgemeines EE 3
C Servlet Tomcat/Jersey findet REST-Service nicht Allgemeines EE 3
J Global JNDI Tomcat Allgemeines EE 0
N WebService WAR-File auf Tomcat-Server Allgemeines EE 1
C WebSocket in Tomcat wirft 404 Allgemeines EE 0
S Eclipse mit Tomcat und Jersey Allgemeines EE 7
S Fehlersuche in Eclipse/Tomcat -> Error-log?? Allgemeines EE 2
S Tomcat und 404 -> von jetzt auf gleich Allgemeines EE 4
L JNDI auf Tomcat mit EE Allgemeines EE 4
E Servlet Tomcat Method Signature Resolution Allgemeines EE 7
J Logging und Monitoring unter Tomcat Allgemeines EE 2
aze Tomcat:Error Pages werden nicht angezeigt Allgemeines EE 4
D JSF JSF 2.0 + ICEFaces + Tomcat 7 Allgemeines EE 3
R Sessionmanagement und Tomcat Allgemeines EE 6
W Tomcat Support mit SLA? Allgemeines EE 3
P Tomcat lädt falsche Datei obwohl richtig angegeben Allgemeines EE 11
N Tomcat funktioniert nach shutdown/startup nicht mehr korrekt Allgemeines EE 9
B Tomcat, JNDI und datasource - Konfiguartion Allgemeines EE 2
JimPanse Tomcat Fehler nach redeploy Allgemeines EE 5
S Anfängerfrage Eclipse/Tomcat Allgemeines EE 4
H Installer für Tomcat-Anwendung Allgemeines EE 5
A Tomcat in Eclipse Allgemeines EE 11
T Tomcat: Sessions bleiben zu lange erhalten Allgemeines EE 13
C Tomcat Zugriff auf lokale Dateien Allgemeines EE 2
A Tomcat, Exceptions beim redeploy Allgemeines EE 4
P Hilfe: Tomcat periodischer Absturz Allgemeines EE 5
MQue Tomcat reload Allgemeines EE 4
neurox Tomcat stoppen Allgemeines EE 1
S Unterschied zwischen Tomcat und Application Server? Allgemeines EE 3
MQue Tomcat PermGen Allgemeines EE 7
MQue Tomcat Methodenaufruf Allgemeines EE 3
P Eclipse Tomcat Plugin funktioniert nicht mit externem TC-Server? Allgemeines EE 4
MQue TCP- Verbindung nach Tomcat- Start (global) starten Allgemeines EE 4
reibi Tomcat Proxy eintragen Allgemeines EE 2
P CXF Project auf Tomcat laufen lassen - wie? Allgemeines EE 35
R (TOMCAT] Installation Tomcat auf WinXP Allgemeines EE 8
S Tomcat + Eclipse Allgemeines EE 6
T Security Manager in Tomcat Allgemeines EE 2
S Unterschiedliche Pfade bei Tomcat Allgemeines EE 4
ps EJB3 in Tomcat. das hat selbst mich erstaunt Allgemeines EE 18
B Tomcat Manager - .war Datei hochladen. Einfache Frage Allgemeines EE 5
G Probleme im Tomcat - loading WebappClassLoader Allgemeines EE 3
O ApplicationServer vs. Tomcat Allgemeines EE 5
G Verbindung zu Tomcat Allgemeines EE 15
B Tomcat -> Funktions User Credentials hinterlegen Allgemeines EE 7
B fmt:setBundle => Wo liegt die Properties-Datei im Tomcat? Allgemeines EE 3
U Tomcat Compilierproblem Allgemeines EE 2
A Tomcat -- JSP: komisches Problem Allgemeines EE 11
W Speicher-Problem bei WebApp unter Tomcat, Struts, Hibernate Allgemeines EE 3
M Gelegentlicher Absturz Tomcat Anwendung: PermGen Space Allgemeines EE 6
R Error ServletContextListener auf Tomcat 6 Allgemeines EE 2
Y myFaces 1.2 und Tomcat 5.x / 6.0 Allgemeines EE 9
S tomcat session timeout - und was danach? Allgemeines EE 1
A Tomcat startet nicht, Einstellungsfehler? Allgemeines EE 3
S Auf Datei ausserhalb des Tomcat zugreifen Allgemeines EE 4
S JSP / Tomcat / Eclipse / Unable to compile class for JSP Allgemeines EE 4
E JBoss mit existierendem Tomcat nutzen? Allgemeines EE 4
M JSP: Tomcat: Serverfehler 500 nur beim IE. Allgemeines EE 2
G JSF 1.2 unter Netbeans 6 mit Tomcat 6.0 ->Navigationsprob Allgemeines EE 6
O eclipse - tomcat: Problem bei einfachem Webservice Allgemeines EE 16
L Tomcat Service mit JPDA debugging starten Allgemeines EE 2
J Tomcat: "Unable to get connection, DataSource invalid&q Allgemeines EE 8
A web.xml für Servlet in Tomcat 5.5 erstellen Allgemeines EE 2
F Tomcat: zentraler Class-Ordner? Allgemeines EE 2
A web.xml für Servlet in Tomcat erstellen Allgemeines EE 6
T Tomcat: JNDI + JDBC Problem Allgemeines EE 3
N Zugriff auf Webapp nur für localhost definieren (Tomcat) Allgemeines EE 2
byte Tomcat Deployment Problem (HTTP Status 503) Allgemeines EE 8
H Tomcat, MySQL Allgemeines EE 4
B tomcat verbergen Allgemeines EE 3
M classNotFoundexception vom tomcat Allgemeines EE 10
B Liferay + Tomcat Allgemeines EE 4
K tomcat: session-unabhängiges speichern Allgemeines EE 3
G Tomcat übersetzt nichts mehr Allgemeines EE 6
M tomcat beim booten mit starten Allgemeines EE 4
F Serverdienst in Tomcat implementieren Allgemeines EE 14
J Tomcat mit eigener Session-Implementierung Allgemeines EE 15
V tomcat 6 webserver oder was ist sein Sinn? Allgemeines EE 3
G eigener Tomcat-Connector f. propiet. Protokoll via TCP/IP Allgemeines EE 2
J wsdl-tomcat-AXIS Allgemeines EE 2
G Tomcat unter Eclipse starten Allgemeines EE 9
F Tomcat mit 128 MB Ram Allgemeines EE 9
C Unable to query Tomcat Manager: couldn't connect to host Allgemeines EE 2
A Cronjob mit Tomcat starten ? Allgemeines EE 4
B Connection Poll ohne TomCat Allgemeines EE 5
N Tomcat GWT-Anwendung - An beliebiger Stelle schreiben Allgemeines EE 2
E Tomcat Einstellungen Allgemeines EE 10
B Servlet-Api.jar auf JBoss? (Migration von Tomcat zu JBoss) Allgemeines EE 4
H Eine kurze Verständnisfrage zum Tomcat Allgemeines EE 2
S Hibernate, Tomcat und Eclipse treiben mich zum Wahnsinn. Allgemeines EE 2
F webanwendung läuft nicht auf Tomcat Allgemeines EE 2
M Tomcat, Hibernate, MySQL und die EOFException Allgemeines EE 7
Y Tomcat Thread-Handling Allgemeines EE 2
K Tomcat als Client nutzen Allgemeines EE 2
L Tomcat auf Windows Server 2003 Allgemeines EE 10
T Sysdeo Eclipse Tomcat Plug-in Allgemeines EE 4

Ähnliche Java Themen

Neue Themen


Oben