コンテンツ エディターの「メディアをアップロード」ダイアログで同じメディアを2回アップロードすると、メッセージがないクライアント側のエラーが表示されたり、次のエラーがログに出力されたりする場合があります:
Exception: Sitecore.Exceptions.DuplicateItemNameException
Message: The item name "your_image" is already defined on this level.
Source: Sitecore.Kernel
at Sitecore.Data.Items.ItemUtil.AssertDuplicateItemName(Item destinationItem, Item sourceItem, String name)
at Sitecore.Data.Items.ItemUtil.AssertItemName(Item destinationItem, Item sourceItem, String name)
at Sitecore.Data.Items.Item.Add(String name, TemplateID templateID)
at Sitecore.Resources.Media.MediaCreator.CreateItem(String itemPath, String filePath, MediaCreatorOptions options)
at Sitecore.Resources.Media.MediaCreator.AttachStreamToMediaItem(Stream stream, String itemPath, String fileName, MediaCreatorOptions options)
at Sitecore.Resources.Media.MediaCreator.CreateFromStream(Stream stream, String filePath, MediaCreatorOptions options)
at Sitecore.Resources.Media.MediaUploader.UploadToDatabase(List`1 list)
at Sitecore.Resources.Media.MediaUploader.Upload()
at Sitecore.Pipelines.Upload.Save.Process(UploadArgs args)
本問題は、フォルダー内にあるファイルと同じ名前のファイルをアップロードしようとした場合に発生します。なお、管理者のユーザーでは発生しません。
以下の解決策の実施を検討してください:
if (errorThrown === "abort") { that.app.trigger("upload-error", { id: data.__id }); } else { if (!errorThrown || errorThrown.trim() === '') { errorThrown = jqXHR.responseJSON.errorItems[0].Message.concat(" See logs for more details.") } var errors = [{ Message: errorThrown }]; that.app.trigger("sc-error", errors); that.app.trigger("upload-error", { id: data.__id, errors: errors }); }