使用XSLT。样品申请

时间:2013-05-11 19:10:46

标签: java xslt

我想在Java示例应用程序中重现this示例:

http://www.w3schools.com/Xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog

这是我的示例应用:

  • input.xml - 包含w3schools网站上显示的内容
  • transform.xslt - 包含w3schools网站上显示的内容
  • output.xml - 只是空文件。将被内容填充为xslt-transformation results

所有文件都位于我的/myproject/...resource/myclasspath目录中。 [我使用getResourceAsStream])

这是示例应用程序:

public class TestMain {

    public static void main(String[] args) throws IOException, URISyntaxException, TransformerException {
        TransformerFactory factory = TransformerFactory.newInstance();

        InputStream xstlStream = TestMain.class.getResourceAsStream("transform.xslt");

        Source xslt = new StreamSource(xstlStream);
        Transformer transformer = factory.newTransformer(xslt);

        InputStream inputStream = TestMain.class.getResourceAsStream("input.xml");

        Source inputSource = new StreamSource(inputStream);

        URL url = TestMain.class.getResource("output.xml");

        transformer.transform(inputSource, new StreamResult(new File(url.toURI())));
    }

}

当我启动此应用时,它仍然没有output.xml中的任何内容。我在w3schools网站上显示的结果与此异常相同。

基本上,对于特定情况,我只想将属性添加到<data></data>标记,以获得类似<data attr=""></data>的输出。但首先从这个示例应用程序开始。

问:为什么它不起作用?

1 个答案:

答案 0 :(得分:0)

解决方案:只需查看已编译的文件夹,但不要查看源文件夹。有预期内容的输出文件。