java - Hybris:如何在 impex 中导入 zip 文件中的媒体?
问题描述
我知道我们可以导入没有像这样压缩的图像
$siteResource=jar:com.project.initialdata.constants.ProjectInitialDataConstants&/projectinitialdata/import/sampledata/images/brand
INSERT_UPDATE Media ; code[unique=true] ; mediaFormat(qualifier) ; realfilename ; @media[translator=de.hybris.platform.impex.jalo.media.MediaDataTranslator] ; mime[default='image/jpeg'] ; catalogVersion(catalog(id),version)[unique=true,allownull=true]
; logo-molinard.jpg ; ; Molinard_logo.jpg ; $siteResource/8918352691230.jpg ; image/jpeg ; hybrisContentCatalog:Staged
; Logo_LittleMarcel ; ; LM_logo.jpg ; $siteResource/8918375858206.jpg ; image/jpeg ; hybrisContentCatalog:Staged
但就我而言,我需要导入 zip 文件中的图像。
更新:
当我这样做时它会起作用:
$siteResource=zip:C:\HYBRIS_SERVER\hybris\bin\custom\project\projectinitialdata\resources\projectinitialdata\import\sampledata\images\brand
INSERT_UPDATE Media ; code[unique=true] ; mediaFormat(qualifier) ; realfilename ; @media[translator=de.hybris.platform.impex.jalo.media.MediaDataTranslator] ; mime[default='image/jpeg'] ; catalogVersion(catalog(id),version)[unique=true,allownull=true]
; logo-molinard.jpg ; ; Molinard_logo.jpg ; $siteResource/images.zip&8918352691230.jpg ; image/jpeg ; hybrisContentCatalog:Staged
注意上面我给出了一条绝对路径。
但是当我试图给出这样的相对路径时它不起作用
$siteResource=zip:com.project.initialdata.constants.ProjectInitialDataConstants&/projectinitialdata/import/sampledata/images/brand
INSERT_UPDATE Media ; code[unique=true] ; mediaFormat(qualifier) ; realfilename ; @media[translator=de.hybris.platform.impex.jalo.media.MediaDataTranslator] ; mime[default='image/jpeg'] ; catalogVersion(catalog(id),version)[unique=true,allownull=true]
; logo-molinard.jpg ; ; Molinard_logo.jpg ; $siteResource/images.zip&8918352691230.jpg ; image/jpeg ; hybrisContentCatalog:Staged
解决方案
您需要开发新的翻译器。您可以扩展 MediaDataTranslator 以解压缩文件。您可以调用基类进行其他操作。
自定义翻译指南:https ://help.hybris.com/1811/hcd/ef51040168d743879c015b7de232ce40.html
更新
您需要同时使用 jar 和 zip。可能您可以在 zip 之前获取文件夹,如下所示:
$siteZipResource=jar:com.project.initialdata.constants.ProjectInitialDataConstants
$siteResource=zip:$siteZipResource&/projectinitialdata/import/sampledata/images/brand
推荐阅读
- asp.net-mvc - 你调用的对象是空的。发送数据时出现异常哟通过viewmodel查看
- c++ - lambda捕获中的值变成了常量?
- apache-spark - 根据列值加入
- c++ - 如何包含两次具有静态变量定义的标题?
- javascript - 在所有页面中显示搜索查询结果
- cllocationmanager - CLLocationManager 有时会在 iOS 13 上提供错误的坐标
- c++ - 在OOP的构造函数中将字符串输入作为参数
- java - 如何从 json 属性中移动值,向上一级(java)
- bash - 为什么在命令输出和重定向字符之间放置一个空格会导致错误?
- java - 在我的存储库中保存 DateTime 类型的数据类型时遇到问题: