jboss-user
[Arriba] [Todas las Listas]

[jboss-Usuario] [jBPM] - Re: las Dificultades que Invocan Tarea de Regla

To: User development <jboss-user@xxxxxxxxxxxxxxx>
Subject: [jboss-Usuario] [jBPM] - Re: las Dificultades que Invocan Tarea de Regla
From: Esteban Aliverti <do-not-reply@xxxxxxxxx>
Date: Mon, 19 Sep 2011 11:41:36 -0400
Auto-submitted: yes
Delivery-date: Mon, 19 Sep 2011 11:42:54 -0400
Envelope-to: traductor@xxxxxxxxxxx
In-reply-to: <2-627082-3-88405-1316389639386.jivesbs.jivemailuser@http://community.jboss.org>
List-archive: <http://lists.jboss.org/pipermail/jboss-user>
List-help: <mailto:jboss-user-request@lists.jboss.org?subject=help>
List-id: The JBoss User main mailing list <jboss-user.lists.jboss.org>
List-post: <mailto:jboss-user@lists.jboss.org>
List-subscribe: <https://lists.jboss.org/mailman/listinfo/jboss-user>, <mailto:jboss-user-request@lists.jboss.org?subject=subscribe>
List-unsubscribe: <https://lists.jboss.org/mailman/listinfo/jboss-user>, <mailto:jboss-user-request@lists.jboss.org?subject=unsubscribe>
References: <2-627082-3-88405-1316389639386.jivesbs.jivemailuser@http://community.jboss.org>
Reply-to: The JBoss User main mailing list <jboss-user@xxxxxxxxxxxxxxx>
Sender: jboss-user-bounces@xxxxxxxxxxxxxxx
Esteban *Aliverti [*http://comunidad.*jboss.*org/Personas/*eaa] creó la discusión

"*Re: las Dificultades que Invocan Tarea de Regla"

para ver la discusión, visita: *http://comunidad.*jboss.*org/Mensaje/627263#627263

--------------------------------------------------------------
El *behavior de Tarea de Regla es el definido por Mauricio. 
Tienes 2 opciones: 
1. Ejecuta *fireAllRules() a mano. Esto podría ser muy delicado porque quizás no sabes cuándo o donde necesitas invocarlo
2. Tiene un hilo separado que corre *fireUntilHalt() en el *ksession. Para esto, necesitas a a mano empezar un hilo que invoca *fileUntilRun() en su carrera() método.

Pero la cuestión es, por qué hace el primer trabajo de ejemplo pero el segundo  no?
Y el "problema" es debido a la inclusión de un *asynchornous nodo en vuestro proceso: la Tarea Humana.

Tan, cuándo empiezas vuestro proceso, la ejecución logra la Tarea Humana, la tarea es creada en el HT *Server y el control de ejecución consigue atrás a vuestro código. En que te señala está ejecutando el *fireAllRules(). Este *fireAllRules() no está haciendo cualquier cosa porque hay nada para ser disparado. La Tarea de Regla nunca fue ejecutada todavía.
Cuándo completas el HT, el proceso continúa su ejecución y la Tarea de Regla consigue invocada. Aquí necesitas llamar *fireAllRules() para continuar con la ejecución del proceso.

Consideraciones mejores,
--------------------------------------------------------------

Respuesta a este mensaje por ir a Comunidad
[*http://comunidad.*jboss.*org/Mensaje/627263#627263]

Empieza una discusión nueva en *jBPM en Comunidad
[*http://comunidad.*jboss.*org/Escoge-contenedor!Entrada.*jspa?*contentType=1&*containerType=14&contenedor=2034]

Esteban Aliverti [http://community.jboss.org/people/eaa] created the discussion

"Re: Difficulties Invoking Rule Task"

To view the discussion, visit: http://community.jboss.org/message/627263#627263

--------------------------------------------------------------
The behavior of Rule Task is the one defined by Mauricio. 
You have 2 options: 
1. execute fireAllRules() manually. This could be very tricky because maybe you don't know when or where you need to invoke it
2. have a separate thread running fireUntilHalt() in the ksession. For this, you need to manually start a thread invoking fileUntilRun() in its run() method.

But the question is, why does the first example work but the second doesn't?
And the "problem" is because of the inclusion of an asynchornous node in your process: the Human Task.

So, when you start your process, the execution reaches the Human Task, the task is created in the HT Server and the execution control gets back to your code. At that point you are executing the fireAllRules(). This fireAllRules() is not doing anything because there is nothing to be fired. The Rule Task was never executed yet.
When you complete the HT, the process continues its execution and the Rule Task gets invoked. Here you need to call fireAllRules() to continue with the execution of the process.

Best Regards,
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/627263#627263]

Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]

_______________________________________________
*jboss-Usuario *mailing lista
*jboss-user@xxxxxxxxxxxxxxx
*https://listas.*jboss.*org/*mailman/*listinfo/*jboss-Usuario
_______________________________________________
jboss-user mailing list
jboss-user@xxxxxxxxxxxxxxx
https://lists.jboss.org/mailman/listinfo/jboss-user
<Anterior por Tema] Tema Actual [Siguiente por Tema>