java可以同时转换和验证输入吗?

时间:2009-11-18 18:43:53

标签: java xml xslt

我知道如何调用java Transform并让它根据模式验证输出。我想做的是:

验证输入并通过xsl转换它。

我可以:

  1. 创建验证器
  2. 验证并输出DOMResponse
  3. 将DOM传递给Transformer。
  4. 我真正想做的是一步完成,而不必创建DOM模型;通过SAX完成所有工作。

    -Dave

1 个答案:

答案 0 :(得分:1)

我认为你的意思是DOMResult而不是DOMResponse。

Validator.validate()返回void,因此您的方法不可行。如果要将整个DOM保存在内存中,可以解析XML,然后创建一个DOMSource以传递给验证器和Transformer。如果您无法将整个DOM保存在内存中,则必须将文档流式传输两次,一次传输到验证器,一次传输到Transformer。如果输出来自不可重绕的源(即从Web客户端流入的文档),则必须将本地副本存储在磁盘上,以便您可以对其进行两次处理。