1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | import java.io.StringReader; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathExpression; import javax.xml.xpath.XPathFactory; import org.w3c.dom.Document; import org.xml.sax.InputSource; public class Main { public static void main(String[] args) throws Exception { String xml = "<?xml version=\"1.0\" encoding=\"iso-8859-1\" ?>\r\n" + // "<REPOSITORY xmlns:LIBRARY = \"http://www.openarchives.org/LIBRARY/2.0/\" xmlns:xsi = \"http://www.w3.prg/2001/XMLSchema-instance\" xsi:schemaLocation = \"http://www.openarchives.org/LIBRARY/2.0/ http://www.openarchives.org/LIBRARY/2.0/LIBRARY-PHM.xsd\">\r\n" + // "<repository>Test</repository>\r\n" + // "<records><record>\r\n" + // "<ejemplar>\r\n" + // "<library_book:book \r\n" + // " xmlns:library_book=\"http://www.w3c.es/LIBRARY/book/\"\r\n" + // " xmlns:book=\"http://www.w3c.es/LIBRARY/book/\"\r\n" + // " xmlns:bookAssets=\"http://www.w3c.es/LIBRARY/book/\"\r\n" + // " xmlns:bookAsset=\"http://www.w3c.es/LIBRARY/book/\"\r\n" + // " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\r\n" + // " xsi:schemaLocation=\"http://www.w3c.es/LIBRARY/book/ http://www.w3c.es/LIBRARY/replacement/book.xsd\">\r\n" + // "<book:bookAssets count=\"1\">\r\n" + // "<book:bookAsset nasset=\"1\">\r\n" + // "<book:bookAsset.id>value1</book:bookAsset.id>\r\n" + // "<book:bookAsset.event>\r\n" + // "<book:bookAsset.event.id>value2</book:bookAsset.event.id>\r\n" + // "</book:bookAsset.event>\r\n" + // "</book:bookAsset>\r\n" + // "</book:bookAssets>\r\n" + // "</library_book:book>\r\n" + // "</ejemplar>\r\n" + // "</record></records>\r\n" + // "</REPOSITORY>"; // Standard of reading a XML file DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); DocumentBuilder builder; Document doc = null; XPathExpression expr = null; builder = factory.newDocumentBuilder(); doc = builder.parse(new InputSource(new StringReader(xml))); // Create a XPathFactory XPathFactory xFactory = XPathFactory.newInstance(); // Create a XPath object XPath xpath = xFactory.newXPath(); expr = xpath.compile("//*[local-name()='bookAsset.event.id']/text()"); Object result = expr.evaluate(doc, XPathConstants.STRING); System.out.println("RESULT=" + result); } } |
aW1wb3J0IGphdmEuaW8uU3RyaW5nUmVhZGVyOwoKaW1wb3J0IGphdmF4LnhtbC5wYXJzZXJzLkRvY3VtZW50QnVpbGRlcjsKaW1wb3J0IGphdmF4LnhtbC5wYXJzZXJzLkRvY3VtZW50QnVpbGRlckZhY3Rvcnk7CmltcG9ydCBqYXZheC54bWwueHBhdGguWFBhdGg7CmltcG9ydCBqYXZheC54bWwueHBhdGguWFBhdGhDb25zdGFudHM7CmltcG9ydCBqYXZheC54bWwueHBhdGguWFBhdGhFeHByZXNzaW9uOwppbXBvcnQgamF2YXgueG1sLnhwYXRoLlhQYXRoRmFjdG9yeTsKCmltcG9ydCBvcmcudzNjLmRvbS5Eb2N1bWVudDsKaW1wb3J0IG9yZy54bWwuc2F4LklucHV0U291cmNlOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgdGhyb3dzIEV4Y2VwdGlvbiB7CiAgICAgICAgU3RyaW5nIHhtbCA9ICI8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJpc28tODg1OS0xXCIgPz5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPFJFUE9TSVRPUlkgeG1sbnM6TElCUkFSWSA9IFwiaHR0cDovL3d3dy5vcGVuYXJjaGl2ZXMub3JnL0xJQlJBUlkvMi4wL1wiIHhtbG5zOnhzaSA9IFwiaHR0cDovL3d3dy53My5wcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2VcIiAgeHNpOnNjaGVtYUxvY2F0aW9uID0gXCJodHRwOi8vd3d3Lm9wZW5hcmNoaXZlcy5vcmcvTElCUkFSWS8yLjAvIGh0dHA6Ly93d3cub3BlbmFyY2hpdmVzLm9yZy9MSUJSQVJZLzIuMC9MSUJSQVJZLVBITS54c2RcIj5cclxuIiArIC8vIAogICAgICAgICAgICAgICAgIjxyZXBvc2l0b3J5PlRlc3Q8L3JlcG9zaXRvcnk+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjxyZWNvcmRzPjxyZWNvcmQ+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjxlamVtcGxhcj5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPGxpYnJhcnlfYm9vazpib29rIFxyXG4iICsgLy8gCiAgICAgICAgICAgICAgICAiICAgIHhtbG5zOmxpYnJhcnlfYm9vaz1cImh0dHA6Ly93d3cudzNjLmVzL0xJQlJBUlkvYm9vay9cIlxyXG4iICsgLy8gCiAgICAgICAgICAgICAgICAiICAgIHhtbG5zOmJvb2s9XCJodHRwOi8vd3d3LnczYy5lcy9MSUJSQVJZL2Jvb2svXCJcclxuIiArIC8vCiAgICAgICAgICAgICAgICAiICAgIHhtbG5zOmJvb2tBc3NldHM9XCJodHRwOi8vd3d3LnczYy5lcy9MSUJSQVJZL2Jvb2svXCJcclxuIiArIC8vIAogICAgICAgICAgICAgICAgIiAgICB4bWxuczpib29rQXNzZXQ9XCJodHRwOi8vd3d3LnczYy5lcy9MSUJSQVJZL2Jvb2svXCJcclxuIiArIC8vCiAgICAgICAgICAgICAgICAiICAgIHhtbG5zOnhzaT1cImh0dHA6Ly93d3cudzMub3JnLzIwMDEvWE1MU2NoZW1hLWluc3RhbmNlXCJcclxuIiArIC8vCiAgICAgICAgICAgICAgICAiICAgIHhzaTpzY2hlbWFMb2NhdGlvbj1cImh0dHA6Ly93d3cudzNjLmVzL0xJQlJBUlkvYm9vay8gaHR0cDovL3d3dy53M2MuZXMvTElCUkFSWS9yZXBsYWNlbWVudC9ib29rLnhzZFwiPlxyXG4iICsgLy8gCiAgICAgICAgICAgICAgICAiPGJvb2s6Ym9va0Fzc2V0cyBjb3VudD1cIjFcIj5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPGJvb2s6Ym9va0Fzc2V0IG5hc3NldD1cIjFcIj5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPGJvb2s6Ym9va0Fzc2V0LmlkPnZhbHVlMTwvYm9vazpib29rQXNzZXQuaWQ+XHJcbiIgKyAvLyAKICAgICAgICAgICAgICAgICI8Ym9vazpib29rQXNzZXQuZXZlbnQ+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjxib29rOmJvb2tBc3NldC5ldmVudC5pZD52YWx1ZTI8L2Jvb2s6Ym9va0Fzc2V0LmV2ZW50LmlkPlxyXG4iICsgLy8gCiAgICAgICAgICAgICAgICAiPC9ib29rOmJvb2tBc3NldC5ldmVudD5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPC9ib29rOmJvb2tBc3NldD5cclxuIiArIC8vCiAgICAgICAgICAgICAgICAiPC9ib29rOmJvb2tBc3NldHM+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjwvbGlicmFyeV9ib29rOmJvb2s+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjwvZWplbXBsYXI+XHJcbiIgKyAvLwogICAgICAgICAgICAgICAgIjwvcmVjb3JkPjwvcmVjb3Jkcz5cclxuIiArIC8vIAogICAgICAgICAgICAgICAgIjwvUkVQT1NJVE9SWT4iOwogICAgICAgIC8vIFN0YW5kYXJkIG9mIHJlYWRpbmcgYSBYTUwgZmlsZQogICAgICAgIERvY3VtZW50QnVpbGRlckZhY3RvcnkgZmFjdG9yeSA9IERvY3VtZW50QnVpbGRlckZhY3RvcnkubmV3SW5zdGFuY2UoKTsKICAgICAgICBmYWN0b3J5LnNldE5hbWVzcGFjZUF3YXJlKHRydWUpOwogICAgICAgIERvY3VtZW50QnVpbGRlciBidWlsZGVyOwogICAgICAgIERvY3VtZW50IGRvYyA9IG51bGw7CiAgICAgICAgWFBhdGhFeHByZXNzaW9uIGV4cHIgPSBudWxsOwogICAgICAgIGJ1aWxkZXIgPSBmYWN0b3J5Lm5ld0RvY3VtZW50QnVpbGRlcigpOwogICAgICAgIGRvYyA9IGJ1aWxkZXIucGFyc2UobmV3IElucHV0U291cmNlKG5ldyBTdHJpbmdSZWFkZXIoeG1sKSkpOwogICAgICAgIC8vIENyZWF0ZSBhIFhQYXRoRmFjdG9yeQogICAgICAgIFhQYXRoRmFjdG9yeSB4RmFjdG9yeSA9IFhQYXRoRmFjdG9yeS5uZXdJbnN0YW5jZSgpOwogICAgICAgIC8vIENyZWF0ZSBhIFhQYXRoIG9iamVjdAogICAgICAgIFhQYXRoIHhwYXRoID0geEZhY3RvcnkubmV3WFBhdGgoKTsKICAgICAgICBleHByID0geHBhdGguY29tcGlsZSgiLy8qW2xvY2FsLW5hbWUoKT0nYm9va0Fzc2V0LmV2ZW50LmlkJ10vdGV4dCgpIik7CiAgICAgICAgT2JqZWN0IHJlc3VsdCA9IGV4cHIuZXZhbHVhdGUoZG9jLCBYUGF0aENvbnN0YW50cy5TVFJJTkcpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiUkVTVUxUPSIgKyByZXN1bHQpOwogICAgfQp9Cg==
-
upload with new input
-
result: Success time: 0.1s memory: 246144 kB returned value: 0
RESULT=value2


