2

我有一个 XML,我试图使用转换器进行转换。

我收到以下错误:

ERROR:  'no protocol:
FATAL ERROR:  '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:885)
at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:671)

我执行此转换的代码是:

Source xslInput = new StreamSource(finalStr);
        Source xmlInput = new StreamSource(str);

        Transformer transformer = factory.newTransformer(xslInput);
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        Result result = new StreamResult(bos);
        transformer.transform(xmlInput, result);
        String s = new String(bos.toByteArray());

我正在使用的 XLS 文件位于以下位置:https ://code.google.com/p/ccd-bluebutton/source/browse/trunk/Bluebutton/ccd/xslt/CCDtoBlueButtonTxt_Resource.xsl?r=103

你能告诉我哪里出错了吗?

问候, 拉迪卡

4

1 回答 1

0

看看这里

提供的解决方案包括StreamSource从路径创建一个,因此您有:

File xslInput = new File("path/to/file");
TransformerFactory transformer = TransformerFactory.newInstance();
Templates xsl = transformer.newTemplates(new StreamSource(xlsInput));

希望能帮助到你。

于 2013-10-08T13:30:30.953 回答