// Snippit to remove an empty node from the document.
// Node node contains the node (or whole DOM document) from which you want to remove.
// String nameToRemove is the name of the Node you want to remove.


private static void removeEmptyNodes(Node node, String nameToRemove) {
NodeList nodeList = node.getChildNodes();
for(int i=0; i < nodeList.getLength(); i++){
Node childNode = nodeList.item(i);
String nodeName = childNode.getNodeName();
if(nodeName.equals(nameToRemove) && childNode.getTextContent().equals("")){
childNode.getParentNode().removeChild(childNode);
i--;

}
removeEmptyNodes(childNode, nameToRemove);
}
}

Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/WrqcLmxUG_U/11937