- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用 Fop-2.1 从 xml 和 xsl-fo 生成 PDF 文件,并根据 https://xmlgraphics.apache.org/fop/2.1/configuration.html 花了很多时间来配置 fop 配置文件(我使用的是西里尔字体)。
在命令行中测试它,它工作正常:
fop -c conf.xml -xml xml -xsl xsl -pdf pdf
接下来我需要在 Java Web 应用程序中做同样的事情。应用程序是多模块 Maven 项目。
当我尝试使用位于服务模块的资源文件夹中的配置文件获取 FopFactory 实例时,我卡住了,这是一个项目树
service-module
src/main/resources
conf/config.xml
网络模块
如何使用我的配置文件创建 FopFactory 实例?
首先我这样做了:
FopFactory fopFactory = fopFactory = FopFactory.newInstance(
new File("/full/path/../resources/conf/config.xml"));
在这个项目中我们使用EJB容器,当然
An enterprise bean must not use the java.io package to attempt to access files and directories in the file system.
那我试试这个
DefaultConfigurationBuilder cfgBuilder = new DefaultConfigurationBuilder();
Configuration cfg = null;
try {
cfg = cfgBuilder.build(getClass().getClassLoader().getResourceAsStream("conf/config.xml"));
} catch (Exception e) {
e.printStackTrace();
}
FopFactoryBuilder factoryBuilder = new FopFactoryBuilder(URI.create("/")).setConfiguration(cfg);
FopFactory fopFactory = factoryBuilder.build();
位于服务模块中的 PDF 生成应用程序。我需要在 baseURI 中设置什么?
fopFactoryBuilder = new FopFactoryBuilder(baseURI).setConfiguration(cfg);
最佳答案
我遇到了类似的问题并创建了一个工作演示
这里是:
https://github.com/riskop/fop_test
另见:
关于java - 如何将 Fop 配置文件加载到 FopFactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40400638/
我使用了 apache FOP 2.0 jar 和下面的代码 FopFactory fopFactory = FopFactory.newInstance(new File(".")); 并出现以
最近我在生成 PDF 时遇到问题,某些字形用“#”表示。我制作了自己的 fop 配置文件并尝试了以下操作: fopFactory.setUserConfig(new File("path/to/con
我目前正在使用 FOP 嵌入使用驱动程序如下 Driver driver = new Driver(); driver.setRenderer(Driver.RENDER_PDF); driver
我正在使用 Fop-2.1 从 xml 和 xsl-fo 生成 PDF 文件,并根据 https://xmlgraphics.apache.org/fop/2.1/configuration.html
我正在使用 struts 2,我正尝试使用 fop 从 xml 和 xsl 创建一个 pdf 文件。我在这两个 url http://svn.apache.org/viewvc/xmlgraphics
我收到以下错误: Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method
这段代码: WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(is); FOSettings foSetting
I am using Apache fop-0.95 to build pdf files from a JSP web application on IBM iSeries V5R4 using W
我是一名优秀的程序员,十分优秀!