• jsp调用ireport进行客户端打印


    前提:客户端需要安装jdk,服务段需要有相关的jar包,itext包等。。。

    jsp:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <head>
    <title>打印</title>
    <link rel="stylesheet" href="/gbcpgl/gbcpgl_web/abc/public.css" type="text/css"/> 
    </head>
    <body scroll="no" style="overflow: hidden;">
    <object 
        classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" 
        codebase = "http://java.sun.com/update/1.6.0/jinstall-6u13-windows-i586.cab#Version=6,0,0,3" 
        WIDTH = "100%" HEIGHT = "100%" >
        <PARAM NAME = CODE VALUE = "EmbeddedViewerApplet.class" >
        <PARAM NAME = CODEBASE VALUE = "../../applets" >
        <PARAM NAME = ARCHIVE VALUE = "jasperreports-3.5.3-applet.jar,commons-logging-1.0.2.jar,commons-collections-2.1.jar" >
        <param name = "type" value = "application/x-java-applet;version=1.6">
        <param name = "scriptable" value = "false">
    <!--           请求的servlet路径         -->
        <PARAM NAME = "REPORT_URL" VALUE ="someServlet?someParam">
     
    </object>
    </body>
    </html>
     
    servlet核心代码:
    String jasperName = session.getServletContext().getRealPath("/report_print/office_template") + File.separator + "jywwdjb_bg2.jasper";
    try {
    DriverManagerDataSource ds = 。。。;
    JasperReport jasperReport = (JasperReport) JRLoader.loadObject(jasperName);
    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,paramMap,ds.getConnection());
      if (jasperPrint != null)
      {
      response.setContentType("application/octet-stream");
      ServletOutputStream ouputStream = response.getOutputStream();
      ObjectOutputStream oos = new ObjectOutputStream(ouputStream);
      oos.writeObject(jasperPrint);
      oos.flush();
      oos.close();
     
      ouputStream.flush();
      ouputStream.close();
      }
    } catch (JRException e) {
    e.printStackTrace();
    }catch (Exception e) {
    e.printStackTrace();
    log.error(e.getLocalizedMessage());
    }
  • 相关阅读:
    MDK常用快捷键
    Visual C++ 6.0常用快捷键
    STM32内存映射
    STM32固件库
    MDK建立STM32F103*开发模板
    STM32下载方法
    Protel DXP画原理图常见错误与警告
    usb host和usb device
    IAR使用记录
    开发新产品的三个验证阶段(EVT/DVT/PVT)
  • 原文地址:https://www.cnblogs.com/wangdonghua/p/3320794.html
Copyright © 2020-2023  润新知