我有一个连接到LDAP的Liferay 6.1实例。新用户可以很好地导入,但是当我从LDAP目录中删除用户时,Liferay会在尝试从LDAP同步用户时开始抛出异常。
这些似乎是安全的忽略,但它们产生几兆字节的日志,它使日志解析非常烦人。我认为它可能会影响性能。如果删除的用户登录,则他们什么也看不见。
16:13:54,422 ERROR [liferay/scheduler_dispatch-790][PortalLDAPImporterImpl:995] LDAP user not found with fullUserDN cn=foobar,ou=people,o=foo,dc=bar,dc=baz
javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name 'cn=foobar,ou=people,o=foo,dc=bar,dc=baz'
at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3057)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2978)
... etc
我怎么能说服Liferay这是真的好吗?或者我还应该做些什么呢?
答案 0 :(得分:0)
在Liferay支持LDAP中缺少用户之前,您可以关闭此特定邮件的日志记录。只需使用以下内容创建文件 ROOT.war / WEB-INF / classes / META-INF / portal-log4j-ext.xml :
<?xml version="1.0">
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Copy all appenders from
ROOT.war/WEB-INF/lib/portal-impl.jar/META-INF/portal-log4j.xml
and add the following filter: -->
<appender ...>
...
<filter class="org.apache.log4j.filter.StringMatchFilter">
<param name="StringToMatch" value="LDAP user not found with fullUserDN" />
<param name="AcceptOnMatch" value="false" />
</filter>
</appender>
<!-- Keep the root definition from portal-log4j.xml
to trigger the parsing of the appenders: -->
<root>
<priority value="INFO" />
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
</root>
</log4j:configuration>
您可以在Liferay Wiki找到有关登录的更多信息。