gpt4 book ai didi

java - Xpath - 评估函数返回 javax.xml.transform.TransformerException

转载 作者:行者123 更新时间:2023-11-30 08:38:56 28 4
gpt4 key购买 nike

这是我第一次使用 XPath,我正在尝试查询一个非常基本的示例。

    String xml = "<resp><status>good</status><msg>hi</msg></resp>";

XPathFactory xpathFactory = XPathFactory.newInstance();
javax.xml.xpath.XPath xpath = xpathFactory.newXPath();

InputSource source = new InputSource(new StringReader(xml));

String status = "";
try {
status = (String) xpath.evaluate("//resp/status", source,XPathConstants.STRING);
} catch (Exception e) {
e.printStackTrace();
}

System.out.println("status=" + status);

我收到以下异常:

javax.xml.transform.TransformerException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.XPath.execute(Unknown Source) at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.eval(Unknown Source) at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.evaluate(Unknown Source) at Heandlers.HTTP.x(HTTP.java:74) at Views.Main.main(Main.java:15) Caused by: java.lang.RuntimeException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.axes.NodeSequence.setRoot(Unknown Source) at com.sun.org.apache.xpath.internal.axes.LocPathIterator.execute(Unknown Source) ... 5 more --------- java.lang.RuntimeException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.axes.NodeSequence.setRoot(Unknown Source) at com.sun.org.apache.xpath.internal.axes.LocPathIterator.execute(Unknown Source) at com.sun.org.apache.xpath.internal.XPath.execute(Unknown Source) at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.eval(Unknown Source) at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.evaluate(Unknown Source) at Heandlers.HTTP.x(HTTP.java:74) at Views.Main.main(Main.java:15) --------------- linked to ------------------ javax.xml.xpath.XPathExpressionException: javax.xml.transform.TransformerException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.evaluate(Unknown Source) at Heandlers.HTTP.x(HTTP.java:74) at Views.Main.main(Main.java:15) Caused by: javax.xml.transform.TransformerException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.XPath.execute(Unknown Source) at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.eval(Unknown Source) ... 3 more Caused by: java.lang.RuntimeException: Unable to evaluate expression using this context at com.sun.org.apache.xpath.internal.axes.NodeSequence.setRoot(Unknown Source) at com.sun.org.apache.xpath.internal.axes.LocPathIterator.execute(Unknown Source) ... 5 more status=

有什么建议吗?

最佳答案

听起来您正在使用无效的 InputSource,例如org.w3c.css.sac.InputSource。确保您已导入 org.xml.sax.InputSource

关于java - Xpath - 评估函数返回 javax.xml.transform.TransformerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36345001/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com