package xpathCheck; import org.dom4j.Document; import org.dom4j.io.SAXReader; public class XPathCheck { public static void main(String[] args) { boolean xmlMissingTagYieldsNullValue = false; // KETTLE_XML_MISSING_TAG_YIELDS_NULL_VALUE=N を模す※デフォルト String filePath = "D:\\pleiades\\sampledata\\Sample.xml"; String xpathExpression = "count(/root/employees/employee)"; SAXReader rdr = new SAXReader() ; String nodeValue; try { Document doc = rdr.read(filePath); // KETTLE_XML_MISSING_TAG_YIELDS_NULL_VALUE 問題処理の再現 if(xmlMissingTagYieldsNullValue) { nodeValue = doc.selectSingleNode(xpathExpression) != null ? doc.valueOf(xpathExpression) : null; } else { nodeValue = doc.valueOf(xpathExpression); } System.out.println("XPath: " + xpathExpression); System.out.println("Node Value: " + nodeValue); } catch (Exception e) { e.printStackTrace(); } } }