2016-04-15 58 views
0

我試圖調試的IntelliJ一個XSL和我得到這個異常:如果我跑,而不是如何在Intellij中調試XSL? URI http://xml.apache.org/xslt/java無法識別外部Java類

javax.xml.transform.TransformerException: The URI http://xml.apache.org/xslt/java does not identify an external Java class 
    at com.icl.saxon.style.StyleElement.styleError(StyleElement.java:818) 
    at com.icl.saxon.style.XSLStyleSheet.process(XSLStyleSheet.java:626) 
    at com.icl.saxon.Controller.transformDocument(Controller.java:1121) 
    at com.icl.saxon.Controller.transform(Controller.java:994) 
    at org.intellij.plugins.xsltDebugger.rt.engine.local.LocalDebugger$1.run(LocalDebugger.java:63) 
    at java.lang.Thread.run(Thread.java:745) 

調試我得到這個:

[ERROR]: Could not compile stylesheet 
[FATAL]: Cannot convert data-type 'java.util.Calendar' to 'reference'. 

是否有問題的XSL或我的設置?

回答

0

您使用的是Saxon 6.x,它現在是14年前取代的一個非常奇怪的選擇,它只支持XSLT 1.0,而XSLT 2.0(在當前Saxon版本中支持)功能更強大。

我懷疑實際的問題是您的樣式表包含使用Xalan的調用約定調用Java代碼。從XSLT到Java的調用在XSLT處理器中不兼容。

雖然我一直都在使用IntelliJ,但我從來沒有用它來進行XSLT開發,所以我不能告訴你如何選擇不同的XSLT處理器。