Génération d'un pdf à partir de JSP
Salut :) ,
je voudrais enregistrer le contenu de ma JSP ( un tableau ) sous format PDF..
au click sur le lien permettant l’exécution de mon script.. je reçois la boite de dialogue pour enregister.. le problem qui se pose est que le pdf genere est vide !!
voiçi mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<jsp:useBean id="pelS" class="com.project.service.PelleService"></jsp:useBean>
<jsp:useBean id="resS" class="com.project.service.ResidenceService"></jsp:useBean>
<jsp:useBean id="ateS" class="com.project.service.AtelierService"></jsp:useBean>
<jsp:useBean id="draS" class="com.project.service.DraglineService"></jsp:useBean>
//...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript" src="<c:url value="/jquery/jquery-1.7.1.min.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/jspdf.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/standard_fonts_metrics.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/split_text_to_size.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/from_html.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/cell.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/addimage.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/javascript.js"/>"></script>
<script type="text/javascript" src="<c:url value="/js/FileSaver.js"/>"></script>
<script>
function demoFromHTML() {
var doc = new jsPDF('p', 'in', 'letter');
var source = $('#target').first();
var specialElementHandlers = {
'#bypassme': function(element, renderer) {
return true;
}
};
doc.fromHTML(
source, // [Refer Exact code tutorial][2]HTML string or DOM elem ref.
0.5, // x coord
0.5, // y coord
{
'width': 7.5, // max width of content on PDF
'elementHandlers': specialElementHandlers
},
function(dispose){
doc.save('azer.pdf');
}
);
}
</script>
<link href="css/style2.css" rel="stylesheet" type="text/css" media="all" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>RAPPORT</title>
</head>
<body>
<div id="target">
<label>IDB/EM/M</label><br/>
<label>SUIVI PERFORMANCE</label><br/>
<table class="rapport">
<tr>
<th class="aa" rowspan="2">INSTALLATIONS</th>
<th class="aa" colspan="5">REALISEE</th>
<th class="aa" colspan="4">CUMULEE</th>
</tr>
<tr>
<th class="bb">H.M</th>
<th class="bb">CS (kwh/HM)</th>
<th class="bb">R/P (Cs)</th>
<th class="bb">Energie (kwh)</th>
<th class="bb">R/P</th>
<th class="bb">H.M</th>
<th class="bb">Cs (kwh/HM)</th>
<th class="bb">Energie (kwh)</th>
<th class="bb">R/P (Cs)</th>
</tr>
<c:forEach items="${ draS.findAll() }" var="draglines" varStatus="boucle1">
<c:set var="hmC" value="${0}" />
<c:forEach items="${ draglines.heure_M }" var="hm" varStatus="boucle2">
<c:if test="${ boucle2.getIndex()<param['i']+1 }">
<c:set var="hmC" value="${hmC+hm}" />
</c:if>
</c:forEach>
<c:set var="enC" value="${0}" />
<c:forEach items="${ draglines.tab_energie }" var="en" varStatus="boucle3">
<c:if test="${ boucle3.getIndex()<param['i']+1 }">
<c:set var="enC" value="${enC+en}" />
</c:if>
</c:forEach>
<tr>
<th><c:out value="${draglines.nom}" /></th>
//....
//...
//..
//..
</tr>
</table>
<label>CHEF DE SERVICE</label>
</div>
<a href="javascript:demoFromHTML()" class="button">Run Code</a></body>
</html> |
merci :D ..