我正在使用 OpenSSO 设置单点登录系统。我已经能够安装 Policy Agent 3.0 并配置策略以要求用户登录后才能访问网站。我运行了 2 种类型的应用程序。第一种是基于 django 的应用程序,通过 Apache 中的 mod_wsgi 运行(运行良好)。第二种是 2 个 J2EE 应用程序。原始应用程序登录屏幕成功显示,但一旦我设置了用户名和密码,页面就会挂起,IE 上会出现 502 错误网关。
有没有关于使用 Apache 和 AJP 设置 OpenSSO 的指导?
我已经在网络和 OpenSSO 上搜索过了,但没有找到任何东西。
当前服务器环境:当前在同一台机器上运行的所有应用程序
- JBoss 4.0.5
- Python 2.6
- Apache 2.2
- Windows XP
- Java 1.6_14
它似乎适用于基本登录。简单的 jsp 应用程序可以工作,但 AJAX 不行。此外,登录后更实质性的应用程序无法工作。OpenSSO 只会占用 CPU。
来自调试日志的一些数据:
2009-07-30 16:02:47.849 错误 7080:10c70b8 全部:LineBuffer::findEndOfLine(): 2009-07-30 16:03:22.418 错误 7080:10c70b8 全部:LineBuffer::findEndOfLine(): 2009-07-30 16:03:51.203 错误 7080:10c70b8 全部:LineBuffer::findEndOfLine(): 2009-07-30 16:03:51.203 错误 7080:10c70b8 PolicyEngine:am_policy_evaluate:Service::update_policy 中的 InternalException,错误消息:命名查询失败。代码:12 2009-07-30 17:02:08.132 错误 7080:10a4588 全部:Connection::read():读取数据时发生 NSPR 错误:-5961 2009-07-30 17:02:10.133 错误 7080:10a4588 全部:fetchAndUpdateAgentConfigCache():用户 SDETest 使用 REST 服务获取属性时出错。状态:REST 属性服务遇到错误 2009-07-30 17:02:51.019 错误 7080:10c70b8 AM_SSO_SERVICE:SSOTokenService::getSessionInfo():sso 令牌 ID 为 AQIC5wM2LY4Sfcw+CSjmVbTOhLlEgzCYiNGrvUFpO9GBYR8=@AAJTSQACMDE=# 的错误 35。 2009-07-31 10:40:06.973 错误 7080:1069e48 AM_SSO_SERVICE:SSOTokenService::getSessionInfo():sso 令牌 ID AQIC5wM2LY4SfczGMS+rSpfPo9ZEx1eoGnrEoE1FtaJmxUI=@AAJTSQACMDE=# 的错误 35。 2009-07-31 10:45:26.421 错误 7080:1069e48 全部:LineBuffer::findEndOfLine(): 2009-07-31 10:45:45.351 错误 7080:1069e48 全部:LineBuffer::findEndOfLine(): 2009-07-31 10:46:01.029 错误 7080:1069e48 全部:LineBuffer::findEndOfLine(): 2009-07-31 10:46:01.029 错误 7080:1069e48 PolicyEngine:am_policy_evaluate:Service::update_policy 中的 InternalException,错误消息:命名查询失败。代码:12 2009-07-31 10:46:56.240 错误 7080:1069e48 全部:LineBuffer::findEndOfLine():
答案1
服务器的 permgen 空间不足。当我将 JBoss 的 run.bat 更新为以下内容后,它就可以正常工作了:
set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx1024m -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=128m