就是我关闭IE以后,没有打印出相应的Session Destroyed!信息!
解决方案 »
- eclipse上启动的tomcat无法热部署?
- 使用jxl导出excel时抛出一个异常java.lang.IllegalStateException,请高手指导解决办法
- 为什么我用prepareStatement执行批量插入总是只能插入一条数据?
- jsp连接sqlserver2000,总是报错java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
- 一个小问题,连接数据库,请教高手
- 为什么要学javascrpit?(菜鸟)
- 在jsp中如何播放存在数据库中的媒体文件(如mp3,rm,avi)
- 一个关于环境变量的小问题
- JFreeChart 和 JCharts 哪个好一点?从功能性和实用性上来说。
- 各位前辈,哪里下载“汤姆猫”?
- 关于海量数据插入oracle CLOB 字段的解决方法(不够分再加)
- 怎样显示“连接数据库失败”?
<session-config>
<session-timeout>2</session-timeout>
</session-config>
即可设定Timeout值为2分钟(设为0表示永不超时)。
详细的配置请参考http://java.sun.com/dtd/web-app_2_3.dtd
在web.xml中的web-app下加入
<session-config>
<session-timeout>2</session-timeout>
</session-config>
即可设定Timeout值为2分钟(设为0表示永不超时)。请问:那session到底是保存在服务器呢?还是保存在客户端呢?或是其他的地方?
session是保存在服务器端的,同时将session id写到客户端的cookie里边(如果客户端禁用cookie则会启用另一种方案),客户端在发送请求时会传递这个id给服务器。
<session-config>
<session-timeout>2</session-timeout>
</session-config>
以后,启动tomcat服务,出现异常如下:严重: Parse Error at line 533 column 11: The content of element type "web-app" m
ust match "(icon?,display-name?,description?,distributable?,context-param*,filte
r*,filter-mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapp
ing*,welcome-file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,secu
rity-constraint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*
)".
org.xml.sax.SAXParseException: The content of element type "web-app" must match
"(icon?,display-name?,description?,distributable?,context-param*,filter*,filter-
mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welco
me-file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,security-const
raint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)".
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Er
rorHandlerWrapper.java:232)
你最好是按照icon?,display-name?,description?,distributable?,context-param*,filter*,filter-
mapping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welco
me-file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,security-const
raint*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*
的顺序,listener好像就必须放在filter-mapping的后面,servlet的前面,
你把session-config放到servlet-mapping后面试试。
下面是我的一个config,就没有问题:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<filter>
<filter-name>servlet2</filter-name>
<filter-class>servletexam.Servlet2</filter-class>
</filter>
<filter>
<filter-name>servlet3</filter-name>
<filter-class>servletexam.Servlet3</filter-class>
</filter>
<filter-mapping>
<filter-name>servlet2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>servlet3</filter-name>
<servlet-name>servlet1</servlet-name>
</filter-mapping>
<listener>
<listener-class>servletexam.MySessionListener</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>servletexam.Servlet1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>/servlet1</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>1</session-timeout>
</session-config>
</web-app>
%TOMCAT_HOME%\conf\下还有一个web.xml,(这个文件是用于设置所有站点的defalt config的,tomcat会首先执行这个,然后在执行webapps\yourapp\WEB-INF\web.xml),tomcat的默认session-timeout值为30,你找到这个文件把其中的
<session-config>
<session-timeout>30</session-timeout>
</session-config>