[
http://jira.jboss.com/jira/browse/BPEL-198?page=all ]
Alejandro Guizar resolved BPEL-198.
-----------------------------------
Resolution: Done
The integration service no longer enables RequestListeners, it just creates them and adds
them to a list. When the JbpmContext tells the IntegrationService to close(), the service
enables all RequestListeners in the list. In order for this technique to prevent
StaleStateExceptions, the JbpmContext must close the PersistenceService (and commit the
database transaction) before the IntegrationService closes.
prevent stale object state exceptions
-------------------------------------
Key: BPEL-198
URL:
http://jira.jboss.com/jira/browse/BPEL-198
Project: JBoss jBPM BPEL
Issue Type: Task
Security Level: Public(Everyone can see)
Components: Engine
Affects Versions: jBPM BPEL 1.1 beta 1
Reporter: Alejandro Guizar
Assigned To: Alejandro Guizar
Priority: Critical
Fix For: jBPM BPEL 1.1 beta 2
After incorporating optimistic concurrency control, Hibernate frequently throwed
StaleObjectStateExceptions due to the integration service's enabling of
RequestListeners as soon as the process instance reached an inbound message activity. When
the expected message comes before the transaction that reached the activity ends, nothing
prevents JMS from delivering it. The unavoidable outcome of this situation is a
StaleObjectStateException.
We must find a way to enable RequestListeners after the originating transaction ends.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira