我想添加一個功能來捕獲xsl:消息輸出到現有的應用程序。找到簡單的參考將messageListener添加到轉換器,但我的應用程序由一個saxTransformerFactory.newTemplates()生成一個模板對象,然後用於創建一個xmlfilter,「XMLFilter xmlFilter = saxTransformerFactory.newXMLFilter(templates);」。如何在我的類中實現「實現MessageListener」?我可以將messageListener添加到xslt模板對象嗎?
2
A
回答
1
TransformerFactory和相關類是用於調用XSLT處理器的與產品無關的API(稱爲JAXP,或者有時稱爲Trax)。 MessageListener特定於Saxon產品。您可以使用Saxon的Controller對象註冊MessageListener,該對象是JAXP Transformer的Saxon實現。如果您有JAXP Transformer,則需要將Transformer轉換爲Saxon控制器,然後調用setMessageListener。在Saxon中使用XMLFilter時,XMLFilter將成爲net.sf.saxon.Filter的一個實例。這有一個getTransformer()方法,它返回Controller。
1
正如邁克爾·凱解釋,但隨後在Java代碼中;-)更
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(xslt);
if (transformer instanceof TransformerImpl) {
//saxon specific
TransformerImpl timpl = (TransformerImpl) transformer;
XsltTransformer saxonTransformer = timpl.getUnderlyingXsltTransformer();
saxonTransformer.setMessageListener(...your listener...);
}
相關問題
- 1. 我可以添加虛擬對象到我的模型嗎?
- 2. 您可以將模型添加到Marionette.Application對象嗎?
- 3. 我可以將版本添加到YAML Swagger對象嗎?
- 4. 我可以將實例方法添加到Python「模擬」對象嗎?
- 5. 我可以將對象添加到JavaScript中的另一個對象嗎?
- 6. 我可以添加一個jQuery的動畫到updateprogress模板嗎?
- 7. 可以將Web UI模板添加到Dart庫包中嗎?
- 8. 我可以將IBActions添加到NSArray嗎?
- 9. 我可以將JInternalFrames添加到JPanel嗎?
- 10. 我可以將舊的對象庫添加到我的Excel 2013中嗎?
- 11. 一旦定義它,我可以添加到JavaScript對象嗎?
- 12. 可以將對象添加到VB.net中的結構中嗎?
- 13. 有什麼辦法可以將MouseListener添加到Graphic對象嗎?
- 14. 我可以將現有數據模板添加到控件的資源嗎?
- 15. 動態添加腳本到我的模板 - 我可以做到嗎?
- 16. 是否可以將XSLT模板添加到兩個不同的節點?
- 17. 我可以將音樂庫添加到Xcode iOS模擬器嗎?
- 18. 我可以將非持久性字段添加到模型嗎?
- 19. 我可以將聲音添加到Xcode的Storyboard模式嗎?
- 20. 我可以將模式屬性添加到textarea嗎?
- 21. 我可以在PyQt中將對象附加到QListWidgetItems嗎?
- 22. 將模型實例對象添加到模板
- 23. 我可以將xslt鏈接到另一個xslt嗎?
- 24. 我可以將reCaptcha添加到使用XSLT構建的表單嗎?
- 25. 我可以在django模板標籤中添加標籤嗎?
- 26. 我可以將XSLT轉換爲XML嗎?
- 27. 我可以添加對象字段到SPItem,附加某種對象到項目?
- 28. 我可以簡化以下模板嗎?
- 29. 將AdSense添加到App Engine可以嗎?
- 30. 可以將JLabel添加到JTextArea嗎?
其實我XMLFilter是不會出現有getTranformer org.xml.sax.XMLFilter的一個實例()方法。我想我必須活着而不會捕獲xsl:消息! – user2324378 2013-04-30 09:19:17
org.xml.sax.XMLFilter是一個接口,所以實現這個接口的任何東西都將屬於一個具體的類。 – 2013-05-01 07:40:05