2009-11-18 25 views
0

我知道如何調用java變換,並讓它根據模式驗證輸出。我想要做的是:java可以同時轉換和驗證輸入嗎?

驗證輸入並通過xsl進行轉換。

我能:

  1. 創建驗證
  2. 驗證,並把它輸出DOMResponse
  3. 傳遞DOM的變壓器。

我真正想要做的是完成這一步,而不必創建一個DOM模型;通過SAX使其全部工作。

-Dave

+0

您的問題不明確。你想'驗證輸出',但是然後'驗證和變換輸入'。你是說你想要驗證之前和之後嗎? – 2009-11-18 18:53:07

回答

1

我假定你的意思DOMResult代替DOMResponse。

Validator.validate()返回void,所以你的方法是不可行的。如果你想在內存中保存整個DOM,你可以解析XML,然後創建一個DOMSource傳遞給驗證器和Transformer。如果你不能在內存中保存整個DOM,你將不得不將文檔流兩次,一次傳送給驗證程序,一次傳送給Transformer。如果輸出來自不可回退的源(即從Web客戶端流入的文檔),則必須將本地副本存儲在磁盤上,以便您可以處理它兩次。

+0

謝謝,是的,我的意思是DOMResult。目前,我正在使用第一種在內存中保存DOM的方法。不過,我會繼續尋找,因爲它看起來像Java應該能夠做到這一點。 – Dave 2009-11-19 05:37:32