openam J2EE Policy agent - ServerEntryNotFoundException:找不到服务器ID

时间:2014-12-04 10:02:14

标签: dependencies jboss7.x noclassdeffounderror openam jboss-modules

我在Tomcat 7上运行了一个openAM应用程序。 在我的JBoss服务器上,它有一个受OpenAM保护的应用程序,我在访问任何受保护资源时收到以下错误消息:

Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.identity.agents.filter.AmFilterManager
    at com.sun.identity.agents.filter.AmAgentBaseFilter.initializeFilter(AmAgentBaseFilter.java:270) [agent.jar:4.0.0-SNAPSHOT - 20140502-0259]
    ... 16 more

这个类属于我在Jboss上安装的Web Policy代理,它创建了jboss module来声明这些依赖项:

    <dependencies>
      <module name="javax.servlet.api" />
      <module name="javax.api" />
      <module name="javax.xml.bind.api" />
      <module name="javax.ejb.api" />
      <module name="org.picketbox" />
    </dependencies>

但是我已经检查了我的 jboss / modules 目录中的这些依赖项,它们就在那里。

在我的Web Policy agent's日志文件中,我发现每分钟都会记录一次:

ERROR: WebtopNaming.getServerId():serverId null for server: http://openam.example.com:8181/openam
amNaming:12/04/2014 03:55:37:027 PM CET: Thread[SystemTimer,5,main]
ERROR: WebtopNaming.getServerId()
com.iplanet.services.naming.ServerEntryNotFoundException: Cannot find server ID.
    at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:757)
    at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:654)
    at com.iplanet.services.naming.WebtopNaming$SiteMonitor.checkAvailableSiteList(WebtopNaming.java:1738)
    at com.iplanet.services.naming.WebtopNaming$SiteMonitor.runCheckValidSite(WebtopNaming.java:1713)
    at com.iplanet.services.naming.WebtopNaming$SiteMonitor.run(WebtopNaming.java:1706)
    at com.sun.identity.common.TimerPool$WorkerThread.run(TimerPool.java:434)

1 个答案:

答案 0 :(得分:1)

问题是当我在安装openAM后创建默认配置时,我通过 localhost:8181 而不是 openam.example.com:8181 访问了openAM服务器。

因此,openAM自动创建名为 localhost:8181 / openam 的服务器配置。这些配置可在Configuration&gt;下的管理控制台中找到。服务器和站点。