2

私は ApacheDS バージョン 2.0.0-M3 を使用しています (これがどのように機能するのかよくわかりません)。AbstractPartition を拡張して、新しいパーティション クラスを作成しました。このクラスのインスタンスを作成し、それを ApacheDsService インスタンスに追加できます。

    File instancePath = new File( param[0] );
    ApacheDsService service = new ApacheDsService();
    InstanceLayout layout = new InstanceLayout( instancePath );

    try
    {
        service.start(layout);
        //
        TestPartition partition = new TestPartition ( layout );
        partition.setSuffix( "ou=test" );
        partition.setSchemaManager( service.getDirectoryService().getSchemaManager() );
        partition.initialize();
        service.getDirectoryService().addPartition( partition );
    }
    catch (Exception x)
    {
        LOG.error("Failed to start the service.", x);
        System.exit(1);
    }

しかし、Apache Directory Studio を使用してサーバーに接続すると、パーティションが表示されません。

次の質問を見つけました: JNDI/LDAP を使用してプログラムで ApacheDS サーバーのルートにパーティションを作成する方法は? kayyagari は、「パーティションを構成する必要があると言っています... ou=config 領域で」。

これが何を意味するのか正確にはわかりません。ウェブで詳細を検索してもうまくいきませんでした。

Apache Directory Studio で ou=config パーティションを確認できます。そこに他のパーティションが表示されます: ads-partitionId=system および ads-partitionId=example. objectClass 属性を見ると、これらの両方に値が ads-jdbmPartition であることがわかります。自分のパーティションにそのようなエントリが必要かどうかわかりません (これは jdbm パーティションではなく、Web サービスからデータを取得するためです)。

(残念ながら、ApacheDS サイトの 2.0.0-M3 のドキュメント リンクでは 404 が表示されます。) カスタム パーティションの LDIF エントリはどのように表示されますか? 正しく入力できません。また、何か抜けているのか、間違って入力したのかわかりません。

どんな助けでも大歓迎です。

ありがとう。

4

1 に答える 1

1

ApacheDS バージョン 2.0.0-M3 (および 2.0.0-M4) は進行中のようです。ApacheDS レポジトリよると、バージョン 2.0.0-M3 は 2011 年 8 月以降、活動を確認していません。)。

リポジトリから、バージョン 2.0.0-M4 が現在作業中であることも確認できます (ごく最近のアクティビティ)。2.0.0-M3 に関するドキュメントがいくつかあります。2.0.0M3 Maven で生成されたドキュメントが利用可能です。正しいアプローチを解読するために使用できる多数の単体テストを含む2.0.0-M3 ソース コードをダウンロードすることもできます。ソース コードはEmmanuel Lécharny の個人ページから入手できます(ただし、ApacheDS サイト自体にはないようです)。Emmanuel Lécharny がバージョン 2.0.0-M3 のメイン コミッターのようです (また、Kiran Ayyagari ( kayyagari ) も ApacheDS コミッターのようです)。

希望する場合は、2.0.0-M3/M4 ルートを追求するのに十分な情報が得られていることを願っています。


2.x ブランチのドキュメントがないため、 ApacheDS バージョン 1.5.7 を使用する方がはるかに簡単だと思います(少なくとも 2.x ブランチがドキュメント化されるまでは)。バージョン 1.5.7 には、ApacheDS をアプリケーションや Web アプリケーションに埋め込むなどの ドキュメントと作業例が含まれています。

組み込みサーバーのサンプルを試してみたところ、Apache Directory Studio を使用して結果のディレクトリ サーバーにアクセスできました。興味深いことに、embedded-sample の例では、 shared-ldap-schemaファイルを含むモジュールがクラスパスから除外されています (これは、この例が最小限の実装であり、標準に完全に準拠した LDAP サーバーではないためだと思います)。

于 2012-01-12T23:10:51.813 に答える