Object state = null;
if (dragNodeKey != null) { // Drag from this or other tree
TreeNode parentNode = draggedNode.getParent();
// 1. remove node from tree
state = srcTree.removeNode(dragNodeKey);
// 2. add parent for rerender
Object rowKey = srcTree.getTreeNodeRowKey(parentNode);
srcTree.addRequestKey(rowKey);
if (dropEvent.getDraggableSource() instanceof UIDragSupport) {
selectedNodeChildren.remove(draggedNode);