程序的路径
D:\workspace\Converter\src\jp\co\zhou\wu\my\app\converter\domain\logic\concrete\PdfImpl.java
BAT文件的路径
C:\Program Files\zhou\wu\Service\bin\my\fop.bat错误信息
java.lang.NoClassDefFoundError: org/apache/fop/cli/Main
Caused by: java.lang.ClassNotFoundException: org.apache.fop.cli.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: org.apache.fop.cli.Main. Program will exit.
Exception in thread "main" 感觉是环境没配对,因为另一个文件用bat执行java程序也是报错说main函数找不到。
不知道为什么,求解惑啊!
D:\workspace\Converter\src\jp\co\zhou\wu\my\app\converter\domain\logic\concrete\PdfImpl.java
BAT文件的路径
C:\Program Files\zhou\wu\Service\bin\my\fop.bat错误信息
java.lang.NoClassDefFoundError: org/apache/fop/cli/Main
Caused by: java.lang.ClassNotFoundException: org.apache.fop.cli.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: org.apache.fop.cli.Main. Program will exit.
Exception in thread "main" 感觉是环境没配对,因为另一个文件用bat执行java程序也是报错说main函数找不到。
不知道为什么,求解惑啊!
是说没有找到类, 不是没有找到方法
应该引入这个包 , 需要在bat里的CLASSPATH中加入org.apache.fop.cli.Main类所在的jar包
但是有新问题了、
这个似乎涉及到fop的知识了
org.apache.fop.apps.FOPException: Failed to resolve font with embed-url 'conf/font/MSGOTHIC.TTC'
at org.apache.fop.util.LogUtil.handleError(LogUtil.java:38)
at org.apache.fop.fonts.FontInfoConfigurator.getFontInfo(FontInfoConfigurator.java:212)
at org.apache.fop.fonts.FontInfoConfigurator.addFonts(FontInfoConfigurator.java:168)
at org.apache.fop.fonts.FontInfoConfigurator.configure(FontInfoConfigurator.java:100)
at org.apache.fop.render.PrintRendererConfigurator.buildFontList(PrintRendererConfigurator.java:106)
at org.apache.fop.render.PrintRendererConfigurator.setupFontInfo(PrintRendererConfigurator.java:129)
at org.apache.fop.render.intermediate.IFUtil.setupFonts(IFUtil.java:165)
at org.apache.fop.render.intermediate.IFRenderer.setupFontInfo(IFRenderer.java:181)
at org.apache.fop.area.RenderPagesModel.<init>(RenderPagesModel.java:73)
at org.apache.fop.area.AreaTreeHandler.setupModel(AreaTreeHandler.java:130)
at org.apache.fop.area.AreaTreeHandler.<init>(AreaTreeHandler.java:102)
at org.apache.fop.render.RendererFactory.createFOEventHandler(RendererFactory.java:359)
at org.apache.fop.fo.FOTreeBuilder.<init>(FOTreeBuilder.java:105)
at org.apache.fop.apps.Fop.createDefaultHandler(Fop.java:101)
at org.apache.fop.apps.Fop.<init>(Fop.java:79)
at org.apache.fop.apps.FopFactory.newFop(FopFactory.java:271)
at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:109)
at org.apache.fop.cli.Main.startFOP(Main.java:174)
at org.apache.fop.cli.Main.main(Main.java:205)
<font metrics-url="conf/font/MS Gothic.xml" embed-url="conf/font/MSGOTHIC.TTC">
查了一下,说此处font 标签内的metrics-url与embed-url为绝对路径或者相对路径,如果为相对路径<font-base>./</font-base>必须指定,否则报错。
但是<font-base>./</font-base>写在哪里啊
<strict-configuration>true</strict-configuration> <!-- Strict FO validation -->
<strict-validation>true</strict-validation> <!-- Base URL for resolving relative URLs -->
<base>./</base> <!-- Font Base URL for resolving relative font URLs -->
<font-base>./</font-base>......
javax.xml.transform.TransformerException: org.apache.fop.fo.ValidationException: Document is empty (something might be wrong with your XSLT stylesheet).
at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302)
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)
我之前遇到过一个其他的关于fop的问题:
http://www.crifan.com/fop_error_validationexception_block_not_a_valid_child_of_fo_root/你这里的,看提示是Document is empty,所以看起来估计是xml文件中,没有写合适的内容,导致fop检验出错。
不过具体是何问题,需要你把具体的xml文件内容都贴出来,才好帮你。
网址打不开,回头看
我现在是pdf已经出来了,但是不全
因为是6个xml使用同一个xsl变换,但是有2个xml没变换成功,出来的pdf没数据,我看了一下,这2个xml都有table,估计是table没变换好,我在继续看呢