jetty中文文档:www.jettycn.com
如何配置会话ID(Session IDs)
Jetty >> howto >> 如何配置会话ID(Session IDs)
步骤
Init参数
Context Parameter名称 | 默认值 | 描述 |
org.eclipse.jetty.servlet.SessionCookie | JSESSIONID | 会话cookie名称默认为JSESSIONID,特定的web应用可以通过这个context param设置为其他值。 |
org.eclipse.jetty.servlet.SessionIdPathParameterName | jsessionid | 会话URL参数名称。默认值为jsessionid,特定的web应用可以通过这个context param设置为其他值。设置为"none",则禁用URL重写。 |
org.eclipse.jetty.servlet.SessionDomain | - | 会话域。如果这个属性做为一个ServletContext参数设置了,那么它的值将用作会话cookie的域。如果不设置,则没有为会话cookie指定域。 |
org.eclipse.jetty.servlet.SessionPath | - | 会话路径。如果这个属性做为一个ServletContext参数设置了,那么它的值将用作会话cookie的路径。如果不设置,则context path将用作会话cookie的路径。 |
org.eclipse.jetty.servlet.MaxAge | -1 | 会话的Max Age。如果这个属性做为一个ServletContext参数设置了,那么它的值将用作会话cookie的max age。如果不设置,则max age的值为-1。 |
示例
以上的配置即可以做为<context-param>设置在web应用程序的WEB-INF/web.xml文件中,就像这样:
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> ... <context-param> <param-name>org.eclipse.jetty.servlet.SessionCookie</param-name> <param-value>XSESSIONID</param-value> </context-param> <context-param> <param-name>org.eclipse.jetty.servlet.SessionIdPathParameterName</param-name> <param-value>xsessionid</param-value> </context-param> ... </web-app>
也可以设置到配置web应用程序的Jetty上下文xml文件中(WebAppContext好像没有setInitParams方法了):
<Configure class="org.mortbay.jetty.webapp.WebAppContext"> <Set name="contextPath">/test</Set> <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/test</Set> ... <Set name="initParams"> <Map> <Entry> <Item>org.eclipse.jetty.servlet.SessionCookie</Item> <Item>XSESSIONID</Item> </Entry> <Entry> <Item>org.eclipse.jetty.servlet.SessionIdPathParameterName</Item> <Item>xsessionid</Item> </Entry> </Map> </Set> </Configure>
要了解关于param的更多信息,请查看org.eclipse.jetty.server.SessionManager类的源码:http://download.eclipse.org/jetty/stable-7/xref/org/eclipse/jetty/server/SessionManager.html
其他资源
有关详细信息,请参阅基于数据库的Session集群配置教程 教程。