6

我用 xml 数据库和 appache tomcat 编写了一个简单的应用程序。我工作得很好,直到我尝试在工作区打开时对其进行压缩。之后,每当我尝试立即创建 tomcat 服务器时,都会收到此错误:

ClassNotFoundException: org.apache.xml.serializer.TreeWalker

所以我离开了这个。现在我正在研究 xmlspy,试图使用 tomcat FO 引擎生成一个 pdf 文件。我安装了新的 tomcat 并在 xmlspy 中指出了这一点。现在,当我尝试在 xmlspy 中运行 fo 时,出现以下错误。

注意:serializer.jar& xalan jar 文件已经在 lib 文件夹中。

log4j:WARN No appenders could be found for logger (org.apache.fop.util.ContentHandlerFactoryRegistry).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/serializer/TreeWalker
  at org.apache.xalan.processor.TransformerFactoryImpl.newTransformer(TransformerFactoryImpl.java:823)
  at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:278)
  at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130)
  at org.apache.fop.cli.Main.startFOP(Main.java:174)
  at org.apache.fop.cli.Main.main(Main.java:205)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.serializer.TreeWalker
  at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
  ... 5 more
4

2 回答 2

7

以下帮助了我:

System.setProperty("javax.xml.transform.TransformerFactory", "com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl");
于 2019-04-23T19:47:39.507 回答
1

好的,我解决了这个问题。JRE 中的 xiling 包(如果我没记错的话)存在问题。安装了新的 JRE,现在可以正常工作了。谢谢。

于 2012-06-03T21:33:33.383 回答