Tenía el mismo problema, pero ninguna de las respuestas resolvió la pregunta.
Estaba tratando de consultar los Nodos de operación DENTRO del nodo portType de un WSDL, dado que el nodo vinculante también tiene operaciones.
<portType name="MyService">
<operation name="op1">
<input wsam:Action="http://somedomain.org/MyService/MyServiceRequest" message="tns:MyServiceRequest"/>
<output wsam:Action="http://somedomain.org/MyService/MyServiceResponse" message="tns:MyServiceResponse"/>
</operation>
...
</portType>
<binding name="MyServicePortBinding" type="tns:MyService">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="op1">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
lo resolvió mediante la búsqueda de los padres (portTypes) y acaba de lanzarlo desde el nodo de elemento y utilizando el método arriba mencionado.
Node portType = document.getElementsByTagName("portType").item(0);
NodeList operations = ((Element)portType).getElementsByTagName("operation");
Lo que me dio como resultado los elementos de operación INSIDE portType Node only.
Es getElement ** s ** ByTagName. – stefanw
Gracias por señalarlo – Fazal
Me temo que no está bien - este método devuelve elementos descendientes, por ejemplo 'getElementsByTagName (" nombre ")' ejecutado en el elemento de persona 'Element' que representa devolverá 2 nodos. –