环境
- Richfaces 3.3.3
- JSF 1.2
- 站点管理员
要求
用户输入所需的应用程序地址。Siteminder 拦截并询问用户名和密码。客户提供凭据。客户使用应用程序并单击注销/退出按钮。应用程序销毁会话并将 302 重定向到相同的应用程序地址,Siteminder 应该再次拦截。
问题
我正在尝试从从 siteminder 登录的richfaces 应用程序中注销。注销后,而不是进入站点管理器的登录页面,它返回到应用程序的主页。似乎它正在杀死应用程序会话而不是站点管理员会话。有没有办法注销 siteminder ?
代码
public String logout() {
ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
HttpSession session = (HttpSession)ec.getSession(false);
if (session != null) {
session.invalidate();
}
try {
String redirectPath = "https://abcd.xyz.com/context/start.jsf";
ec.redirect(redirectPath);
} catch (IOException e) {
e.printStackTrace();
}
return null;
日志
com.ibm.ws.webcontainer.servlet.ServletWrapper doDestroy SRVE0253I [hostname] [/context] [uri]:销毁成功。com.ibm.ws.webcontainer.servlet.ServletWrapper init SRVE0242I [hostname] [/context] [uri]:初始化成功。