I’m building a SpringProcessEngineConfiguration and setting deployemnt resources see below:
SpringProcessEngineConfiguration springProcessEngineConfiguration = new SpringProcessEngineConfiguration();
...
springProcessEngineConfiguration.setDeploymentResources(getProcesses());
My getProcesses() method is as folllows:
private Resource[] getProcesses() throws IOException {
ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();
return resourcePatternResolver.getResources(ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + "flowable/" + "*.bpmn"
+ "");
}
I have a bpmn file here:
src/main/resources/flowable/process1.bpmn
When I deploy the processengine, I can see that the ProcessDefinition has been deployed:
processEngine.getRepositoryService().createProcessDefinitionQuery().list()
Returns the process.
My issue is when I use wildcards in my getProcesses() method as follows:
resourcePatternResolver.getResources(ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + "flowable/" + "**/*.bpmn")
and my process exists under:
src/main/resources/flowable/group1/subgroup1/process2.bpmn
It is returned when I query for it using the resourcePatternResolver, I see the path to the process2 file returned however the Process is not loaded into the engine (when I create a ProcessDefinitionQuery I don’t see it there)