Ya lo he conseguido arreglar el problema estaba aqui
Código:
private static String getTagValue(String sTag, Element eElement) {
NodeList nlList = eElement.getElementsByTagName(sTag).item(0)
.getChildNodes();
Node nValue = (Node) nlList.item(0);
return nValue.getNodeValue();
}
en lugar de item(0) habia que incluir ahi un bucle e ir almacenando el valor correspondiente a la iteracion en una lista.
Ahora que ya lo tengo implementado aunque sea con la api estandar puedo mirar implementaciones mas eficientes.
Gracias por la ayuda