Stranica.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<%@page import="work.*"%>
<%@page import="net.sf.jasperreports.engine.export.JRHtmlExporter"%>
<%@page import="net.sf.jasperreports.engine.*"%>
<%@page import="net.sf.jasperreports.engine.export.JRHtmlExporterParameter"%>
<%@page import="net.sf.jasperreports.engine.data.JRBeanCollectionDataSource"%>
<%@page import="java.util.*,java.io.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Neki naziv</title>
</head>
<body>
<%
String id=request.getParameterValues("textboxUKojiSamNaPrethodnojStraniciKojaZoveOvuNestoUkucao")[0];
Klasa1 objekat1=work.Proxy.getObjekatIzTabele1(id);
String naziv=objekat.getNaziv();
List objekti2=work.Proxy.getObjektiIzTabele2(id);
HashMap parametri=new HashMap(1);
parametri.put("parpolje",naziv);
PrintWriter printWriter = response.getWriter();
JRBeanCollectionDataSource ds=new JRBeanCollectionDataSource(objekti2);
JasperPrint jp=JasperFillManager.fillReport(Utils.getJasper("Stranica.jasper"),parametar,ds);
JRHtmlExporter htmlExporter = new JRHtmlExporter();
htmlExporter.setParameter(JRExporterParameter.JASPER_PRINT,jp);
htmlExporter.setParameter(JRExporterParameter.OUTPUT_WRITER,printWriter);
htmlExporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN,false);
htmlExporter.exportReport();
%>
</body>
</html>
U .jasper fajlu (kada ga kreiraš - pre kompajliranja - dakle u .jrxml fajlu ako ne grešim), pored svih polja napraviš i polje "parpolje", to je parametar koji je gore napravljen u parametri.put("parpolje",naziv);. Analogno možeš praviti i za više parametara.
U gornjem primeru ima paket "work" i u njemu klasa Proxy koja ima metode public Klasa1 getObjekatIzTabele1(String id) i public List getObjektiIzTabele2(String id);. Takođe sam lupio da su u pitanju dve povezane klase: Klasa1 i Klasa2.
.jrxml moraš raditi preko binova da bi ovo gore radilo. Jasper Reports može raditi i direktno sa JDBC, ali onda se malo drugačije dodaje parametar.
Trebalo bi da sve ide ovako - ako sam šta pogrešio ne zameri.
Poz