Bonjour,désolé si ma question est triviale, mais j'essaie sans succès et je n'y arrive pas :? Ma question est : comment récupérer la valeur de bpm:context dans une action ? Je m'explique : je voudrais déplacer un noeud dans une action généré par un workflow, et après avoir regardé le wiki, il faut que je récupère bpm:context qui contient le nodeRef dont j'ai besoin.J'ai procédé ainsi :<process-definition xmlns="http://jbpm.org/jpdl-3.1.xsd"
name="azwf:plateauairbusworkflow">
<swimlane name="initiator" />
<start-state name="Start">
<task name="azwf:start" swimlane="initiator" />
<transition name="toDraft" to="Draft">
<action name="StartWorkflowHandler" class="com.workflow.handler.StartWorkflowHandler">
<contextNode type="org.alfresco.service.cmr.repository.NodeRef">#{bpm_context}</contextNode>
</action>
</transition>
</start-state>Et ensuite dans l'action : public class StartWorkflowHandler implements ActionHandler {
public NodeRef contextNode;
public void setContextNode(NodeRef contextNode) {
this.contextNode = contextNode;
}
public void execute(ExecutionContext ec) throws Exception {
(…)
Map<QName, Serializable> contentProps = new HashMap<QName, Serializable>();
contentProps = service.getProperties(contextNode);
service.moveNode(contextNode, draft, ContentModel.ASSOC_CONTAINS,QName.createQName(…);
Seulement, contextNode est nul. D'après la doc de jPDL (http://docs.jboss.org/jbpm/v3/userguide/jpdl.html#configurationofdelegations), il faut un constructeur de String dans NodeRef (il y en a un), mais cela ne fonctionne pas quand même…Il est peut-être possible de faire autrement, par exemple en créant un bean, mais je ne suis pas très familier avec les concepts de Spring, malgré les tutos…Quelqu'un peut-il m'aider s'il vous plait ?Cordialement.