我已成功使用Apache FOP使用Ant任務生成PDF。 我也有Java代碼(使用Axis2的Web服務)成功地工作和生成PDF,但一直使用Ant任務,因爲它更快地正確測試我的樣式表。使用Apache FOP 1.0生成TIFF - TIFFImageEncoder4
現在我有PDF工作,我試圖滿足我正在工作的項目的第二個要求 - 即生成一個TIFF。相同的樣式表,相同的源文檔,但輸出是TIFF。
Ant任務看起來像下面:
<?xml version="1.0" encoding="UTF-8"?>
<project name="FOPAnt" default="generate-pdf-from-transform" basedir=".">
<property name="fop.home" value="D:\Dev\Java\libraries\fop-1.0-bin\fop-1.0"/>
<taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">
<classpath>
<fileset dir="${fop.home}/lib">
<include name="*.jar"/>
</fileset>
<fileset dir="${fop.home}/build">
<include name="*.jar"/>
</fileset>
</classpath>
</taskdef>
當我運行它,我得到以下錯誤:
BUILD FAILED
D:\Dev\Java\FopConverter\workspace\FOPAnt\build.xml:30: java.lang.Error: TIFFImageEncoder4
我對這個錯誤進行了Google搜索並進行了搜索,看起來好像需要在類路徑中包含JAI ImageIO工具。
反覆出現的參考,我發現是這樣的: https://issues.apache.org/bugzilla/show_bug.cgi?id=49681
我注意到jai_imageio.jar實際上已經在我的${fop.home}/build
文件夾中。 我是一個Java新手,所以糾正我,如果我錯了,但看起來像JAR已包含在我的上述ANT腳本中的類路徑中?
我已經嘗試使用webservice - 已將jai_imageio.jar添加到構建路徑,它將進入WEB-INF/lib
- 獲取相同的錯誤。 已嘗試使用該Bug線程中建議的不同顏色配置,但沒有運氣。
真的很掙扎着。這很令人沮喪,因爲PDF生成運行良好。 用這個打了一下磚牆。
編輯:經過更多的研究,我應該指出我正在使用Windows 7 x64。我將重新安裝一個x86 JRE(將嘗試JRE 7)。