diff --git a/li.strolch.service/src/main/java/li/strolch/execution/EventBasedExecutionHandler.java b/li.strolch.service/src/main/java/li/strolch/execution/EventBasedExecutionHandler.java index a5def9e92..203d2bfad 100644 --- a/li.strolch.service/src/main/java/li/strolch/execution/EventBasedExecutionHandler.java +++ b/li.strolch.service/src/main/java/li/strolch/execution/EventBasedExecutionHandler.java @@ -287,6 +287,7 @@ public class EventBasedExecutionHandler extends ExecutionHandler { ActivityArchivalPolicy archivalPolicy = policyHandler.getPolicy(policyDef, tx); archivalPolicy.archive(activity); + tx.commitOnClose(); } }); } catch (Exception e) { diff --git a/li.strolch.service/src/main/java/li/strolch/execution/policy/RemoveActivityArchival.java b/li.strolch.service/src/main/java/li/strolch/execution/policy/RemoveActivityArchival.java index 678c1f2f2..1c4c7d35e 100644 --- a/li.strolch.service/src/main/java/li/strolch/execution/policy/RemoveActivityArchival.java +++ b/li.strolch.service/src/main/java/li/strolch/execution/policy/RemoveActivityArchival.java @@ -2,7 +2,6 @@ package li.strolch.execution.policy; import li.strolch.agent.api.ComponentContainer; import li.strolch.model.activity.Activity; -import li.strolch.persistence.api.RemoveActivityCommand; import li.strolch.persistence.api.StrolchTransaction; public class RemoveActivityArchival extends ActivityArchivalPolicy { @@ -17,10 +16,8 @@ public class RemoveActivityArchival extends ActivityArchivalPolicy { if (!activity.getState().isExecuted()) throw new IllegalStateException("Can not archive non-executed " + activity.getLocator()); - RemoveActivityCommand cmd = new RemoveActivityCommand(getContainer(), tx()); - cmd.setActivity(activity); - cmd.doCommand(); + tx().removeActivity(activity); - logger.info("Removed " + activity.getLocator()); + logger.info("Removing " + activity.getLocator()); } }