var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-20738293-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script')"/>
<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jutleo
    歡迎走進(jìn)有風(fēng)的地方~~
    posts - 63,  comments - 279,  trackbacks - 0

        關(guān)于怎么整合網(wǎng)上到處都是例子、apache也有比較詳細(xì)的例子說明,我是參考這篇文章的http://www.tkk7.com/sterning/archive/2008/01/02/172317.html我使用他的源碼HTML預(yù)覽時還是不能正常顯示,images/px(網(wǎng)上的一種解決方案)都有還是不能正常顯示,無奈之下只有查看源代碼了。
    Struts2對通過JasperReportsResult.java類的doExecute方法對JasperReport進(jìn)行了簡單的整合,這個方法對JasperReport的API簡單的包裝(車輪理論^_^)

    JasperReport jasperReport = (JasperReport) JRLoader.loadObject(systemId);
                jasperPrint 
    = JasperFillManager.fillReport(jasperReport, parameters, stackDataSource);
    其中systemId是這樣來的
    String systemId = servletContext.getRealPath(finalLocation);
    也就是導(dǎo)入的是Jasper文件的絕對路徑,Struts2直接使用的jasper文件(編譯報表很耗時!不推薦使用jrxml文件)
    <param name="location">/jasper/notification.jasper</param>
    至于Action的代碼就不必寫的那么復(fù)雜了
    package org.bulktree.jasper;

    import net.sf.jasperreports.engine.JRDataSource;
    import net.sf.jasperreports.engine.JREmptyDataSource;
    import net.sf.jasperreports.engine.JasperCompileManager;

    import org.apache.struts2.ServletActionContext;

    import com.opensymphony.xwork2.ActionSupport;

    /**
     * 
     * @author bulktree Email: laoshulin@gmail.com @ Nov 26, 2008
     */
    public class JasperAction extends ActionSupport {

        private JRDataSource reportDataSource;

        @Override
        public String execute() throws Exception {
            
            //定義一個自定義的數(shù)據(jù)源

            reportDataSource = new JREmptyDataSource();
            
            /*編譯很耗時,Ireport可以編譯jrxml文件可以減少程序運(yùn)行的壓力
             * 下面一段代碼可以不寫直接使用Ireport編譯好的jasper文件
             * 
             */

    /*        ServletActionContext.getRequest().setAttribute("name", "LAOSHULIN");
            String path = ServletActionContext.getServletContext().getRealPath("/jasper");
            System.out.println(path);
            String sourceFileName = path + "\\" + "CarInstance.jrxml";
            String destFileName = path + "\\" + "CarInstance.jasper";

            JasperCompileManager.compileReportToFile(sourceFileName, destFileName);*/

            return SUCCESS;
        }

        public JRDataSource getReportDataSource() {
            return reportDataSource;
        }
    }
    被注釋的代碼只是指定jrxml文件和jasper文件的路徑及編譯過程,現(xiàn)實(shí)中不建議使用,關(guān)于jasperReport的各種強(qiáng)大功能本人會在項(xiàng)目結(jié)束后進(jìn)行整理發(fā)布。
        繼續(xù)吧!采用HTML格式預(yù)覽時,莫名的出現(xiàn)一些圖片的xx,但是我們并沒有使用圖片啊,關(guān)于這個為什么網(wǎng)上的資料很詳細(xì)本人只是解讀一下Struts2這個插件的源碼最終解決圖片顯示問題
    protected String imageServletUrl = "\images\";

     exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP, imagesMap);
                    exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, request.getContextPath() 
    + imageServletUrl);
    現(xiàn)在明白為什么要新建一個images目錄復(fù)制象素圖片了吧!
    對于HTML預(yù)覽時右擊查看源代碼出現(xiàn)的是相對路徑,但是大多數(shù)情況下根據(jù)生成的路徑不能指定到px圖片,不知道是不是這個插件包本身的問題還是其它的原因,總之先做出效果來、修改上句換成絕對路徑吧!
    exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, servletContext.getRealPath(File.separator) + imageServletUrl);
    這個圖片xx問題自然就會解決了。 
           好久都沒寫文章了,感覺思路混亂不知道寫了些什么,大家要是有不明白的可直接提出來。
    posted on 2008-12-01 12:46 凌晨風(fēng) 閱讀(6081) 評論(6)  編輯  收藏 所屬分類: Java學(xué)習(xí)筆記

    FeedBack:
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2008-12-03 14:53 | zhanghuang
    請教一個問題:柱狀圖html導(dǎo)出時,無論怎么輸入過濾條件,為什么數(shù)據(jù)總是第一次顯示的。pdf顯示就正常。
    希望幫我解答下,zhanghuang0713@163.com  回復(fù)  更多評論
      
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2008-12-03 22:28 | 扭曲的鉛筆
    期待你關(guān)于jasperReport相關(guān)文檔,^_^  回復(fù)  更多評論
      
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2008-12-04 12:08 | 凌晨風(fēng)
    @zhanghuang
    jasperReport是通過scriptlet嵌入圖表的,要是真如你所說的那樣你就應(yīng)該檢查一下你的代碼是否動態(tài)的更新了圖表。
      回復(fù)  更多評論
      
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2009-03-19 11:40 | 凌晨風(fēng)
    jasperReport報表HTML預(yù)覽的時候不能指定到px圖片
    response.setContentType("text/html");
    Map imagesMap = new HashMap();
    request.getSession(true).setAttribute("IMAGES_MAP", imagesMap);
    JRHtmlExporter exporter = new JRHtmlExporter();
    exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP, imagesMap);
    exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, request.getContextPath() + imageServletUrl);
    指定這幾個parameter就可以了  回復(fù)  更多評論
      
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2009-12-12 19:06 | fds
    打印的代碼怎么寫啊。剛畢業(yè)來到一家小公司,沒有辦法啊。謝謝了。能不能發(fā)到我郵箱啊qiubite2020@126.com  回復(fù)  更多評論
      
    # re: Struts2整合JasperReport預(yù)覽HTML格式不顯示圖片問題解決方案
    2012-04-28 09:46 | yuchen
    不想要圖片。。。網(wǎng)上這個問題的文章太少了。那個xx很討厭.  回復(fù)  更多評論
      

    <2008年12月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    常用鏈接

    留言簿(11)

    我參與的團(tuán)隊(duì)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    新聞分類

    新聞檔案

    收藏夾

    圍脖

    最新隨筆

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 色欲A∨无码蜜臀AV免费播| 亚洲爆乳成av人在线视菜奈实| 国产特黄一级一片免费| 亚洲成年看片在线观看| 国产精品自拍亚洲| 亚洲国产成人精品久久久国产成人一区二区三区综| 亚洲日韩国产二区无码| 国产猛烈高潮尖叫视频免费 | 亚洲无线一二三四区手机| 九九免费精品视频在这里| 国产亚洲AV夜间福利香蕉149 | 男女啪啪永久免费观看网站| 国产AV无码专区亚洲AV蜜芽 | 日韩电影免费在线观看网址| 狠狠色婷婷狠狠狠亚洲综合| a毛片久久免费观看| 亚洲天堂中文资源| 无码少妇一区二区浪潮免费| 亚洲av午夜电影在线观看| 亚洲精品视频在线观看你懂的| 你好老叔电影观看免费| 亚洲第一页中文字幕| 国产在线观看免费视频播放器| 一级**爱片免费视频| 久久国产亚洲精品无码| 在线a毛片免费视频观看| 一级毛片免费不卡| 亚洲高清中文字幕综合网| 成人免费视频小说| 天黑黑影院在线观看视频高清免费| 日韩亚洲AV无码一区二区不卡| 成年在线网站免费观看无广告| 一级毛片在线免费播放| 亚洲成a人片77777群色| 一本色道久久88亚洲综合| 无码日韩精品一区二区免费暖暖| 亚洲午夜成人精品无码色欲| 亚洲真人无码永久在线| 最新免费jlzzjlzz在线播放| 久久久WWW免费人成精品| 亚洲影视自拍揄拍愉拍|