Milestone Reached Event Not Firing When Deadline Is Set On Milestone

(Doc ID 2309882.1)

Last updated on SEPTEMBER 27, 2017

Applies to:

Oracle Business Process Management Suite - Version 12.2.1.2.0 and later
Information in this document applies to any platform.

Symptoms

On : 12.2.1.2.0 version, Case Management

ACTUAL BEHAVIOR
---------------
After enabling "Publish Case Events", EDN events are being raised when a milestone is reached.
After setting a milestone deadline this EDN event is not raised anymore, but you get an EDN event when the milestone expires.
 

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
There were run 3 tests:
Test 1/ Milestone2 does not have an expiration date set
This corresponds to ACM Case 1 and FlowId 2 to 6 for GPS_CaseEventListener composite

1. Log into EM Console
2. Navigate to SOA -> Deployed Composites and open GPS_CaseEventListener composite
3. Click on FlowId 5 to open it -> then click on the 1st CaseEventListener to open the Audit Trail for Instance of CaseEventListener

4. Click on Payload for Activity: receiveInput and you'll see the Milestone1 was REACHED
<ce:milestoneEvent>
<ce:milestone>Milestone1</ce:milestone>
<ce:milestoneEvent>REACHED</ce:milestoneEvent>
</ce:milestoneEvent>

5. Close it and click on FlowId 6 to open it -> then click on the 1st CaseEventListener to open the Audit Trail for Instance of CaseEventListener
6. Click on Payload for Activity: receiveInput and you'll see the Milestone2 was REACHED
<ce:milestoneEvent>
<ce:milestone>Milestone2</ce:milestone>
<ce:milestoneEvent>REACHED</ce:milestoneEvent>
</ce:milestoneEvent>

Test 2/ Milestone2 has an expiration date set and it was completed before the expiration time
The expiration time was set to 10 minutes after the creation of the Milestone
This corresponds to ACM Case 2 and FlowId 8 -> 11 for GPS_CaseEventListener composite

1. Log into EM Console
2. Navigate to SOA -> Deployed Composites and open GPS_CaseEventListener composite
3. Click on FlowId 11 to open it -> then click on the 1st CaseEventListener to open the Audit Trail for Instance of CaseEventListener
<ce:milestoneEvent>
<ce:milestone>Milestone1</ce:milestone>
<ce:milestoneEvent>REACHED</ce:milestoneEvent>
</ce:milestoneEvent>
FlowId 11 would be an equivalent for FlowId 5
4. After Milestone2 is completed from BPM Workspace, the milestoneEvent event is not triggered -> this is the reported issue
-> the equivalent for FlowId6 is not triggered and in the logs the error can be seen:
[2017-08-25T11:21:57.023+00:00] [soa_server1] [ERROR] [] [oracle.bpm.casemgmt.instance] [tid: [ACTIVE].ExecuteThread: '46' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: f14993fb-5d8b-484f-9a45-58d722063b9e-00000585,1:19058] [APP: soa-infra] [partition-name: DOMAIN] [tenant-name: GLOBAL] [oracle.soa.tracking.FlowId: 7] [oracle.soa.tracking.InstanceId: 43] [oracle.soa.tracking.SCAEntityId: 20051] [FlowId: 0000LsP7arpFw000jzwkno1Pbtty00000D] Exception[[
BPM-73412

Error in marking milestone as attained.
Error in marking milestone as attained.
Contact system administrator for assistance.

at oracle.bpm.casemgmt.impl.CaseInstanceServiceImpl.validateAndAttainMilestone(CaseInstanceServiceImpl.java:1250)
at oracle.bpm.casemgmt.impl.CaseInstanceServiceImpl.attainMilestone(CaseInstanceServiceImpl.java:1130)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Test 3/ Milestone2 has an expiration date set and it was let to expire according to the expiration time set in the Milestone
This corresponds to ACM Case 3 and FlowId 13 -> 18 for GPS_CaseEventListener composite

1. Log into EM Console
2. Navigate to SOA -> Deployed Composites and open GPS_CaseEventListener composite
3. Click on FlowId 16 to open it -> then click on the 1st CaseEventListener to open the Audit Trail for Instance of CaseEventListener
<ce:milestoneEvent>
<ce:milestone>Milestone1</ce:milestone>
<ce:milestoneEvent>REACHED</ce:milestoneEvent>
</ce:milestoneEvent>
FlowId 16 would be an equivalent for FlowId 5 and FlowId 11
4. Click on FlowId 17 to open it -> then click on the 1st CaseEventListener to open the Audit Trail for Instance of CaseEventListener
You will see the Milestone2 is reached:
<ce:milestoneEvent>
<ce:milestone>Milestone2</ce:milestone>
<ce:milestoneEvent>DEADLINE_REACHED</ce:milestoneEvent>
</ce:milestoneEvent>



ERROR
-----------------------
[soa_server1] [ERROR] [] [oracle.bpm.casemgmt.instance] [tid: [ACTIVE].ExecuteThread: '46' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: f14993fb-5d8b-484f-9a45-58d722063b9e-00000585,1:19058] [APP: soa-infra] [partition-name: DOMAIN] [tenant-name: GLOBAL] [oracle.soa.tracking.FlowId: 7] [oracle.soa.tracking.InstanceId: 43] [oracle.soa.tracking.SCAEntityId: 20051] [FlowId: 0000LsP7arpFw000jzwkno1Pbtty00000D] Exception[[
BPM-73412

Error in marking milestone as attained.
Error in marking milestone as attained.
Contact system administrator for assistance.

at oracle.bpm.casemgmt.impl.CaseInstanceServiceImpl.validateAndAttainMilestone(CaseInstanceServiceImpl.java:1250)
at oracle.bpm.casemgmt.impl.CaseInstanceServiceImpl.attainMilestone(CaseInstanceServiceImpl.java:1130)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[...]
Caused by: BPM-73440

Error in stopping milestone deadline.
Error in stopping milestone deadline for case id: 45040906-2b47-42e0-ae3a-a9200815c8ca and milestone: Milestone2.
Contact system administrator for assistance.

at oracle.bpm.casemgmt.scheduler.CaseSchedulerService.stopMilestoneDeadline(CaseSchedulerService.java:463)
at oracle.bpm.casemgmt.scheduler.CaseSchedulerService.attainMilestone(CaseSchedulerService.java:197)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[...]
Caused by: java.lang.NullPointerException
at oracle.bpm.casemgmt.scheduler.CaseSchedulerService.stopMilestoneDeadline(CaseSchedulerService.java:440)
... 186 more

]]



Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms