2016-05-25 8 views

Antwort

0

Ich tat es mit der Tabelle BAMTASKSUMMARY, nicht sicher, ob es der einzige Weg war, es zu tun.

zu tun, dass ich zuerst die BAMTaskEventListener am RuntimeManager versucht (so fing es an, in die Tabelle der Aufnahme):

DefaultRegisterableItemsFactory registerableItemsFactory = new DefaultRegisterableItemsFactory(); 
registerableItemsFactory.addTaskListener(BAMTaskEventListener.class); 
emf = Persistence.createEntityManagerFactory("org.jbpm.persistence.jpa"); 
RuntimeEnvironmentBuilder builder = RuntimeEnvironmentBuilder.Factory.get() 
     .newDefaultBuilder().entityManagerFactory(emf).registerableItemsFactory(registerableItemsFactory) 
     .knowledgeBase(kbase); 

Mit diesem Code ich ein Problem hatte, der BAMTaskEventListener didnt einen leeren Konstruktor in jbpm 6.2 hat und es ein Problem in der Instanziierung war ... ich verlängert es einen leeren Konstruktor hinzuzufügen und es hat gut funktioniert:

public class BAMTaskEventListenerExt extends BAMTaskEventListener{ 

    public BAMTaskEventListenerExt() { 
     super(null); 
     // TODO Auto-generated constructor stub 
    } 

    public BAMTaskEventListenerExt(boolean flag) { 
     super(flag); 
     // TODO Auto-generated constructor stub 
    } 

    public BAMTaskEventListenerExt(EntityManagerFactory emf) { 
     super(emf); 
     // TODO Auto-generated constructor stub 
    } 

} 

und dann registeded:

DefaultRegisterableItemsFactory registerableItemsFactory = new DefaultRegisterableItemsFactory(); 
registerableItemsFactory.addTaskListener(BAMTaskEventListenerExt.class);