请勿使用 WebLogic ServletAuthentication invalidateAll 方法

此规则会标记是否使用了 weblogic.servlet.security.ServletAuthentication invalidateAll 方法。 该方法实现必须迁移,才能在 WebSphere Application Server 上进行使用。


解决方案

使用以下代码来替换 WebLogic invalidateAll 方法。

public static void invalidateAllWebAppSessions(HttpServletRequest req)) {
try {

com.ibm.wsspi.servlet.session.IBMSessionExt sessExt = (IBMSessionExt) req.getSession();
sessExt.invalidateAll(true);

} catch(IllegalStateException e) {
// This exception is thrown if another thread is invalidating this session, so just ignore it.
}
}

有关更多信息,请参阅 Interface com.ibm.wsspi.servlet.session.IBMSessionExt Java 文档。