Hallo,
ich habe ein Problem mit einer JSP-Seite die, je nach Parameter-Aufruf, die application-Variable des Tomcats via getAttribute und setAttribute ändert. Da die JSP von mehreren Usern aufgerufen werden kann, habe ich Sie über die Direktive
als NICHT ThrearSafe deklariert. Nach meinem Verständnis müssten die einzelnen User-Request dann sequenziell abgearbeitet werden. Da die Anwendung nicht unter hoher Last steht, wäre dies soweit ok.
Dennoch bekomme ich im Logfile (catalina.out) folgende Fehlermeldungen in unregelmäßigen Abständen angezeigt:
Hier kurz der Code der ausgeführt wird um die application-Variable zu bearbeiten:
Hat jemand von euch vielleicht eine Idee wo hier das Problem liegen könnte?
Besten Dank!
Gruß,
Ben
ich habe ein Problem mit einer JSP-Seite die, je nach Parameter-Aufruf, die application-Variable des Tomcats via getAttribute und setAttribute ändert. Da die JSP von mehreren Usern aufgerufen werden kann, habe ich Sie über die Direktive
Code:
<%@page isThreadSafe="false" %>
Dennoch bekomme ich im Logfile (catalina.out) folgende Fehlermeldungen in unregelmäßigen Abständen angezeigt:
Code:
SEVERE: Servlet.service() for servlet [jsp] in context with path [/foobar] threw exception [java.util.ConcurrentModificationException] with root cause
java.util.ConcurrentModificationException
...
Hier kurz der Code der ausgeführt wird um die application-Variable zu bearbeiten:
Java:
...
HashMap< String, Page > mapMonibel;
if (application.getAttribute("monibel"+mandant) == null) {
mapMonibel = new HashMap<String, Page>();
} else {
mapMonibel = (HashMap< String, Page>)application.getAttribute("monibel"+mandant);
}
Page seite = new Page(prooffile);
mapMonibel.put(monitore[0], seite);
application.setAttribute("monibel"+mandant, mapMonibel);
...
Hat jemand von euch vielleicht eine Idee wo hier das Problem liegen könnte?
Besten Dank!
Gruß,
Ben