Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
2.1.1.GA
-
None
Description
As far as I can tell, using the <begin-task> tag in a page.xml file for a page seems to set the flush-mode to "auto" and ignore any other declared flush-mode settings.
While developing a series of simple task pages for a jBPM process I am implementing, I noticed that form data was being flushed and committed to the database immediately after been submitted via an AJAX request. I supposed this was because the flush-mode was not what I thought it was.
(First issue, there is no Conversation.instance().getFlushModeType() method, which would have been useful)
-The link used to get to this page used "end" for conversation propagation.
-The page.xml for the page used <begin-conversation join="true" flush-mode="MANUAL"/> and <begin-task task-id="#
"/>
I tried adding flush-mode="manual" to the begin-task tag, but it had no affect (changes were still being flushed and committed to the database. I tried removing the <begin-conversation> tag altogether after reading that <begin-task> should start a conversation anyways (or was it <start-task>?). I then got an error about needing to use "join=true" for my conversation settings.
Finally, I was able to get around this by using a page action like below, leaving the <begin-conversation join="true" flush-mode="MANUAL">, and removing the <begin-task> tag.
@RequestParameter
private Long taskId;
public void beginTask(){
if(taskId != null)
}
I hope this is coherent. Also, this is my first time to report an issue here. Forgive me if I did anything wrong.