s9api 与带有 saxon-b 的 trax

发布于 2024-10-25 23:39:00 字数 497 浏览 1 评论 0原文

我收到了一个包含以下两者的 shell 脚本:

java -cp $(CLASSPATH) net.sf.saxon.Transform -xsl:$(CMS_ROOT)/$(TRANSFORMS_DIR)/$(LOCALE_STYLESHEET) \ -it:root

等情况表示输出。

对于我来说,如何通过 trax 指定初始转换并不明显,所以我选择了 s9api。

您会发现,将基于输出文件的序列化器传递给 XmlTransformer 不会导致将基本输出 URI 设置为该文件。我必须添加:

transformer.getUnderlyingController().setBaseOutputURI(outputFile.toURI().toString());

所有这些都表明我最好与 trax 交谈并弄清楚如何指定初始转换和我需要的任何其他内容。任何人都可以以一种或另一种方式阐明这一点吗?

I was handed a shell script containing both:

java -cp $(CLASSPATH) net.sf.saxon.Transform -xsl:$(CMS_ROOT)/$(TRANSFORMS_DIR)/$(LOCALE_STYLESHEET) \ -it:root

and other cases that an output.

It wasn't obvious to me how to specify the initial transform through trax, so I went with the s9api.

Come to discover that passing a Serializer based on an output file to an XmlTransformer does not result in setting the base output URI to that file. I had to add:

transformer.getUnderlyingController().setBaseOutputURI(outputFile.toURI().toString());

All this suggests to me that I might be better off just talking to trax and figuring out how to specify an initial transform and anything else I need. Can anyone shed light one way or the other?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天气好吗我好吗 2024-11-01 23:39:00

Saxon 9.2 及更高版本在 s9api XsltTransformer 类上有一个 setBaseOutputURI() 方法。

对于 9.4,我将根据您的建议进行更改,尽可能使用序列化程序的目标 URI 作为输出基本 URI 的默认值。

Saxon 9.2 and later have a setBaseOutputURI() method on the s9api XsltTransformer class.

For 9.4 I will make the change you suggest, of using the destination URI of the Serializer as a default for the output base URI when possible.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文