Exemplo n.º 1
0
  private static void loadLdif(DirContext context, Resource ldifFile) throws IOException {
    try {
      LdapName baseDn =
          (LdapName) context.getEnvironment().get(DefaultDirObjectFactory.JNDI_ENV_BASE_PATH_KEY);

      LdifParser parser = new LdifParser(ldifFile);
      parser.open();
      while (parser.hasMoreRecords()) {
        LdapAttributes record = parser.getRecord();

        LdapName dn = record.getName();

        if (baseDn != null) {
          dn = LdapUtils.removeFirst(dn, baseDn);
        }
        context.bind(dn, null, record);
      }
    } catch (NamingException e) {
      throw new RuntimeException("Failed to populate LDIF", e);
    }
  }