Domanda

sto usando / anticipando il seguente stack tecnologico:

  • JSF
  • Seam
  • jBPM
  • Primavera

Naturalmente, mi piacerebbe Seam per accedere bean Spring direttamente e hanno ottenuto così tanto a funzionare bene. Vorrei ora passare giù in jBPM e sviluppare una prova di definizione del processo concetto che accede bean Spring per eseguire azioni e prendere decisioni.

Per promuovere la separazione degli interessi e garantire che i processi possono essere eseguiti senza cucitura nel percorso di classe mi piacerebbe una soluzione che non consente l'accesso a tutti i componenti Seam gestito.

Lo so Seam utilizza una misura EL resolver ma a parte questo, da dove comincio?

È stato utile?

Soluzione

La sua possibile sottotipo VariableResolver e specificare il sottotipo nel file jbpm.cfg.xml. Questo può permettere # {} MyBean per risolvere per il bean.

<jbpm-configuration>

    <bean name="jbpm.variable.resolver" class="com.your.jbpm.VariableResolver" singleton="true" >
        <field name="backingVariableResolver"><ref bean="jbpm.variable.backingResolver" /></field>
    </bean>
    <bean  name="jbpm.variable.backingResolver" class="org.jbpm.jpdl.el.impl.JbpmVariableResolver" singleton="true" />

</jbpm-configuration>

, ma per l'accesso da script e le azioni il modo è quello di iniettare transitoria variabili nella istanza di processo, tenendo presente potrebbe essere necessario risolvere bug jBPM-304 , per esempio Script tipizzazione sub e regolando i file di mapping Hibernate associati. Questa iniezione deve essere ripetuto prima di ogni segnale a ciascuna istanza di processo.

Queste tecniche possono essere utilizzate per assicurarsi di avere accesso ai fagioli che si desidera l'accesso a, ma in realtà non vi danno un costume EL. Che avrebbe preso alcuni gravi l'hacking della classe JbpmExpressionEvaluator.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top