Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>You could use a StAX <a href="http://download.oracle.com/docs/cd/E17409_01/javase/6/docs/api/javax/xml/stream/EventFilter.html" rel="nofollow noreferrer">filter</a>:</p> <pre><code>class MyFilter implements EventFilter { private final List&lt;String&gt; filtered = Arrays.asList("SOAP-ENV:Envelope", "SOAP-ENV:Body", "ns2:createCustomer"); @Override public boolean accept(XMLEvent event) { if (event.isStartElement()) for (String elementName : filtered) if (event.asStartElement().getName().getLocalPart().equals( elementName)) return false; if (event.isEndElement()) for (String elementName : filtered) if (event.asEndElement().getName().getLocalPart().equals( elementName)) return false; return true; } } </code></pre> <p>Usage:</p> <pre><code>DOMResult result = new DOMResult(); XMLInputFactory xmlInputFactory = XMLInputFactory.newInstance(); xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, false); XMLEventReader reader = xmlInputFactory .createXMLEventReader(new StreamSource(new File("soap.xml"))); reader = xmlInputFactory.createFilteredReader(reader, new MyFilter()); TransformerFactory transFactory = TransformerFactory.newInstance(); Transformer transformer = transFactory.newTransformer(); transformer.transform(new StAXSource(reader), result); Document document = (Document) result.getNode(); </code></pre> <p><em>FYI: SOAP-ENV and ns2 are not elements; they are namespace prefixes. The document is malformed - there is missing namespace declarations &amp; the above code is not what I would write for a valid namespaced document.</em></p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload