<begin-task> clobbers the conversation flush-mode
-------------------------------------------------
Key: JBSEAM-4348
URL:
https://jira.jboss.org/jira/browse/JBSEAM-4348
Project: Seam
Issue Type: Bug
Components: BPM
Affects Versions: 2.1.1.GA
Environment: JBoss AS 4.2.2, Seam 2.1.1 GA, jBPM 3.2.1 (I think)
Reporter: Marshall Treadaway
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="#{taskId}"/>
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){
BusinessProcess.instance().resumeTask(taskId);
Conversation.instance().changeFlushMode(FlushModeType.MANUAL);
}
}
I hope this is coherent. Also, this is my first time to report an issue here. Forgive
me if I did anything wrong.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira