Bug 1001229

Summary: RegisterWorkItemHandlerCommand is unable to serialize a WorkItemHandler object.
Product: [Retired] JBoss BPMS Platform 6 Reporter: Marek Baluch <mbaluch>
Component: jBPM CoreAssignee: Marco Rietveld <mrietvel>
Status: CLOSED CURRENTRELEASE QA Contact: Ivo Bek <ibek>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.0.0CC: smcgowan
Target Milestone: ER4Keywords: TestBlocker
Target Release: 6.0.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Community CR2.
Last Closed: 2014-08-06 20:09:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
stack-trace none

Description Marek Baluch 2013-08-26 19:39:20 UTC
Created attachment 790654 [details]
stack-trace

Description of problem:

When using a remote runtime engine (e.g. REST) then the call to getWorkItemManager().registerWorkItemHandler fails on WorkItemHandler serialization with:

"class XYZ nor any of its super class is known to this context."

(I used org.jbpm.process.instance.impl.demo.SystemOutWorkItemHandler).

See attached log for full stack.

Comment 1 Kris Verlaenen 2013-09-03 13:14:06 UTC
Not sure that this is a method that can easily be used remotely, as this will probably not have the expected result (if it would be successful, it would only register the listener for the duration of the life cycle of that ksession, not for all sessions, and also not persistent.  Configuring work item handlers is probably something that needs to be done by a system administrator, for example by dropping in a work item handler configuration file into the application server classpath.

Marco, could you exclude this one as one of the AcceptedCommands?

Kris

Comment 2 Marco Rietveld 2013-09-04 10:32:37 UTC
Fixed with this commit: 

https://github.com/droolsjbpm/droolsjbpm-integration/commit/117ec2b2926f5c9f932a2a412724e0c6cb6d7e9a

This commit makes sure that an error is thrown when the RegisterWorkItemHandlerCommand command is used. 

I added some client/api side checks as well - the checks on the server side already exist.

Comment 6 Ivo Bek 2013-10-16 12:21:37 UTC
Verified in BPMS 6.0.0.ER4

the registerRegisterWorkItemHandler() throws:

java.lang.UnsupportedOperationException: The .registerWorkItemHandler(..) method is not supported on the remote api.