Java munkamenet időtúllépése
1. Áttekintés
Ez az oktatóanyag megmutatja, hogyan kell beállítani munkamenet időkorlátja egy Servlet alapú webalkalmazásban.
2. Globális munkamenet időkorlátja a web.xml
Az összes Http munkamenet időkorlátja a web.xml webes alkalmazás:
... 10
Vegye figyelembe, hogy az időtúllépés értéke be van állítva percek alatt, nem másodpercek alatt.
Érdekes sidenode, hogy egy Servlet 3.0 környezetben, ahol az XML telepítési leíró helyett annotációk is használhatók, nincs mód a globális munkamenet időtúllépésének programozott beállítására. A munkamenet időkorlátjának programozási konfigurációja nyitott kérdéssel rendelkezik a Servlet Spec JIRA-ban - de a problémát még nem ütemezték be.
3. Programozási időkorlát egyéni munkamenetenként
Az időtúllépés csak az aktuális munkamenet programozottan meghatározható a javax.servlet.http.HttpSession:
HttpSession session = request.getSession (); session.setMaxInactiveInterval (10 * 60);
Szemben a elem, amelynek értéke percekben volt, a setMaxInactiveInterval metódus elfogad egy értéket másodpercek alatt.
4. A Tomcat Session Timeout
Az összes Tomcat szerver alapértelmezett értéket ad meg web.xml a teljes webszerverhez globálisan konfigurálható fájl - ez a következő helyen található:
$ tomcat_home / conf / web.xml
Ez az alapértelmezett telepítési leíró a 30 percig.
Egyéni telepített alkalmazások, amelyek megadják a saját időtúllépési értékeiket web.xml a leírók elsőbbséget élveznek a és felül fogja írni ezt a globális web.xml konfiguráció.
Ne feledje, hogy ugyanez lehetséges a mólón is: a fájl a következő helyen található:
$ jetty_home / etc / webdefault.xml
5. Következtetés
Ez az oktatóanyag megvitatta a a HTTP munkamenet időtúllépésének konfigurálása Servlet Java alkalmazásban. Azt is szemléltettük, hogyan lehet ezt beállítani webszerver szinten, mind a Tomcatban, mind a Jetty-ben.
Ezeknek a példáknak a megvalósítása megtalálható a github projektben - ez egy Eclipse alapú projekt, ezért könnyen importálhatónak és futtathatónak kell lennie.
Amikor a projekt helyi szinten fut, a kezdőlap html a következő címen érhető el: