بتاريخ: 3 ديسمبر 201114 سنة comment_218215 بسم الله الرحمن الرحيم ممكن بالتفصيل شرح استدعاء (Jasper Report Into ADF) تقديم بلاغ
بتاريخ: 6 ديسمبر 201114 سنة comment_218325 لعرض تقرير معمول بال jasper ضع الكود التالي في Servlet package myclasses; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.sql.Connection; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.sql.DataSource; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRExporter; import net.sf.jasperreports.engine.JRExporterParameter; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperPrintManager; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.design.JRDesignQuery; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.export.JRCsvExporter; import net.sf.jasperreports.engine.export.JRGraphics2DExporter; import net.sf.jasperreports.engine.export.JRGraphics2DExporterParameter; import net.sf.jasperreports.engine.export.JRHtmlExporter; import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.export.JRRtfExporter; import net.sf.jasperreports.engine.export.JRXlsExporter; import net.sf.jasperreports.engine.xml.JRXmlLoader; public class showreports extends HttpServlet { private static final String CONTENT_TYPE = "text/html; charset=UTF-8"; public void init(ServletConfig config) throws ServletException { super.init(config); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(CONTENT_TYPE); try { String appid=request.getParameter("id"); String type=request.getParameter("type"); if (appid.length()<1){ return; } Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/TDISDS"); Connection conn = ds.getConnection(); // InputStream input = new FileInputStream(new File(getServletConfig().getServletContext() // .getRealPath("/reports/parReport.jrxml"))); InputStream input = new FileInputStream(new File(("c:/appldata"))); JasperDesign design = JRXmlLoader.load(input); String qu = design.getQuery().getText(); JRDesignQuery query = new JRDesignQuery(); query.setText(qu + " where id='"+appid+"'"); design.setQuery(query); JasperReport report = JasperCompileManager.compileReport(design); // Integer code = (Integer)request.getAttribute("deptno"); String reporttype = "pdf"; // Map parameters = new HashMap(); // parameters.put("DeptNo", code); JasperPrint jasperPrint = JasperFillManager.fillReport(report, null, conn); OutputStream out1 = response.getOutputStream(); Image image = JasperPrintManager.printPageToImage(jasperPrint, 0, 1.5f); BufferedImage pageImage = new BufferedImage(image.getWidth(null)+1, image.getHeight(null)+1, BufferedImage.TYPE_INT_RGB); pageImage.getGraphics().drawImage(image, 1, 1, null); ImageIO.write(pageImage, "jpeg", out1); out1.close(); ///////////////////// } } catch (SQLException sqle) { sqle.printStackTrace(); } catch (NamingException ne) { ne.printStackTrace(); } catch (FileNotFoundException fnfe) { fnfe.printStackTrace(); } catch (IOException ioe) { ioe.printStackTrace(); } catch (JRException jre) { jre.printStackTrace(); } finally { } } } ضع الكود التالي في image /showreports?id=11 تقديم بلاغ
بتاريخ: 13 ديسمبر 201114 سنة كاتب الموضوع comment_218525 شكرا جزيلا انا فعلا والحمد لله انجزت المشروع ومنه عمل التقارير واستدعائها package view; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.HashMap; import java.util.Map; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.AppModuleImpl; import net.sf.jasperreports.engine.JRExporter; import net.sf.jasperreports.engine.JRExporterParameter; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.xml.JRXmlLoader; import oracle.jbo.client.Configuration; public class ReportServlet extends HttpServlet { private static final String CONTENT_TYPE = "text/html; charset=UTF-8"; public void init(ServletConfig config) throws ServletException { super.init(config); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head><title>ReportServlet</title></head>"); out.println("<body>"); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { OutputStream ouputStream = null; try { PreparedStatement st = null; AppModuleImpl am = (AppModuleImpl)Configuration.createRootApplicationModule("model.AppModule", "AppModuleLocal"); st = am.getDBTransaction().createPreparedStatement("select 1 from dual", 0); Connection conn = st.getConnection(); InputStream input = new FileInputStream(new File(getServletConfig().getServletContext().getRealPath("Dev.jrxml"))); JasperDesign design = JRXmlLoader.load(input); JasperReport report = JasperCompileManager.compileReport(design); BigDecimal ChkNo = (BigDecimal)request.getAttribute("ChkNo"); BigDecimal USRID = (BigDecimal)request.getAttribute("USRID"); BigDecimal DPTID = (BigDecimal)request.getAttribute("DPTID"); BigDecimal CMPID = (BigDecimal)request.getAttribute("CMPID"); Map parameters = new HashMap(); parameters.put("ChkNo", ChkNo); parameters.put("USRID", USRID); parameters.put("DPTID", DPTID); parameters.put("CMPID", CMPID); JasperPrint jasperPrint = JasperFillManager.fillReport(report, parameters, conn); response.setContentType("application/pdf"); response.setHeader("Content-Disposition", "attachement; filename=\"file.pdf\""); ouputStream = response.getOutputStream(); JRExporter exporter = null; exporter = new JRPdfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, ouputStream); exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "CP1256 (Arabic)"); exporter.exportReport(); ouputStream.flush(); ouputStream.close(); } catch (Exception ex) { ex.printStackTrace(); } finally { if (ouputStream != null) { ouputStream.flush(); ouputStream.close(); } } } } تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.