jBPM 7.74.1.Final会话5分钟超时需重登,未保存数据丢失求助
解决jBPM 7.74.1.Final Business Central会话频繁过期问题
你之前配置的jboss.as.management.blocking.timeout是针对JBoss管理控制台(9990端口)的阻塞超时参数,和Business Central的用户会话完全无关,所以无效。针对Business Central的会话过期问题,需要调整以下三类核心配置:
1. 调整Web容器的HTTP会话超时
在standalone.xml中找到Web子系统配置(urn:jboss:domain:web命名空间),修改<session-config>里的超时值:
<subsystem xmlns="urn:jboss:domain:web:5.0" default-virtual-server="default-host" native="false"> <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> <virtual-server name="default-host" enable-welcome-root="true"> <alias name="localhost"/> <alias name="example.com"/> </virtual-server> <!-- 修改这里的session-timeout,单位为分钟 --> <session-config> <session-timeout>240</session-timeout> <!-- 240分钟=4小时,可按需调整 --> </session-config> </subsystem>
2. 配置Uberfire框架的会话参数
Business Central基于Uberfire框架,需要在standalone.xml的system-properties中添加/修改以下两个参数(单位为秒):
<system-properties> <!-- 其他系统属性 --> <property name="org.uberfire.servlet.session.timeout" value="14400"/> <!-- 4小时 --> <property name="org.uberfire.sessions.duration" value="14400"/> <!-- 4小时 --> </system-properties>
3. 检查安全域的缓存超时(可选)
如果使用默认的other安全域,确保其认证模块的缓存超时不会覆盖会话设置:
<security-domain name="other" cache-type="default"> <authentication> <login-module code="Remoting" flag="optional"> <module-option name="password-stacking" value="useFirstPass"/> </login-module> <login-module code="RealmDirect" flag="required"> <module-option name="password-stacking" value="useFirstPass"/> <!-- 添加或调整cache-timeout,单位为秒 --> <module-option name="cache-timeout" value="14400"/> </login-module> </authentication> </security-domain>
完成以上配置后,重启jBPM服务器,测试Business Central的会话是否会保持更长时间。另外,建议在编辑图表或配置时养成定期手动保存的习惯,避免因意外情况丢失修改。
内容的提问来源于stack exchange,提问作者Pedro
相关产品推荐
相关产品推荐

