如何使用XML循环ArrayList?

时间:2016-04-26 20:16:56

标签: java arrays xslt arraylist

我正在尝试:

<xsl:for-each select="//asdf/@abc">
   <span><xsl:value-of select="."/></span>
</xsl:for-each>

我在很多论坛上都看到人们可以使用.来表示数组属性,但在我的情况下它并不起作用。

要明确,我正试图避免重组DTO。你会怎么做?

谢谢!

更新

好的,我的一部分问题是关于xml的新知识。我重新构造了如何形成xml以获得适当的节点。但我仍然不知道如何xsl-ify他们。这是xml:

<wrapper>
        <node>
            <one>one</two>
            <two>two</two>
            <three>three</three>
        </node>
</wrapper>

我想做的就是显示三个值。我在尝试:

<xsl:value-of match="wrapper">
    <xsl:for-each select="node">
        <xsl:value-of select="three"/>
    </xsl:for-each>
</xsl:value-of>

但我认为这是糟糕的语法。如果有任何基本概念或简单的提示来实现这一点,任何输入都会很棒!

再次感谢。

更新

要清楚,有多个节点,包装器本身是嵌套的:

<outerwrapper>
    <wrapper>
        <node>
            <one>one</two>
            <two>two</two>
            <three>three</three>
        </node>
        <node>
            <one>one</two>
            <two>two</two>
            <three>three</three>
        </node>
    </wrapper>
</outerwrapper>

1 个答案:

答案 0 :(得分:0)

  

但我认为这是一种糟糕的语法。

是的,确实如此。这部分:

<xsl:value-of match="wrapper">

毫无意义。它应该是:

<xsl:template match="wrapper">

当然,你可以缩短整个事情:

<xsl:template match="/wrapper">
    <xsl:value-of select="node/three"/>
</xsl:template>