我使用在WebLogic 12.1.2服务器上运行的JSF 2.1和JEE 6设置了一个Web应用程序,并使用openLDAP进行身份验证。我一直注意到,在应用程序中加载任何页面都会导致多次向LDAP发出BIND请求 - 每次都是这样!
我已阅读了大部分内容,并在Weblogic中配置了LDAP提供程序,以便可以找到我能找到的任何缓存。特别是我已经设置了
我还仔细检查了entryUUID属性是否存在。我在WebLogic或LDAP上都不太了解,但我已经阅读了关于配置缓存的任何页面,但是仍然有很多请求到LDAP(是的,我在更改后重新启动了服务器。)< / p>
我很感激任何帮助,见解或猜测可能是什么原因或如何进一步调试此问题。我不太确定要附加哪个配置文件,但是如果有任何需要我很乐意提供它。
LDAP请求全部如下所示:
# journalctl -u slapd
# … many of these …
Sep 16 23:06:03 server.org slapd[15038]: daemon: read active on 13
Sep 16 23:06:03 server.org slapd[15038]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Sep 16 23:06:03 server.org slapd[15038]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Sep 16 23:06:03 server.org slapd[15038]: conn=1109 op=32 BIND anonymous mech=implicit ssf=0
Sep 16 23:06:03 server.org slapd[15038]: conn=1109 op=32 BIND dn="tpid=NQ00000013,ou=people,dc=de,dc=foobiz,dc=com" method=128
Sep 16 23:06:03 server.org slapd[15038]: conn=1109 op=32 BIND dn="tpid=NQ00000013,ou=people,dc=de,dc=foobiz,dc=com" mech=SIMPLE ssf=0
Sep 16 23:06:03 server.org slapd[15038]: conn=1109 op=32 RESULT tag=97 err=0 text=
Sep 16 23:06:03 server.org slapd[15038]: daemon: activity on 1 descriptor
Sep 16 23:06:03 server.org slapd[15038]: daemon: activity on:
答案 0 :(得分:1)
我已经找到了问题,WebLogic也没有任何错误。我们的应用程序似乎使用了一个相当破碎的调用远程EJB的概念,它创建自己的代理,存储JNDI信息并在每个方法调用上执行JNDI查找。
因此,即使缓存bean也无济于事。当然,这会绕过任何缓存机制,从而导致每个请求都有多个LDAP绑定。