cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with FileLoaderValueTranslator with DynamicProcessDefinition.

abhinavsingh11
Participant
0 Kudos

Hi,

I am trying to import business process definition xml by using FileLoaderValueTranslator, using below impex.

UPDATE GenericItem[processor=de.hybris.platform.commerceservices.impex.impl.ConfigPropertyImportProcessor];pk[unique=true] $jarResourceMySiteCore=jar:com.mySite.core.setup.CoreSystemSetup&/mySite/processes INSERT_UPDATE DynamicProcessDefinition;code[unique=true];active[default=true];content[translator=de.hybris.platform.commerceservices.impex.impl.FileLoaderValueTranslator] ;careOrderReminderEmailProcess;true;$jarResourceMySiteCore/careOrderReminderNotification.xml

but this import fails with error:

INSERT_UPDATE DynamicProcessDefinition;code[unique=true];active[default=true];content[translator=de.hybris.platform.commerceservices.impex.impl.FileLoaderValueTranslator] ,,,,cannot create due to unresolved mandatory/initial columns| column 3: cannot resolve value 'jar:com.mySite.core.setup.CoreSystemSetup&/mySite/processes/workOrderReminderNotification.xml' for attribute 'content';careOrderReminderEmailProcess;true;jar:com.mySite.core.setup.CoreSystemSetup&/mySite/processes/careOrderReminderNotification.xml

On debugging through FileloaderValueTranslator, I found out that, it is failing because toItem parameter is coming as null for the translattor.

@Override public Object importValue(final String valueExpr, final Item toItem) throws JaloInvalidParameterException

Can anyone suggest, what I need to configure for this translator to work with DynamicProcessDefinition ?

Thanks, Abhinav

Accepted Solutions (0)

Answers (1)

Answers (1)

DanielR-HO
Newcomer
0 Kudos

Hi,

I could find a workaround for this.  First, you need to disable the interceptor types prepare, and validate. Then insert a dummy value to the content. With the second impex, you can import the process with Translator

INSERT DynamicProcessDefinition[disable.interceptor.types = 'prepare,validate']; code[unique = true]; content[default = dummy]; active[default = true]
;careOrderReminderEmailProcess

UPDATE DynamicProcessDefinition[disable.interceptor.types = validate]; code[unique = true] ; content[translator = de.hybris.platform.commerceservices.impex.impl.FileLoaderValueTranslator]; active[unique = true, default = true]
;careOrderReminderEmailProcess ;$jarResourceMySiteCore/careOrderReminderNotification.xml