我正在使用 saxon 从 1 个 xml 文件创建 5 个 html 文件。每当我运行代码窗口时,它都会顺利运行并创建所有必要的文件。但是,当我在 unix 中运行代码时,它导致了这个错误:
Failed to create output file file:/output1.html: Permission denied
在 stackoverflow 中搜索,我了解到它正在尝试写入根目录,这让我尝试了 setBaseOutputURI()。
我试图让 saxon 将 html 文件输出到/foo/biz/html_out,所以我写了这段代码:
String filePathUri = "file://foo/biz/html_out/";
xsltTransformer.setBaseOutputURI(filePathUri);
错误现在显示
net.sf.saxon.s9api.SaxonApiException: Cannot write to URI file://foo/output1.html (URI has an authority component)
at net.sf.saxon.s9api.XsltTransformer.transform(XsltTransformer.java:454)
我的问题是:
最佳答案
找到答案了!
我不得不使用“file:///foo/biz/html_out”作为 URI。额外的斜杠使字符串的其余部分成为路径。
关于java - Saxon 和 setBaseOutputURI 导致 "URI has an authority component"错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17675535/