Fix TransientObjectException when allocating a resource to a previously saved schedule
Fixes #3
This commit is contained in:
parent
f95977c986
commit
4b952866a0
3 changed files with 20 additions and 1 deletions
|
|
@ -103,6 +103,7 @@ public class AdHocTransactionService implements IAdHocTransactionService {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public <T> T runOnTransaction(IOnTransaction<T> onTransaction) {
|
public <T> T runOnTransaction(IOnTransaction<T> onTransaction) {
|
||||||
return onTransaction.execute();
|
return onTransaction.execute();
|
||||||
|
|
|
||||||
|
|
@ -589,9 +589,19 @@ public class SaveCommandBuilder {
|
||||||
removeEmptyConsolidation(taskElement);
|
removeEmptyConsolidation(taskElement);
|
||||||
updateLimitingResourceQueueElementDates(taskElement);
|
updateLimitingResourceQueueElementDates(taskElement);
|
||||||
|
|
||||||
if (taskElement.getTaskSource() != null && taskElement.getTaskSource().isNewObject())
|
if (taskElement.getTaskSource() != null && taskElement.getTaskSource().isNewObject()) {
|
||||||
saveTaskSources(taskElement);
|
saveTaskSources(taskElement);
|
||||||
|
|
||||||
|
// hack to update taskPropertiesController reference to current currentTaskElement
|
||||||
|
if (SaveCommandBuilder.taskPropertiesController != null) {
|
||||||
|
TaskElement taskControllerTaskElement = SaveCommandBuilder.taskPropertiesController.getCurrentTaskElement();
|
||||||
|
if ( taskControllerTaskElement != null && taskControllerTaskElement.getOrderElement() == taskElement.getOrderElement() &&
|
||||||
|
taskControllerTaskElement.isNewObject()) {
|
||||||
|
SaveCommandBuilder.taskPropertiesController.setCurrentTaskElement(taskElement);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
updateLimitingQueueDependencies(taskElement);
|
updateLimitingQueueDependencies(taskElement);
|
||||||
}
|
}
|
||||||
saveRootTask();
|
saveRootTask();
|
||||||
|
|
|
||||||
|
|
@ -826,4 +826,12 @@ public class TaskPropertiesController extends GenericForwardComposer<Component>
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TaskElement getCurrentTaskElement() {
|
||||||
|
return currentTaskElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCurrentTaskElement(TaskElement taskElement) {
|
||||||
|
currentTaskElement = taskElement;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue