TreePosition tp = insertTreeModel.getTreePosition(nodeId);
GenericQtiNode parentTargetNode = (GenericQtiNode) tp.getParentTreeNode();
// insert into menu tree
parentTargetNode.insert(insertObject, tp.getChildpos());
// insert into model
parentTargetNode.insertQTIObjectAt(insertObject.getUnderlyingQTIObject(), tp.getChildpos());
// activate inserted node
menuTree.setSelectedNodeId(insertObject.getIdent());
event(ureq, menuTree, new Event(MenuTree.COMMAND_TREENODE_CLICKED));
qtiPackage.serializeQTIDocument();
}