我有一个添加数据的页面。和验证器
<xsl:param name="validator"/>
<xsl:variable name="errorList" select="validator:getErrorList()" />
<xsl:for-each select="$errorList">
<li>
<xsl:value-of select="." />
</li>
</xsl:for-each>
验证失败时。我返回到同一页面,想要获取错误列表。现在我收到无法将ArrayList强制转换为NodeList的错误消息。
答案 0 :(得分:0)
我遇到了同样的问题,我在java方法中通过返回org.apache.xpath.NodeSet
而不是ArrayList<String>
来解决它。 XSLT和Java代码在
Java方法
public NodeSet getNodeSet(){
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
NodeSet nodeset = new NodeSet();
nodeset.addElement(doc.createTextNode("noteOne"));
nodeset.addElement(doc.createTextNode("nodetTwo"));
System.out.println("NodeSet length: " + nodeset.getLength());
return nodeset;
}
XSLT代码
<xsl:for-each select="myclass:getNodeSet()">
<li>
<xsl:value-of select="." />
</li>
</xsl:for-each>
我希望它可以提供帮助