我想從我的GXT應用程序向jasper提供一個簡單的.gif圖像,以便生成Excel報告。將圖像參數從GWT/GXT傳遞到Jasper報告的問題
我遇到的問題是,在嘗試了很多選項後,我總是在服務器端獲取「java.lang.NullPointerException」。
我在我的碧玉報告如下代碼:
<parameter name="logo" class="java.lang.String"/>
...
<image>
<reportElement uuid="2f9765a4-f1dc-4af4-9ddf-fae1c7a3d152" x="110" y="0" width="206" height="40"/>
<imageExpression><![CDATA[$P{logo}]]></imageExpression>
</image>
和Java代碼:
FileResolver fileResolver = new FileResolver() {
@Override
public File resolveFile(String fileName) {
URI uri;
try {
uri = new URI(this.getClass().getResource(fileName).getPath());
return new File(uri.getPath());
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
};
parameters.put("logo", fileResolver.resolveFile("logo.GIF"));
我已經嘗試了幾種解決方案在那裏,並與所有這些問題。
logo.gif位於已編譯的GWT應用程序的.war文件夾中,其內容以.war格式存檔並部署在Tomcat 7.0服務器上。
希望有更多經驗的人會幫助我,讓我知道我做錯了什麼。
是否拋出了'URISyntaxException'? – enrybo 2013-03-19 11:32:34
不,這不是... – Eugen 2013-03-19 11:40:58
當你說gif被放置在編譯的GWT應用程序的war文件中,它的放置位置是什麼?在客戶端模塊(其中包含所有生成的JS文件)或服務器模塊(其中存在servlet類)?請告訴GIF的路徑 – sanbhat 2013-03-27 09:40:02