Bug 796654

Summary: No way to set a WorkItemHandler to StatelessKnowledgeSession
Product: [JBoss] JBoss Enterprise BRMS Platform 5 Reporter: Tomas Schlosser <tschloss>
Component: jBPM 5Assignee: Mark Proctor <mproctor>
Status: VERIFIED --- QA Contact: Tomas Schlosser <tschloss>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: BRMS 5.3.0.GACC: atangrin, brms-jira, lpetrovi, mproctor
Target Milestone: ER7Keywords: TestBlocker
Target Release: BRMS 5.3.0.GA   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Tomas Schlosser 2012-02-23 06:58:39 EST
Description of problem:
API does not provide any way to register work item handler in StatelessKnowledgeSession. If the process containing WorkItem node is started, the exception is thrown saying "Could not find work item handler for <whatever>".

Version-Release number of selected component (if applicable):
BRMS-5.3.0-ER4
Comment 1 Kris Verlaenen 2012-02-28 18:45:43 EST
When using a stateless session, the session is always created upon request and disposed at the end of the invocation.  There are however two ways to set a handler:

 - using a configuration file in the classpath that defines handlers
 - by adding a RegisterWorkItemHandlerCommand as part of the commands you are sending to the stateless service to first register the handler and then execute the rest of the commands

Would this be sufficient?

Kris
Comment 2 Tomas Schlosser 2012-02-29 02:13:41 EST
That should dod the trick. Thank you Kris.
However I have one more request: could it be added to CommandFactory? I use it (since it is the official API) and don't search for Command implementations anywhere else. If it would not be possible, please add it to documentation.
Thank you.
Comment 3 Mark Proctor 2012-04-05 20:41:52 EDT
I'll take this one.
Comment 4 Mark Proctor 2012-04-20 13:18:08 EDT
fixed with unit test.
applied to master, 5.4.x and 5.3.x

5.3.x commit below:
https://github.com/droolsjbpm/drools/commit/fd655f726d491fd18ab42dc2aa5eb80e5da2d198
Comment 6 JBoss JIRA Server 2012-04-20 13:19:52 EDT
Mark Proctor <mproctor@redhat.com> updated the status of jira JBRULES-3476 to Resolved
Comment 7 JBoss JIRA Server 2012-04-20 13:19:58 EDT
Mark Proctor <mproctor@redhat.com> updated the status of jira JBRULES-3476 to Closed
Comment 8 Ryan Zhang 2012-04-23 03:37:44 EDT
Update status to ON_QA. Please verify them against ER6.
Comment 10 Tomas Schlosser 2012-05-02 09:47:06 EDT
The method newRegisterWorkItemHandler() is still unavailable in ER6. Ryan, did this code make it into ER6?
Comment 11 Ryan Zhang 2012-05-14 04:17:07 EDT
The fixed for this issue should be included in ER7. Please do verification on it.
Comment 12 Tomas Schlosser 2012-05-21 04:15:59 EDT
This feature is included in ER7 build. Thank you