5.20.3. 覆盖默认的可分布式会话管理行为
您可以使用以下方法之一覆盖默认的 distributable 会话管理行为:
- 根据名称引用会话管理配置集
- 提供特定于部署的会话管理配置
引用现有会话管理配置文件
-
要使用现有的分布式会话管理配置文件,请在应用的
/WEB部署描述符。例如:-INF 目录中包含 distributable-web.xml
/WEB-INF/distributable-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<distributable-web xmlns="urn:jboss:distributable-web:1.0">
<session-management name="foo"/>
</distributable-web>
-
或者,在现有
jboss-all.xml部署描述符中定义目标分布式会话管理配置文件:
/META-INF/jboss-all.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss xmlns="urn:jboss:1.0">
<distributable-web xmlns="urn:jboss:distributable-web:1.0">
<session-management name="foo"/>
</distributable-web>
</jboss>
使用特定于部署的会话管理配置集
如果只有一个 Web 应用使用自定义会话管理配置,您可以在部署描述符本身内定义配置。临时配置看起来与 distributable-web 子系统使用的配置相同。
在部署描述符中定义自定义会话管理配置。例如:
/WEB-INF/distributable-web.xml
<?xml version="1.0" encoding="UTF-8"?>
<distributable-web xmlns="urn:jboss:distributable-web:1.0">
<infinispan-session-management cache-container="foo" cache="bar" granularity="SESSION">
<primary-owner-affinity/>
</infinispan-session-management>
</distributable-web>
-
或者,在现有
jboss-all.xml部署描述符中定义会话管理配置:
/META-INF/jboss-all.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss xmlns="urn:jboss:1.0">
<distributable-web xmlns="urn:jboss:distributable-web:1.0">
<infinispan-session-management cache-container="foo" cache="bar" granularity="ATTRIBUTE">
<local-affinity/>
</infinispan-session-management>
</distributable-web>
</jboss>