Ошибка XSLT с Eclipse Kepler

Я написал два файла

Первый файл - NewFile.xml (я написал в этом файле ), А второй - NewStylesheet.xsl (Хотя я и не думаю, что там являются ошибками в файле xsl, я отправил его в любом случае):

<!--?xml version="1.0" encoding="ISO-8859-1"?--> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:template match="/">
 
 
 <h2>My CD Collection</h2>
 <xsl:for-each select="catalog/cd">
 </xsl:for-each><table border="1">
 <tbody><tr bgcolor="#9acd32">
 <th>Title</th>
 <th>Artist</th>
 </tr>
 <tr>
 
 
 </tr>
 
 </tbody></table>
 
 
</xsl:template> 
</xsl:stylesheet>

Однако, когда я запускаю "XSL Transformation" Ошибка возникает:

15:55:02,242 INFO [main] Main - javax.xml.transform.TransformerFactory=null
15:55:02,243 INFO [main] Main - java.endorsed.dirs=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/lib/endorsed
15:55:02,245 INFO [main] Main - launchFile: /Users/xuxu/Documents/workspace/.metadata/.plugins/org.eclipse.wst.xsl.jaxp.launching/launch/launch.xml
15:55:02,299 ERROR [main] JAXPSAXProcessorInvoker - Could not compile stylesheet
15:55:02,300 ERROR [main] JAXPSAXProcessorInvoker - Could not compile stylesheet
javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
 at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:886)
 at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:669)
 at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformerHandler(TransformerFactoryImpl.java:961)
 at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.addStylesheet(JAXPSAXProcessorInvoker.java:136)
 at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:210)
 at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.JAXPSAXProcessorInvoker.transform(JAXPSAXProcessorInvoker.java:186)
 at org.eclipse.wst.xsl.jaxp.debug.invoker.internal.Main.main(Main.java:73)
Caused by: java.io.FileNotFoundException: /Applications/eclipse/Eclipse.app/Contents/MacOS/NewStylesheet.xsl (No such file or directory)
 at java.io.FileInputStream.open(Native Method)

Почему он говорит, что Caused by: java.io.FileNotFoundException: /Applications/eclipse/Eclipse.app/Contents/MacOS/NewStylesheet.xsl(No such file or directory)? Любая помощь здесь?

1 ответ

Текущий каталог, когда преобразование выполняется в каталоге установки Eclipse, а не в каталоге, содержащем файлы, поэтому href="NewStylesheet.xsl" ищет не в том месте.

В соответствии с этим руководством вы не помещаете в XML файл <!--?xml-stylesheet</code-->. Просто щелкните правой кнопкой мыши по файлу XSL и выберите <code>XSL Transformation.

<p> <a href="http://help.eclipse.org/helios/index.jsp?topic=%2Forg.eclipse.wst.xsl.doc%2Fhtml%2Flaunching%2Flaunching.html" rel="nofollow noreferrer" target="_blank">В этой документации</a> говорится, что вы можете выбрать XSL файл <span>и</span> XML файл. В нем также говорится, что вы можете использовать <code>Run Configuration для настройки XSL для использования в XML файле.

licensed under cc by-sa 3.0 with attribution.