3

tridio 2009からページを公開すると、次のエラーが発生します。

Destination with name 'FTP=[Host=servername, Location=\RET, Password=******, Port=21, UserName=retftp]' reported the following failure:
A processing error occurred processing a transport package Attempting to deploy a binary [Binary id=tcm:553-974947-16 variantId= sg= path=/Images/image_thumbnail01.jpg] to a location where a different binary is already stored Existing binary: tcd:pub[553]/binarymeta[974950]

以下は私のコードスニペットです

Component bigImageComp = th.GetComponentValue("bigimage", imageMetaFields);
string bigImagefileName = string.Empty;
string bigImagePath = string.Empty;
bigImagefileName = bigImageComp.BinaryContent.Filename;
bigImagePath = m_Engine.AddBinary(bigImageComp.Id, TcmUri.UriNull, null, bigImageComp.BinaryContent.GetByteArray(), Path.GetFileName(bigImagefileName));
imageBigNode.InnerText = bigImagePath;

提案してください

4

3 に答える 3

3

クリスサマーズは彼のブログでこれに取り組んだ。記事を読んでください-http://www.urbancherry.net/blogengine/post/2010/02/09/Unique-binary-filenames-for-SDL-Tridion-Multimedia-Components.aspx

于 2012-09-17T14:33:38.097 に答える
3

通常、Tridionコンテンツ配信では、コンポーネントの1つのバージョンのみを保持できます。MMCの複数の「バージョン」を取得するには、MMCをバリアントとして公開する必要があります。このようにして、テンプレートを使用して必要な数のバリアントを作成できます。

詳細については、以下の記事を参照してください。

http://yatb.mitza.net/2012/03/publishing-images-as-variants.html#!/2012/03/publishing-images-as-variants.html

于 2012-09-17T15:20:47.277 に答える
2

バイナリを追加するときは、ファイルとそのメタデータが一意であることを確認する必要があります。ファイル名などの値の1つが同じように見えても、残りのメタデータが一致しない場合、展開は失敗します。

与えられた例では(Nunoが指摘しているように)、バイナリ910はバイナリ703に展開しようとしています。ファイル名は同じですが、バイナリは同じではないと識別されます(同じパブリケーションとは異なるIDの場合)。この例では、バイナリの1つ(ファイル自体またはパスの変更)の名前を変更する必要があり、すべてが正常になります。

他のシナリオでは、2つの異なるテンプレートから同じ画像が使用され、テンプレートIDがバリアントIDとして使用される場合があります。この場合、同じイメージですが、バリアントIDのチェックは失敗するため、同じイメージを上書きしないように、デプロイヤーは失敗します。

多くの場合、非公開が役立つ場合がありますが、画像へのすべての参照が削除された場合にのみ画像が削除されます。したがって、複数の場所から使用される場合は、より多くのオープンリファレンスがあります。

これは、デプロイヤーからの論理的な保護です。間違った画像を別の画像に置き換えたり、レイアウトを混乱させたり、コンテンツを別の会議に変更したりすることは望ましくありません(広告バナーを考えてください)。

これが上記の問題の実際の原因と理由です(フォーラムから何かを得ました)

于 2012-09-17T16:39:08.743 に答える