Pregunta

Tengo un comportamiento extraño está pasando.

Estoy utilizando Seam y JBPM. Cuando digo:

ProcessDefinition templateDefinition = Jbpm.instance().getProcessDefinitionFromResource(ap.getJpdl()); 
//This will return Enkeltanledning.jpdl.xml
templateDefinition.getVersion();

Es siempre devuelve -1. Sin embargo, cuando selecciono la base de datos, consigo la versión 2.

mysql> select * from JBPM_PROCESSDEFINITION;
+-----+--------+-----------------------------+--------------+----------+------------------------+-------------+
| ID_ | CLASS_ | NAME_                       | DESCRIPTION_ | VERSION_ | ISTERMINATIONIMPLICIT_ | STARTSTATE_ |
+-----+--------+-----------------------------+--------------+----------+------------------------+-------------+
|   1 | P      | Enkeltanledning             | NULL         |        1 |                        |           1 | 
|   2 | P      | Enkeltanledning             | NULL         |        2 |                        |          31 | 

Ahora, he encontrado este enlace: jPDL Y dice:

Unnamed process definitions will always have version number -1.

Sin embargo, tengo mis definiciones de procesos no tienen nombre, y cuando puedo depurar templateDefinition consigo el nombre correcto Enkeltanledning , así que sé que es el archivo jPDL correcta que se ha cargado.

Así que mi pregunta es, ¿por qué mi código siempre devuelven -1 en la versión? La razón por la que necesito la versión correcta, se debe a que estoy haciendo algunas comprobaciones para ver si tengo la versión correcta, Otherwize voy a volver a implementar el ProcessDefinition, y desde siempre me -1, siempre va a volver a implementar.

¿Fue útil?

Solución

He encontrado la respuesta.

Su porque estoy leyendo el ProcessDefinition desde el archivo en lugar de quering la base de datos. Cambiar el código a este resolvió

@In
JbpmContext jbpmContext;

ProcessDefinition templateDefinition = jbpmContext.getGraphSession().findLatestProcessDefinition(processDefName);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top