Saxon:result-document() 函数失败且没有错误消息
Saxon: result-document() function fails without error message
我正在从批处理文件调用 Saxon (9.6 HE):
Transform -t -s:"in.xml" -xsl:"ChangeFileName.xsl" -o:"changefilename.txt" 1>>convert.log 2>&1
命令1>>convert.log 2>&1
将Saxon的标准错误输出发送到文件convert.log
。
Transform 调用输出 2 个文本文件的 XSLT:
<xsl:template match="manual">
<xsl:result-document method="text" href="version.txt">
<xsl:text> </xsl:text><xsl:value-of select="/manual/bookVariables/Variable[@Name='USR_Manual_Version']/@Value"/><xsl:text> </xsl:text>
</xsl:result-document>
<xsl:result-document method="text" href="state.txt">
<xsl:text> </xsl:text><xsl:value-of select="/manual/bookVariables/Variable[@Name='USR_Manual_State']/@Value"/>
</xsl:result-document>
</xsl:template>
当我 运行 从我自己的用户帐户进行转换时,这有效,但当我使用其他帐户时失败:未创建文本文件 state.txt
和 version.txt
。
我正在尝试解决此问题,但 Saxon 没有输出任何错误消息。我的日志文件只包含
Writing to file:/Z:/version.txt
没有迹象表明写入失败或失败的原因。
更糟糕的是,当我 运行 直接从命令行 window 转换命令时,它成功了。
如何从 Saxon 中获取更详细的错误信息?
棘手。您不太可能从 Saxon 获得更多信息,因为 Saxon 可能不知道文件尚未成功写入。通常遇到这样的问题,文件确实存在,但它们不在您期望的位置。
一个建议:尝试 运行 -T 选项。生成的跟踪应该告诉您转换 运行(显然成功)是否完成,或者它是否在某个阶段过早中断。
另一个建议:尝试在 href 属性中使用绝对 URI(例如 file:///x/y/z.txt)。
关于Windows文件系统,我已经忘记了大部分,但是有没有可能在失败的帐户下,盘符Z被映射到意想不到的地方?
我正在从批处理文件调用 Saxon (9.6 HE):
Transform -t -s:"in.xml" -xsl:"ChangeFileName.xsl" -o:"changefilename.txt" 1>>convert.log 2>&1
命令1>>convert.log 2>&1
将Saxon的标准错误输出发送到文件convert.log
。
Transform 调用输出 2 个文本文件的 XSLT:
<xsl:template match="manual">
<xsl:result-document method="text" href="version.txt">
<xsl:text> </xsl:text><xsl:value-of select="/manual/bookVariables/Variable[@Name='USR_Manual_Version']/@Value"/><xsl:text> </xsl:text>
</xsl:result-document>
<xsl:result-document method="text" href="state.txt">
<xsl:text> </xsl:text><xsl:value-of select="/manual/bookVariables/Variable[@Name='USR_Manual_State']/@Value"/>
</xsl:result-document>
</xsl:template>
当我 运行 从我自己的用户帐户进行转换时,这有效,但当我使用其他帐户时失败:未创建文本文件 state.txt
和 version.txt
。
我正在尝试解决此问题,但 Saxon 没有输出任何错误消息。我的日志文件只包含
Writing to file:/Z:/version.txt
没有迹象表明写入失败或失败的原因。
更糟糕的是,当我 运行 直接从命令行 window 转换命令时,它成功了。
如何从 Saxon 中获取更详细的错误信息?
棘手。您不太可能从 Saxon 获得更多信息,因为 Saxon 可能不知道文件尚未成功写入。通常遇到这样的问题,文件确实存在,但它们不在您期望的位置。
一个建议:尝试 运行 -T 选项。生成的跟踪应该告诉您转换 运行(显然成功)是否完成,或者它是否在某个阶段过早中断。
另一个建议:尝试在 href 属性中使用绝对 URI(例如 file:///x/y/z.txt)。
关于Windows文件系统,我已经忘记了大部分,但是有没有可能在失败的帐户下,盘符Z被映射到意想不到的地方?