2

CQ ページをプログラムで作成する必要があります。しかし、課題は、ページ名/uri が文字列 + 一意の番号 (例: PT2000、PT2001) の組み合わせで自動生成される必要があることです。

複数の同時リクエストでも ID が一意になるように、CQ で autoincrement-id/constant を生成する方法を教えてもらえますか?

4

4 に答える 4

0

ID を提供し、揮発性インスタンス変数内のカウンターを管理するサービスを使用して、1 つのスレッドによる状態の変化が他のすべてのスレッドに即座に伝達されるようにします。

実装が単一の作成者ノードで実行されることを保証できる限り、これでうまくいくはずです。クラスターのシナリオでは、さらに、1 つのノードでのみ実行することに注意する必要があります。

于 2013-09-01T19:39:54.367 に答える
0

リポジトリのどこかでカウンターを管理し、jcr EventListener としても機能するサービスを作成することをお勧めします。サービスは cq:Page タイプの親ノードで NODE_ADDED イベントをリッスンする必要があり、onEvent が呼び出されると、その時点で一意の ID を割り当てることができます。onEvent() への重複した呼び出しで同じ ID が使い果たされないように、明らかに同期を使用する必要があります。

于 2013-09-09T05:54:46.580 に答える
0

AEM は同じ名前のページに番号を自動的に追加しませんか?

そうでない場合、おそらくこれは失敗し、その時点で次の番号からやり直します。この場合、最善の推測で十分です。

于 2016-09-28T13:23:34.727 に答える