Hybris : How to import media which is in the zip file in impex?

瘦欲@ 提交于 2019-12-24 11:31:25

问题


I know we can import images which are not zipped like this

$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   

But in my case I need to import the images which are in a zip file.

Update:

It works when I do like this:

$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                                    

Note above I'm giving an abolute path.

But when I tried to give relative path like this it didn't work

$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   

回答1:


You need to develop new translator. You can extend MediaDataTranslator for unzipping file. You can call base class for other operations.

Custom translator guideline: https://help.hybris.com/1811/hcd/ef51040168d743879c015b7de232ce40.html

Update
You need to use jar and zip together. May be you can get folder before zip like below:

$siteZipResource=jar:com.project.initialdata.constants.ProjectInitialDataConstants
$siteResource=zip:$siteZipResource&/projectinitialdata/import/sampledata/images/brand


来源:https://stackoverflow.com/questions/55761185/hybris-how-to-import-media-which-is-in-the-zip-file-in-impex

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!