Bug 1304846

Summary: Make org.jbpm.document.Document Remotable
Product: [Retired] JBoss BPMS Platform 6 Reporter: William Antônio <wsiqueir>
Component: jBPM CoreAssignee: Maciej Swiderski <mswiders>
Status: CLOSED NOTABUG QA Contact: Radovan Synek <rsynek>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 6.2.0CC: alazarot, wsiqueir
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-14 14:28:15 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:

Description William Antônio 2016-02-04 18:47:56 UTC
Description of problem:


Set process variables of type org.jbpm.document.Document is not possible because the class org.jbpm.document.Document is not Remotable. If users try to upload documents when starting a business process, for example, it fails with exception "org.kie.remote.client.api.exception.RemoteApiException: KieRemoteServicesDeploymentException thrown with message 'Could not     unmarshall user-defined class instance parameter of type 'documentImpl'':"


This is important because Forms are ready to use this class and users might also want to manage the same process remotely.

Version-Release number of selected component (if applicable):

N/A

How reproducible:
Always

Steps to Reproduce:
1. Create a process that has a variable of type org.jbpm.document.Document
2. Try to start this process using the remote API passing a value for the variable created previously

Actual results:
The remote API execution will fail with the following exception: 

"org.kie.remote.client.api.exception.RemoteApiException: KieRemoteServicesDeploymentException thrown with message 'Could not     unmarshall user-defined class instance parameter of type 'documentImpl'':"

Expected results:

Process execution starts and uses the sent parameter.

Additional info:

A workaround is instead using the class Document, use an user defined Remotable class to provide file upload feature.

Comment 2 Maciej Swiderski 2016-03-02 10:48:24 UTC
there is not much to do from implementation side as the only missing bit is to add org.jbpm.document.service.impl.DocumentImpl into the jaxb context so it will be recognized. And to do so user should use deployment descriptor that allows to add any class to it via remoteable classes section.

Once you add it there it will be available for serialization.

William, do you mind confirming it?

Comment 3 William Antônio 2016-03-14 14:28:15 UTC
Hello Maciej,

I confirm. Thanks for the clarification!