Bug 1207326 - How to set user task notification through JBDS in jBPM 6?
Summary: How to set user task notification through JBDS in jBPM 6?
Keywords:
Status: CLOSED EOL
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: Eclipse Tooling
Version: 6.0.3
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: ---
Assignee: Kris Verlaenen
QA Contact: Jozef Marko
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-03-30 17:36 UTC by Amana
Modified: 2020-03-27 20:06 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2020-03-27 20:06:29 UTC
Type: Feature Request
Embargoed:


Attachments (Terms of Use)
Screen shot of User Task Property Tab (107.46 KB, image/jpeg)
2015-05-06 15:45 UTC, Robert (Bob) Brodt
no flags Details
process with notification and reassigment on user task (9.25 KB, application/xml)
2015-05-07 05:19 UTC, Jozef Marko
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 1396503 0 None None None Never

Description Amana 2015-03-30 17:36:47 UTC
## Description of problem:
It is not possible to set user task notification through JBDS (JBoss Developer Studio) using the IDE plug-in designer for jBPM 6.

It worked well in IDE plug-in for jBPM 5 as can be seen in [1] so it is clearly a "regression" unless there is another way to achieve that using the plug-in in JBDS.

[1] https://access.redhat.com/documentation/en-US/JBoss_Enterprise_BRMS_Platform/5/html/BRMS_Business_Process_Management_Guide/Task_Escalation_and_Notification.html


## Version-Release number of selected component (if applicable):
IDE plug-in designer for jBPM 6 (BPM Suite 6)


## How reproducible:
Always


## Steps to Reproduce:
1. Create a user task and try to set a notification.


## Expected results:
It should show a tab so that we could set Notification using JBDS.

Comment 2 Robert (Bob) Brodt 2015-04-14 20:32:10 UTC
Added Notifications and Reassignments sections to the User Task property tab.
Fixed in 1.1.3 (Luna) and 1.2.0 (Mars)

Comment 3 Jozef Marko 2015-04-27 09:11:10 UTC
@Bob, please in what version of BPMN2 Modeler is this issue fixed?

I have installed  BPMN2 Modeler 1.1.3.201504171557 (Luna), but in properties of User Task element were no new tabs.

Is needed some more configuration? For example Window > Preferences > BPMN2 > ...

Comment 4 Robert (Bob) Brodt 2015-05-06 15:45:08 UTC
Created attachment 1022723 [details]
Screen shot of User Task Property Tab

Comment 5 Robert (Bob) Brodt 2015-05-06 15:45:38 UTC
This is fixed in 1.1.3

You should see two new sections called "Notifications" and "Assignments" (all the way at the bottom) in the "User Task" property tab (see attachment).

Comment 6 Jozef Marko 2015-05-07 05:19:55 UTC
Created attachment 1022923 [details]
process with notification and reassigment on user task

Comment 7 Jozef Marko 2015-05-07 05:27:37 UTC
Hi Bob, 
I have found sections 'Notifications' and 'Assignments' yet. But I have problem with field 'Type' in both of this sections. I have created process - the attachment 1022923 [details] , where I have set notification and reassignment. But regardless which 'Type' of notification or reassignment I have chosen, I got validation errors like "Data Input NotStartedNotify() has no Data Type" and "Data Input NotStartedReassignment() has no Data Type"

Comment 8 Robert (Bob) Brodt 2015-05-07 19:45:20 UTC
Ah, right...apparently these do not need data type definitions.
I've added a custom validator to the jBPM plugin to ignore these DataInputs.
Please retest with tonight's 1.1.3 build.

Comment 9 Jozef Marko 2015-05-13 13:59:49 UTC
Bob, problem with type validation is fixed. But there have occurred another problem. Please follow these steps:

1. Create BPMN process containing (StartEvent)->(UserTask)-(EndEvent)
2. Double click on (UserTask)
3. In pop-up window named 'Edit User Task' click 'Add' in section Notifications
4. Fill all fields of new Notification
5. Click Ok
6. Save process
7. Repeat step 2.

Pop-up window with Properties of (UserTask) should be displayed, but it is not. This Exception can be found in error log:

Message:
GFCommandStack.execute(Command) org.eclipse.core.runtime.AssertionFailedException: assertion failed: 

StackTrace:
org.eclipse.core.runtime.AssertionFailedException: assertion failed: 
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:110)
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:96)
	at org.eclipse.bpmn2.modeler.runtime.jboss.jbpm5.property.extensions.TaskNotification.fromString(TaskNotification.java:338)
	at org.eclipse.bpmn2.modeler.runtime.jboss.jbpm5.property.extensions.TaskNotificationList.add(TaskNotificationList.java:48)
	at org.eclipse.bpmn2.modeler.runtime.jboss.jbpm5.property.extensions.TaskNotificationsListComposite$1.inputChanged(TaskNotificationsListComposite.java:169)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:288)
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1675)
	at org.eclipse.bpmn2.modeler.core.merrimac.clad.AbstractListComposite.bindList(AbstractListComposite.java:510)
	at org.eclipse.bpmn2.modeler.runtime.jboss.jbpm5.property.JbpmUserTaskDetailComposite.createBindings(JbpmUserTaskDetailComposite.java:47)
	at org.eclipse.bpmn2.modeler.core.merrimac.clad.AbstractDetailComposite.setBusinessObject(AbstractDetailComposite.java:131)
	at org.eclipse.bpmn2.modeler.core.merrimac.clad.DefaultDialogComposite.setData(DefaultDialogComposite.java:212)
	at org.eclipse.bpmn2.modeler.core.merrimac.dialogs.AbstractObjectEditingDialog.aboutToOpen(AbstractObjectEditingDialog.java:186)
	at org.eclipse.bpmn2.modeler.core.merrimac.dialogs.AbstractObjectEditingDialog.open(AbstractObjectEditingDialog.java:254)
	at org.eclipse.bpmn2.modeler.core.merrimac.dialogs.ObjectEditingDialog.open(ObjectEditingDialog.java:72)
	at org.eclipse.bpmn2.modeler.core.features.ShowPropertiesFeature.execute(ShowPropertiesFeature.java:92)
	at org.eclipse.graphiti.features.custom.AbstractCustomFeature.execute(AbstractCustomFeature.java:83)
	at org.eclipse.graphiti.internal.command.GenericFeatureCommandWithContext.execute(GenericFeatureCommandWithContext.java:64)
	at org.eclipse.graphiti.ui.internal.command.GefCommandWrapper.execute(GefCommandWrapper.java:51)
	at org.eclipse.graphiti.ui.internal.editor.EmfOnGefCommand.execute(EmfOnGefCommand.java:54)
	at org.eclipse.graphiti.internal.command.GFPreparableCommand2.doExecute(GFPreparableCommand2.java:43)
	at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
	at org.eclipse.emf.workspace.EMFCommandOperation.doExecute(EMFCommandOperation.java:119)
	at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150)
	at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:513)
	at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.doExecute(WorkspaceCommandStackImpl.java:208)
	at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
	at org.eclipse.graphiti.ui.internal.editor.GFWorkspaceCommandStackImpl.execute(GFWorkspaceCommandStackImpl.java:84)
	at org.eclipse.graphiti.ui.internal.editor.GFCommandStack.execute(GFCommandStack.java:138)
	at org.eclipse.graphiti.ui.internal.parts.ShapeEditPart.performRequest(ShapeEditPart.java:573)
	at org.eclipse.gef.tools.SelectEditPartTracker.performOpen(SelectEditPartTracker.java:194)
	at org.eclipse.gef.tools.SelectEditPartTracker.handleDoubleClick(SelectEditPartTracker.java:137)
	at org.eclipse.gef.tools.AbstractTool.mouseDoubleClick(AbstractTool.java:1069)
	at org.eclipse.gef.tools.SelectionTool.mouseDoubleClick(SelectionTool.java:527)
	at org.eclipse.gef.EditDomain.mouseDoubleClick(EditDomain.java:231)
	at org.eclipse.gef.ui.parts.DomainEventDispatcher.dispatchMouseDoubleClicked(DomainEventDispatcher.java:291)
	at org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDoubleClick(LightweightSystem.java:518)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:196)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4454)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1388)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3799)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3409)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

Comment 10 Robert (Bob) Brodt 2015-05-15 19:33:29 UTC
Oops! This was a bug in the string parser that handles the notifications and reassignment expressions. The bug only appears if the value of one of the fields is the same as the field name, in this case you had entered "subject" in the "Subject" field.

This is fixed in 1.1.3.Final

Comment 11 Jozef Marko 2015-05-21 13:27:58 UTC
Verified on - BPMN2 Modeler 1.1.3.Final.

Comment 12 Jozef Marko 2015-05-25 08:23:37 UTC
Verified on jbds-8.1.0.GA_jbdsis-8.0.2.CR1 - BPMN2 Modeler 1.1.3.Final


Note You need to log in before you can comment on or make changes to this bug.