Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
Five New Optimizely Certifications are Here! Validate your expertise and advance your career with our latest certification exams. Click here to find out more
Are you by any chance using DAM?
anyway we are going to release 14.36 which makes it more robust with exporting the asset path. It's on the way out soon.
Hi Quan,
Yes, we're using DAM!
Is there a work around to fix this until the relase of 14.36?
Thanks!
Unfortunately no, the CatalogItemAssetImportExport is tightly coupled so no workaround at the moment.
In Commerce 14.36 you can implement IAssetUrlResolver to control how you want to generate the path for asset
Hi Quan, thanks for the follow up.
I understand that 14.36 will bring the ability to customize and provide an IAssetUrlResolver but is there a bug tracking the issue on https://world.optimizely.com/support/bug-list for an out of the box Optimizely solution that would restore the export functionality?
Thanks
Hi, the bug is COM-19582
Commerce can't and should not know about DAM, so with the bugfix, if it sees an asset that path can't be resolved , it will safely ignore that asset and proceed. So you can export successfully but the path for the asset will be left empty. If you implement a custom IAssetUrlResolver however you can build the path yourself depend on specific DAM system.
I understand and agree that Commerce does not have to know about the DAM.
Do I misunderstand that any Optimizely client that is already using Commerce and starts using the DAM will see the out of the box export feature broken and unusable?
If that is the case then from our client perspective it is definitely a bug.
Hi Quan, I apologize, I missed the bug number in the previous statements.
Thanks
Hi All,
We're trying to export the Product Catalog to XML file using the method CatalogImportExport() in Mediachase.Commerce.Catalog.ImportExport but it throws the following error:
System.ArgumentNullException: The provided content link does not have a value. (Parameter 'contentLink')
at EPiServer.Core.Internal.DefaultContentLoader.Get[T](ContentReference contentLink, LoaderOptions loaderOptions)
at Mediachase.Commerce.Assets.ImportExport.CatalogItemAssetImportExport.BuildAssetPath(MediaData imageAsset)
at Mediachase.Commerce.Assets.ImportExport.CatalogItemAssetImportExport.CreateEntryCatalogItemAsset(CatalogItemAssetRow assetRow)
at Mediachase.Commerce.Assets.ImportExport.CatalogItemAssetImportExport.GetEntryAssets()
at Mediachase.Commerce.Assets.ImportExport.CatalogItemAssetImportExport.PrepareCatalogItemAssetCollection()
at Mediachase.Commerce.Assets.ImportExport.CatalogItemAssetImportExport.ExportXml(XmlWriter exportWriter)
at Mediachase.Commerce.Catalog.ImportExport.CatalogImportExport.Export(String catalogName, Stream output, String baseFilePath)
This works fine in lower environments but it fails in PreProduction.
Is there any setting that could cause this that is not active in lower envs but on the higher ones?
EpiServer.Commerce.dll version is 14.23.0
Please advice.
Thanks in advance!