2013-10-03 36 views
1

我有以下结构的XML作为数据源:JasperReports的 - XML数据源

... 
<addresses> 
    <address> 
     <!--... first address... --> 
     <country> 
      <shortName>Belarus</shortName> 
      <name>Republic of Belarus</name> 
     </country> 
     ... 
    </address> 
    <address> 
     ... more adresses ... 
     <country> 
      <shortName>Russia</shortName> 
      <name>Russian Federation</name> 
     </country> 
     ... same fields ... 
    </address> 
</addresses> 
... 

所以我需要写JRXML模板,在地址得到最后地址。当我使用

<field name="regAddress_country_nameRu" class="java.lang.String"> 
    <fieldDescription> 
     <![CDATA[addresses/address/country/shortName]]> 
    </fieldDescription> 
</field> 

它获得“白俄罗斯” - 从价值第一地址,但如何从最后地址获取值? 我需要这样做iReport,所以也许我可以在GUI风格做?任何解决方案都适合我。

回答

1

我找到了答案。 您可以使用函数last()作为标记为here的XPATH表达式。因此,要获得拉斯地址在我的例子只需要修改表达式:

<![CDATA[addresses/address[last()]/country/shortName]]> 

它的工作对我来说,我希望这将有助于你太:)

相关问题