JAVA涂鴉
          關(guān)于JAVA的點(diǎn)點(diǎn)滴滴
          posts - 50,  comments - 689,  trackbacks - 0

          概述

              Jasperreport是http://www.sourceforge.net上一個(gè)優(yōu)秀的開源的報(bào)表工具,其強(qiáng)大的功能及免費(fèi)的特性得到了廣大的認(rèn)可和贊譽(yù),現(xiàn)在的最新版本是Jasperreport0.6.1。下載地址是
          https://sourceforge.net/projects/jasperreports/
              iReport是jasperreport的一個(gè)IDE的開發(fā)工具,使Jasperreport變得更易用,其最新版本是iReport0.4.0支持到Jasperreport0.6.1,和Jasperreport一樣也在不斷的更新中。下載地址是https://sourceforge.net/projects/ireport/
              關(guān)于利用這兩個(gè)工具開發(fā)Web報(bào)表,這里已經(jīng)有幾份很好的材料:
              JasperReport與iReport的配置與使用.pdf(該文檔可用于一開始入門熟悉這兩個(gè)工具)
              TheJasperReportsUltimateGuide.1.0.pdf (這個(gè)本是一份收費(fèi)的文檔,講述了Jasperreport生成的原理方面的知識(shí),如果你打算能熟練的使用Jasperreport這個(gè)報(bào)表工具,需要好好看這份英文資料的)
              http://www.javaresearch.org/forum/thread.jsp?column=316&thread=14374
          (這是我在論壇上寫的一個(gè)另一篇入門指南)---(轉(zhuǎn)貼者:無法打開此連接)

          第一次運(yùn)行

              第一次總是比較痛苦,使用這個(gè)報(bào)表工具也是,下面是我總結(jié)出的一些運(yùn)行中比較容易出現(xiàn)的問題。
          我的總結(jié)是建立在使用iReport0.4.0 + Jasperreport0.6.1)。至于這兩者的組合,我用到現(xiàn)在還是覺得比較順的。從souceforge 上下載iReport-0.4.0.zip 解壓后,要注意一點(diǎn),把你的JDK的tools.jar拷到你解壓后的iReport的lib目錄下,做中文 的pdf報(bào)表還需要把iTextAsian.jar拷到lib下,如果你用的是Oracle的數(shù)據(jù)庫(kù),那么你還需要把class12.jar也就是 Oracle的Jdbc包拷到lib下,其他數(shù)據(jù)庫(kù)也一樣。
          好了準(zhǔn)備工作做好了,運(yùn)行iReport.bat。如果比較看到UI界面,說明
          iReport成功運(yùn)行了。
           
              如果dos界面一閃而過,說明沒有成功。按以下步驟可解決該問題:
              確定系統(tǒng)安裝有JDK,而且系統(tǒng)環(huán)境設(shè)置,path里有JDK的bin目錄,并有java_home參數(shù),以下是我的幾個(gè)參數(shù)的配置情況可供參考:
          1  java_home   D:\JBuilder9\jdk1.4
          2  path        D:\JBuilder9\jdk1.4\bin;D:\Install\ant161\bin
          3  classpath    D:\iReport042\fonts;E:\Project\EssV6\webapps\WEB-INF\classes
          4  ant_home   D:\Install\ant161
          (關(guān)于上面參數(shù)設(shè)置的說明:
              iReport0.4.0要求JDK1.4以上版本,所以要注意Oracle9裝好會(huì)自動(dòng)把java環(huán)境設(shè)為Oracle自帶的JDK1.3.1,會(huì)導(dǎo)致無法運(yùn)行iReport。
              ant_home 及path中ant的設(shè)置是為了可以用ant來學(xué)習(xí)Jasperreport的例子,這些例子在Jasperreport解壓后的demo\ samples目錄下,比如在Dos環(huán)境下進(jìn)入demo\samples\jasper目錄下,輸入命令ant view 就可以看到該示例報(bào)表。
              classpath 中D:\iReport042\fonts;的設(shè)置是確保iReport里字體設(shè)置的時(shí)候能選擇一些外部字體,比如要讓PDF顯示黑體,那么把 windows下的simhei.ttf拷到D:\iReport042\fonts下,在iReport中如下設(shè)置:pdffontname為外部字 體、truetypefont 為simhei.ttf、 編碼為unicode with horizontal writing,這樣就能使用黑體了
              E:\Project\EssV6\webapps\WEB-INF\classes,classpath里的這是設(shè)置,是讓報(bào)表里一些數(shù)據(jù)要經(jīng)過特殊處理,可以用工程里的函數(shù)。

              這些設(shè)置完成后,到dos環(huán)境下的iReport目錄下,運(yùn)行iReport.bat,dos環(huán)境下的好處是如果iReport運(yùn)行失敗可以看到失敗原因,然后針對(duì)性的解決。iReport可以運(yùn)行后就是一個(gè)摸索使用,慢慢了解熟悉的過程了,直到你能做出像樣的一些報(bào)表。這個(gè)過程可以參考上面提到的
          http://www.javaresearch.org/forum/thread.jsp?column=316&thread=14374

          常見問題的解決


              具體做報(bào)表的時(shí)候會(huì)碰到許多問題,關(guān)鍵的是我們需要分析出錯(cuò)提示,根據(jù)找到解決辦法,比如你把報(bào)表放到你的工程下,比如運(yùn)行結(jié)果提示 java.io.FileNotFoundException,那么你就需要確定你的報(bào)表編譯后的文件在相應(yīng)的目錄;又比如提示 NoClassDefFoundError,那你就要看看是哪個(gè)包沒有放到你的工程下。
              需要非常強(qiáng)調(diào)的是:好好看Jasperreport自帶的例子,看懂那些例子,至少模仿一下,就能做出你想要的報(bào)表了。

          我的報(bào)表Faq

              1.java.io.FileNotFoundException
              Jasperreport自帶的webapp的例子中,用于定位.jasper報(bào)表模板文件的方法是:
                File reportFile = new File(application.getRealPath("/reports/WebappReport.jasper"));
              這個(gè)時(shí)候,如果你的web服務(wù)器是tomcat,wabapp中的文件就放在root目錄下
              那么這個(gè)報(bào)表的實(shí)際位置是:D:\Tomcat41\webapps\ROOT\reports\WebappReport.jasper
              然而當(dāng)你使用子報(bào)表時(shí),情況有所不同,首先在子報(bào)表中沒有 application 這個(gè)對(duì)象
              所以你不能使用 new File(application.getRealPath("/reports/WebappReport.jasper"))的方法來定位子報(bào)表。
              jasperreport支持三種方式定位文件,具體參看 JasperreportUtimateGuide.pdf
              這里說一下,如果你是用String的類型來關(guān)聯(lián)子報(bào)表,并且String的值是 subreport.jasper
              那么Jasperreport會(huì)到 D:\Tomcat41\webapps\ROOT\WEB-INF\classes目錄下查找是否有subreport.jasper這個(gè)文件
              知道這點(diǎn)就能采取各種辦法了

          posted on 2006-01-21 11:14 千山鳥飛絕 閱讀(2049) 評(píng)論(0)  編輯  收藏 所屬分類: Jasperreport

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          正在閱讀:



          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(35)

          隨筆檔案

          文章分類

          文章檔案

          好友的blog

          我的其他blog

          老婆的Blog

          搜索

          •  

          積分與排名

          • 積分 - 776088
          • 排名 - 56

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 绍兴市| 永清县| 砚山县| 民丰县| 北京市| 如东县| 武强县| 师宗县| 凤台县| 贵州省| 黑龙江省| 宁城县| 绵阳市| 海淀区| 东辽县| 重庆市| 沁水县| 磴口县| 商丘市| 三穗县| 舟曲县| 钦州市| 台江县| 北碚区| 休宁县| 靖江市| 奎屯市| 涞源县| 玉龙| 邛崃市| 颍上县| 阜新市| 江达县| 南汇区| 子洲县| 满洲里市| 尼木县| 育儿| 邵阳市| 舟曲县| 大洼县|