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
|
||||
public <T> T runOnTransaction(IOnTransaction<T> onTransaction) {
|
||||
return onTransaction.execute();
|
||||
|
|
|
|||
|
|
@ -589,9 +589,19 @@ public class SaveCommandBuilder {
|
|||
removeEmptyConsolidation(taskElement);
|
||||
updateLimitingResourceQueueElementDates(taskElement);
|
||||
|
||||
if (taskElement.getTaskSource() != null && taskElement.getTaskSource().isNewObject())
|
||||
if (taskElement.getTaskSource() != null && taskElement.getTaskSource().isNewObject()) {
|
||||
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);
|
||||
}
|
||||
saveRootTask();
|
||||
|
|
|
|||
|
|
@ -826,4 +826,12 @@ public class TaskPropertiesController extends GenericForwardComposer<Component>
|
|||
return this;
|
||||
}
|
||||
|
||||
public TaskElement getCurrentTaskElement() {
|
||||
return currentTaskElement;
|
||||
}
|
||||
|
||||
public void setCurrentTaskElement(TaskElement taskElement) {
|
||||
currentTaskElement = taskElement;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue