Aem LDAP回调功能

Aem LDAP回调功能,aem,Aem,大师 我试图通过参考回调下的文章来实现LDAP回调功能 我已经配置了LDAP,没有问题。我的要求是根据DS服务器中的属性将ldap用户分配到CRX组。现在根据我的理解,当LDAP用户第一次尝试登录时,CQ将自动调用实现回调接口的类。如果我错了,请纠正我 所以,我决定创建实现回调接口的bundle。据我所知,到目前为止我已经做到了这一点- 在CRXDE lite中,我在GeometricXX项目下添加了一个bundle,并附上了简单的代码,但在构建bundle的过程中,我遇到了一个错误,即回调无法

大师

我试图通过参考回调下的文章来实现LDAP回调功能

我已经配置了LDAP,没有问题。我的要求是根据DS服务器中的属性将ldap用户分配到CRX组。现在根据我的理解,当LDAP用户第一次尝试登录时,CQ将自动调用实现回调接口的类。如果我错了,请纠正我

所以,我决定创建实现回调接口的bundle。据我所知,到目前为止我已经做到了这一点-

在CRXDE lite中,我在GeometricXX项目下添加了一个bundle,并附上了简单的代码,但在构建bundle的过程中,我遇到了一个错误,即回调无法解析为类型

import org.apache.jackrabbit.api.security.user.User;
import org.apache.jackrabbit.api.security.user.Group;
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.SearchControls;
import javax.jcr.SimpleCredentials;

public class SyncUser implements com.day.crx.security.ldap.sync.Callback{

@Override
 public void onUserSync(User userToBeSynched, Map<String, Value[]> attributes,
 ValueFactory valueFactory) throws RepositoryException {
 Iterator iter = attributes.entrySet().iterator();
    while (iter.hasNext()) {
    Map.Entry mEntry = (Map.Entry) iter.next();
    javax.jcr.Value val =  (javax.jcr.Value)mEntry.getValue();
              // Error** [Ljavax.jcr.Value; cannot be cast to javax.jcr.Value
    System.out.println(mEntry.getKey() + " : " + val.getString());
 }
 }

@Override
public void onGroupSync(Group group,
                        Map<String, Value[]> attributes,
                        ValueFactory vf) throws RepositoryException{
    System.out.println("Hello onGroupSync");//do my stuff

 }
}

我找不到此com.day.crx.security.ldap.sync.Callback接口的任何文档。请引导我。感谢您的帮助

这里至少有一些com.day.crx.security.ldap.sync.Callback的文档:

报告说:

回调接口位于crx auth ldap模块中,具有 需要实施的以下方法:

您至少需要以下依赖项jar文件来创建和 生成回调类:

jcr-<version>.jar
crx-auth-<version>.jar
两者都与CRX Explorer Web应用程序捆绑在一起,可以 从war文件中提取

编译和打包回调类后,需要使其 可供CRX使用。最简单的方法是将 与CRX webapp一起在 crx quickstart/server/runtime/0/_crx/WEB-INF/[lib | classes]


您只需要找到那个文档。@EJP,我能够解决maven依赖性问题,但现在在类型转换值对象时出现错误。我不明白为什么L被附加为映射中的Ljavax.jcr.Value。