Update of
/var/cvs/contributions/CMSContainer_Modules/workflow/src/java/com/finalist/cmsc/workflow
In directory
james.mmbase.org:/tmp/cvs-serv25031/workflow/src/java/com/finalist/cmsc/workflow
Modified Files:
Tag: b1_5
WorkflowManager.java
Log Message:
CMSC-1073 Workflow elements should not be modified by 'anonymous'.
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Modules/workflow/src/java/com/finalist/cmsc/workflow
See also: http://www.mmbase.org/jira/browse/CMSC-1073
Index: WorkflowManager.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Modules/workflow/src/java/com/finalist/cmsc/workflow/WorkflowManager.java,v
retrieving revision 1.15
retrieving revision 1.15.2.1
diff -u -b -r1.15 -r1.15.2.1
--- WorkflowManager.java 8 Aug 2008 13:44:01 -0000 1.15
+++ WorkflowManager.java 26 Sep 2008 09:33:35 -0000 1.15.2.1
@@ -4,6 +4,9 @@
import org.apache.commons.lang.StringUtils;
import org.mmbase.bridge.*;
+import org.mmbase.module.core.MMBase;
+import org.mmbase.module.core.MMObjectBuilder;
+import org.mmbase.module.core.MMObjectNode;
import org.mmbase.storage.search.*;
import org.mmbase.util.logging.Logger;
import org.mmbase.util.logging.Logging;
@@ -366,11 +369,16 @@
}
protected void changeWorkflowFailPublished(Node wfItem, String status,
String stacktrace) {
- wfItem.setStringValue(STATUS_FIELD, status);
+ // We need to bypass the MMBase bridge to change workflow items.
+ // The bridge causes the lastmodifier field to be changed, which is
visible for the end user.
+ MMObjectBuilder wfBuilder =
MMBase.getMMBase().getBuilder(WORKFLOW_MANAGER_NAME);
+ MMObjectNode mmNode = wfBuilder.getNode(wfItem.getNumber());
+
+ mmNode.setValue(STATUS_FIELD, status);
if (StringUtils.isNotEmpty(stacktrace)) {
- wfItem.setStringValue(STACKTRACE_FIELD, stacktrace);
+ wfItem.setValue(STACKTRACE_FIELD, stacktrace);
}
- wfItem.commit();
+ wfBuilder.commit(mmNode);
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs