你的错误很奇怪,我从来没有遇到过,你的jdk是什么版本???
jaxp是多少版本的?我的例子:import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.stream.*;第一种:
/*
try{
     File xmlFile = new File("C:\\xmltest\\tiezi.xml");
     File xsltFile = new File("C:\\xmltest\\tiezi.xsl");
     javax.xml.transform.Source xmlSource =
         new javax.xml.transform.stream.StreamSource(xmlFile);
     javax.xml.transform.Source xsltSource =
         new javax.xml.transform.stream.StreamSource(xsltFile);
     javax.xml.transform.Result result =
         new javax.xml.transform.stream.StreamResult(System.out);     //创建一个TransformerFactory 实例
     javax.xml.transform.TransformerFactory transFact =
         javax.xml.transform.TransformerFactory.newInstance();
     javax.xml.transform.Transformer trans =
         transFact.newTransformer(xsltSource);
     trans.transform(xmlSource, result);    return "转换成功了!!!";
   }
 catch(Exception e){
   System.out.println("出错");
   return  e.toString()+"出错了:(";
 }
*/
第二种:
/*  try {
  TransformerFactory transformerFactory =
                        TransformerFactory.newInstance();       StreamSource source = new StreamSource("C:\\xmltest\\tiezi.xml");
       StreamResult result = new StreamResult("C:\\xmltest\\result.xml");
       StreamSource style = new StreamSource("C:\\xmltest\\tiezi.xsl");       Transformer transformer =
                     transformerFactory.newTransformer(style);       transformer.transform(source, result);
return "OK";
    } catch (Exception e) {
             e.printStackTrace();
             return "Failed";
    } 
*/ 

解决方案 »

  1.   

    问题可能出在TransformerFactory.newInstance();看看这篇文章,也许对你有帮助:http://www.hibernate.org.cn:8000/137.html
      

  2.   

    pigo() :
    你好,用你的方法还是出错,
    用你的第一个方法是抛出“出错”信息;
    用第二个方法抛出:
    org.xml.sax.SAXParseException:XML生命可能只能从实体开始是什么原因?
      

  3.   


    对了。我的程序用的jdom是b9,
    b9和b8有很多不一样的地方,
    有些方法连返回类型都已经改变了。你换成jdom的beta9版本吧。
      

  4.   

    首先我问一下, 你是不是存在一个硬盘是 G 盘?然后, 你是不是通过一个快捷方式来运行 Tomcat 的?
      

  5.   

    存在一个硬盘是 G 盘
    是通过一个快捷方式来运行 Tomcat 的另外,我在用main函数运行程序也是一样的结果!
      

  6.   

    glassprogrammer() :起始设置到哪里??改如何设置?
    原本的是:
    "C:\Documents and Settings\wengsl\「开始」菜单\程序\Apache Tomcat 4.1"
      

  7.   

    D:\JBuilder9\jdk1.4\bin\javaw -classpath "G:\myprogram\jbsoft\javasoft\classes;D:\JBuilder9\jdk1.4\demo\jfc\Java2D\Java2Demo.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\dnsns.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\ldapsec.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\localedata.jar;D:\JBuilder9\jdk1.4\jre\lib\ext\sunjce_provider.jar;D:\JBuilder9\jdk1.4\jre\lib\im\indicim.jar;D:\JBuilder9\jdk1.4\lib\dt.jar;D:\JBuilder9\jdk1.4\lib\htmlconverter.jar;D:\JBuilder9\jdk1.4\lib\tools.jar"  javasoft.xml_result1 
    javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:767)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    Caused by: javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:946)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    ... 2 more
    Caused by: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:942)
    ... 3 more
    Caused by: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1092)
    at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:487)
    at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    ... 3 more
    ---------
    javax.xml.transform.TransformerConfigurationException: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:946)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    Caused by: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:942)
    ... 3 more
    Caused by: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1092)
    at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:487)
    at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    ... 3 more
    ---------
    javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:942)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    Caused by: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1092)
    at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:487)
    at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    ... 3 more
    ---------
    org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1092)
    at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:487)
    at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    ---------
    org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    ---------
    javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:942)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    Caused by: org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。 at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    ... 3 more
    ---------
    org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:934)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)
    ---------
    org.xml.sax.SAXParseException: XML 声明可能只能从实体开始。
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182)
    at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170)
    at org.apache.crimson.parser.Parser2.maybePI(Parser2.java:966)
    at org.apache.crimson.parser.Parser2.maybeMisc(Parser2.java:1092)
    (TransformerFactoryImpl.java:934)
    at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:750)
    at javasoft.xml_result1.makehtml(xml_result1.java:28)
    at javasoft.xml_result1.main(xml_result1.java:45)