動的コンポーネントをデータオブジェクトとして取得し、実行時にそれらを相互に変換する - ASP Java - Tridion 2011


0

多くのトラフィックのあるサイトで作業していますが、一部の負荷テストではメタデータのブローカクエリを避けようとしていますサーバーの過負荷が発生しました。

動的コンポーネントテンプレートの挿入を使用して、特定のページのさまざまな領域のURL変数に基づいてオファーコンテンツをレンダリングする動的オファーおよびインセンティブシステムを構築しようとしています。

負荷の問題を回避するには、コンポーネント内のすべてのオファーを保存し、実行時にそのコンポーネントをIDで取得し、その中のオファーを繰り返し、各コンポーネントがURL変数を指定すると適用可能です。

問題は、データオブジェクトとしてIDでコンポーネントを取得し、それを相互に変換する方法が見つかりませんでした。私はコレクションからidsのリストを取得し、それらのコンポーネントからさまざまなフィールドを取得することができる必要があります。

どうすればよいですか?私はそれのためのドキュメントを見つけることができません。もしこれが単純ならば、私はかなりのプレッシャーの下にあり、Tridionに関する多くの経験はありません。

我々はTridionの2011 SP1でTridionのの素晴らしい世界へ

おかげ

0

ようこそASPのJavaを使用しています。コンポーネントプレゼンテーションのコンテンツは、Tridion CMで使用されるテンプレートによって決まります。より伝統的な実装では、コンポーネントのコンテンツは実際にあなたのニーズに合わないコンテンツのHTML表現です。

DD4TDXAのような現代のTridionソリューションは、このコンテンツをニーズに合った構造化データフォーマット(バージョンに応じてXMLまたはJSON)としてプッシュするコンポーネントテンプレートを使用します。私があなたのメッセージから得る緊急性の感覚を考えれば、あなたの実装にこれらのフレームワークを採用することは時間がかかりませんが、同様のアプローチに従うことができます。

  1. 必要なコンテンツを格納できるCMでスキーマを定義します。
  2. コンテンツをそのまま(XML)またはJSONに変換できるコンポーネントテンプレート(そのスキーマに関連付けられています)を作成します(ここにはsuch a templateという良い例があります)。このテンプレートを動的にマークすると、ページコンテナなしでコンポーネントを単独で公開することができます。
  3. Webアプリケーションでコンポーネントプレゼンテーションを読み込み、デシリアライズしてください。