質問: Javaバージョン6で作成されたデプロイヤー用にデプロイヤー拡張が設定されています。コンポーネントを公開するとき、デプロイヤー拡張でカスタマイズされたロジックを使用して、コンポーネントのプレゼンテーションHTMLコンテンツとそのPDFファイルコンポーネントのフィールドの1つの値に名前が付けられます。 公開していない間に、未公開のコンポーネントのフィールドの値を取得することは可能ですか?私は、コンポーネントが未公開のときに生成されるパッケージzipファイルをチェックしました。これは、非常に限られた情報しか持たない 'transaction.xml'と 'instructions.xml'の2つのファイルしか含んでいません。 tridionコンテンツ配信APIを使用してコンポーネントを取得しようとしましたが、コンポーネントtcm idを取得することはできますが、コンポーネントtcm idに基づいてコンポーネントオブジェクト自体を取得できません。また、パブリッシングコンポーネントで生成されたパッケージzipファイル内に存在するメタデータとメタデータファイルの一部が、パブリッシュされていないコンポーネントに生成されたパッケージzipファイルに存在しないことも確認しました。 ですから、コンポーネントのunpubishingでtridion javaコンテンツ配信APIを使用してコンポーネントオブジェクトを取得する方法はありますか?
回答: Tridionは`Components`を公開していませんが、性質上非常に異なる獣である`Component Presentations`を公開しています。 DD4Tのような実装を使用する場合は、コンポーネントのコンテンツにアクセスできますが、ほとんどの標準的な実装では、データ構造ではなくコンテンツのHTML表現が使用されます。 これは、公開されていない時間に、Tridionにはコンポーネントのコンテンツが含まれていないということは普通だと思います。データを削除する命令なので、データを再度送信する理由は何ですか? アイテムが公開されている場合は、削除する前に標準のContent Delivery APIを使用してそのオブジェクト(データベース:`Component Presentation`を覚えておいてください)を取得できます。あなたが*本当に*コンポーネントにアクセスする必要がある場合 、その後、CM側を使用することを検討してください:イベントシステムは、トランザクションを発行するためにかなりのフックを提供しています(ただし、我々は話をしているのC#/。NET。)。 **UPDATE**(未テスト)サンプルコードは、(ダイナミック)コンポーネントのプレゼンテーション ``` ComponentMetaFactory cmf = new ComponentMetaFactory(publicationId); ComponentMeta meta = cmf.getMeta(componentId); meta.getInitialPublicationDate(); ```