1

我将 openam 与 tomcat 7 一起使用,以下行总是产生异常 SSOTokenManager manager = SSOTokenManager.getInstance(); SSOToken ssoToken = manager.createSSOToken(request);

无效的会话 ID

我认为某些配置或某些东西可能有问题

有什么帮助吗???

amSSOProvider:09/18/2012 01:18:01:882 PM EEST:线程 [http-bio-9090-exec-151,5,main] 无法从 HttpRequest com.iplanet.dpro.session.SessionException 创建 SSOToken:无效会话 ID。在 com.iplanet.dpro.session.Session.getSession(Session.java:1062) 在 com.iplanet.sso.providers.dpro.SSOProviderImpl.createSSOToken(SSOProviderImpl.java:92) 在 com.iplanet.sso.SSOTokenManager.createSSOToken (SSOTokenManager.java:241) 在 main.TestServlet2.doGet(TestServlet2.java:48) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 在 javax.servlet.http.HttpServlet.service(HttpServlet. java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core .

com.iplanet.sso.SSOException:会话 ID 无效。在 com.iplanet.sso.providers.dpro.SSOProviderImpl.createSSOToken(SSOProviderImpl.java:111) 在 com.iplanet.sso.SSOTokenManager.createSSOToken(SSOTokenManager.java:241) 在 main.TestServlet2.doGet(TestServlet2.java:48 ) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain. java:304) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) at org.apache.catalina.core .StandardContextValve.invoke(StandardContextValve.java:170) 在 org.apache.catalina.authenticator.AuthenticatorBase。concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:909) at java.lang.Thread.run(Thread.java:619) 原因:com.iplanet.dpro.session.SessionException:会话 ID 无效。在 com.iplanet.dpro.session.Session.getSession(Session.java:1062) 在 com.iplanet.sso.providers.dpro.SSOProviderImpl.createSSOToken(SSOProviderImpl.java:92)

4

1 回答 1

0

确保您的应用程序的域名与 openam 服务器的域名相关,如果 openam 域服务器像 openam.example.com 这样的 cookie 名称是 .example.com,那么您的应用程序也在这个域中 yourhost.example。 com 这样我们就可以从 cookie 中获取令牌。

于 2014-02-04T10:35:35.520 回答