Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HiveXMLSerde-布尔xpath不';t解析_Xml_Hive_Hive Serde - Fatal编程技术网

HiveXMLSerde-布尔xpath不';t解析

HiveXMLSerde-布尔xpath不';t解析,xml,hive,hive-serde,Xml,Hive,Hive Serde,我使用XMLSerde创建了一个简单的配置单元表,但在尝试解析下面的XPath时,它抛出了一个异常 我尝试将VTD和Javax处理器用于以下xpath: column.xpath.is_应用程序=/Msg/Header/Type='APP' 但它抛出以下异常: VTD: java.lang.RuntimeException:com.ximpleware.xpathevaleException:BinaryExpr无法计算到节点集 Javax.xml: 原因:javax.xml.xpath.XPa

我使用XMLSerde创建了一个简单的配置单元表,但在尝试解析下面的XPath时,它抛出了一个异常

我尝试将VTD和Javax处理器用于以下xpath:
column.xpath.is_应用程序=/Msg/Header/Type='APP'
但它抛出以下异常:

VTD:

java.lang.RuntimeException:com.ximpleware.xpathevaleException:BinaryExpr无法计算到节点集

Javax.xml:

原因:javax.xml.xpath.XPathExpressionException:com.sun.org.apache.xpath.internal.XPathException:无法将布尔值转换为节点列表

示例XML文档

<Msg>
  <Header>
     <Type>APP</Type>
  </Header>
</Msg>

应用程序

我做错了什么?

可能是您想要
/Msg/Header[Type='APP']
?@Tomalak否,但要明确的是,我添加了一个示例XML文档错误明确表示“BinaryExpr无法计算到节点集”,因此它需要一个节点集,而不是
true()
false()
。是的,我同意,但是我希望使用过这个serde的人能告诉我,他们将如何获得true/false的值(这可能意味着更改xpath或配置单元CREATE TABLE语句上的属性),或者它不受支持以及其他可能的解决方法。我在文档中看不到对它的任何引用。