0
我的項目使用自定義會話失效機制。它要求發送具有無效原因的通知,例如 - 如果用戶請求發生失效 - 無效原因是USER_REQUEST,如果服務器關閉 - 則原因是SHUTDOWN。 除關閉情況外,所有的工作都很好 - tomcat本身使所有會話都失效(至少StandardManager是這樣)。強制tomcat不要在關機時使會話無效
據我知道 - 我可以創建自己的經理,這一點兒也不無效會話都:
public class HttpSessionManager extends StandardManager {
@Override
protected synchronized void stopInternal() throws LifecycleException {
setState(LifecycleState.STOPPING);
if (sessionIdGenerator instanceof Lifecycle) {
((Lifecycle) sessionIdGenerator).stop();
}
}
}
此類應放在一些jar文件,並放置在Tomcat的/ lib文件夾中。 事實上,該解決方案需要爲主Tomcat分配額外的庫以及主要解決方案,這並不好(交付過程變得複雜)
應該有另一種方法來做到這一點,或者我的解決方案可以改進某種方式。