如何从web.xml读取会话超时

时间:2013-07-08 13:49:29

标签: servlets

如何从web.xml文件中读取session-timeout

尝试

getServletContext().getAttribute("session-timeout").toString(); 

但是给了我NullPointerException

也试过

getServletConfig().getInitParameter("session-timeout");

但是给我null,因为很明显这不是init-param

2 个答案:

答案 0 :(得分:7)

这是一个oneliner。

int sessionTimeoutFromWebXml = Integer.parseInt(XPathFactory.newInstance().newXPath().compile("web-app/session-config/session-timeout").evaluate(DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(getServletContext().getResourceAsStream("/WEB-INF/web.xml"))));

答案 1 :(得分:1)

应该是

   session.getMaxInactiveInterval();

它将以秒为单位返回时间。