[問題]Ireport想透過JSP產生PDF的網頁

作者: a3236852 (serena)   2022-01-25 01:09:03
※問題類別:JSP,jasperreports-4.1.3.jar
※系統環境:JDK 1.6,apache-tomcat-8.5.75
※狀況概述:
我想把Ireport產出的PDF在網頁上顯示
已經產生jasper檔,在Ireport中有預覽成功
參考網路上一些JSP檔案的範例
一開始是JAR好像一直無法引用進來
查了資料好像環境參數要指定classpath
像補充圖片那樣設定,不太確定是不是對的,但compiler好像過了
再來就卡在JasperFillManager.fillReport這一行
我試了好多方式,再麻煩大神看看我哪裡錯了
本來也有想說用Eclipse
但對Java不太了解,也是遇到一些困難
如果有其他建議我也可以再試看看
謝謝!
※程式碼:
<%@page language="java" contentType="application/pdf; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import ="net.sf.jasperreports.engine.*"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
<%@page import="java.io.File"%>
<%@page import="java.io.FileInputStream"%>
<%@page import="java.io.InputStream"%>
<%@page import="net.sf.jasperreports.engine.util.*" %>
<%@page import="net.sf.jasperreports.engine.export.*" %>
<%@page import="net.sf.jasperreports.j2ee.servlets.*" %>
<%@page import="net.sf.jasperreports.engine.data.JRBeanCollectionDataSource"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="application/pdf;
charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
response.reset();
File reportFile = new File("C:/apache-tomcat-8.5.75/webapps/ROOT/HR/report
2.
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection("");
Map parameters = new HashMap();
out.println("reportFile.getPath:"+reportFile.getPath()+"<br/>");
out.println("conn:"+conn);
JasperPrint jasperPrint = JasperFillManager.fillReport(reportFile.getPath(
),
%>
</body>
</html>
※錯誤訊息:

※補充說明:
classpth設定

jasper放的位置

傳進去fillReport()的reportFile.getPath跟conn 用out.println看實際的值
作者: ssccg (23)   2022-01-25 04:53:00
jar不只compile要用,執行期也要用tomcat的話通常應該在 webapps/你的程式/WEB-INF/lib或是(如果要多個webapp共用)放在tomcat自己的lib
作者: hgs1906 (受遺棄之子)   2022-01-25 10:14:00
吧所有jasperreports依賴到的所有lib都放進去 這樣不完整
作者: fgh81113 (阿景)   2022-01-25 19:58:00
你換一個範例吧 實際上不會在jsp上寫code, 在java直接回pdf檔案就好 記得content type要設pdf

Links booklink

Contact Us: admin [ a t ] ucptt.com