用Java增加一个XSLT功能

ZDNet软件频道 时间:2003-04-30 作者:翻译:Java研究组织-barney |  我要评论()
本文关键词:javatips
有些转换使用普通的XSLT功能是没法做到的。这种情况下,你可以使用Apache Xalan XSLT引擎和自定义的Java扩展在你的样式表里加入新函数。
本文译自Builder.com,未经许可请勿转载开发XSLT解决方案可以很简单,只需要少量的工作执行转换。但是,有时候源文档和目标文档是比较复杂的,不同的。很多这种情况下,复杂的转换是通过等价的XSLT复杂转换实现的。

有些转换使用普通的XSLT功能是没法做到的。这种情况下,你可以使用Apache Xalan XSLT引擎和自定义的Java扩展在你的样式表里加入新函数。

一个例子

让我们从测试一个简单的例子开始吧。假设你正在转换一个XML文档,你需要在转换过程中执行很多高级的操作。你也许需要参考历遍一个数据库中的表或者访问一个Web服务。这些函数很简单,但是XSLT没有直接提供。

我们假设:有了一个简单的定购XML文档,如清单1所示。那么问题是:我们的转换过程需要翻转Description元素中的字符。也许,它不符合现实世界中的情况,但是它可以演示了。

清单1:order.xml
<Order>
  <Items>
    <Item>
      <SKU>19723</SKU>
      <Description>Mechawidget Flange</Description>
    </Item>
    <Item>
      <SKU>87123</SKU>
      <Description>Hydrafluant Magnet</Description>
    </Item>
    <Item>
      <SKU>662354</SKU>
      <Description>Generic Rubber Seal</Description>
    </Item>
    <Item>
      <SKU>967623</SKU>
      <Description>Fluxating Plasmatron</Description>
    </Item>
  </Items>
</Order>


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134