LÖSUNG: Scriptlet.class in Web-App importieren
Hallo an alle,
ich habe das Problem lösen können!!!
Es gibt bestimmt auch noch andere Möglichkeiten, aber mit dieser Lósung funtioniert es sicher!!!
Für die Erstellung der jasper-File habe ich iReport 1.2.0 verwendet.
Die Klasse, die ich importieren möchte heisst:
primeroProyectoScriptlet.class
aus ihr habe ich ein JAR-File generiert und anschliessend in dass Verzeichnis „WEB-INF\lib“ gelegt. Ausserdem wird die Klasse
„IReportScriptlet.class“ benötigt (Siehe in primeroProyectoScriptlet.class: extends it.businesslogic.ireport.IReportScriptlet).
Sie befindet sich unter „iReport\classes“. Nehme einfach den ganzen Orner „it“ und erzeuge ein ZIP.Archiv und ändere den Dateityp in „.jar“. Zum Schluss noch diese Jar-Datei in „WEB-INF\lib“ ablegen.
Das wars schon, viel Spass dabei 
(Ich arbeite zur Zeit in Spanien, deshalb sind die vewendendeten Datei- und Variablennamen vielleicht für den einen oder anderen nicht verständlich. Sollte denoch nachvollziehbar sein)
Quellcode:
public class GestionReport extends Action implements java.io.Serializable
{
public GestionReport(){}
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
int TurnoValorStart = 1;
int TurnoValorEnd = 1;
try{
String sql = null;
String driver = „com.mysql.jdbc.Driver“;
String connectString = „jdbc:mysql://10.***.31.110/cabildo_pruebas“;
String user = „****“;
String password = „****“;
Class.forName(driver);
String className = null;
File reportFile = new File(„C:\jakarta-tomcat-5.0.28\webapps\iReport\ficheroJasper\primeroProyecto.jasper“);
String FileDestino =„C:\jakarta-tomcat-5.0.28\webapps\iReport\primeroProjecto.html“;
String loadCL_Scriptlet =„primeroProyectoScriptlet“;
Connection conn = DriverManager.getConnection(connectString, user, password);
if(conn!= null)
{System.out.println("\n- Connection a la base de datos ha sido con exito -\n");}
else System.out.println("\n- Connection a la base de datos ha fallado -\n");
JasperReport jasR = (JasperReport) JRLoader.loadObject(reportFile);
className = jasR.getScriptletClass();
Class loadClass = null;
loadClass = JRClassLoader.loadClassForName(loadCL_Scriptlet);
Map parameters = new HashMap();
parameters.put(JRParameter.REPORT_SCRIPTLET,loadClass);
parameters.put(„TURNO_START“,new Integer(TurnoValorStart));
parameters.put(„TURNO_END“,new Integer(TurnoValorEnd));
JasperPrint jasperPrint = JasperFillManager.fillReport(reportFile.getPath(), parameters,conn);
JasperExportManager.exportReportToHtmlFile(jasperPrint,FileDestino);
}
catch(Exception e3)
{ System.out.println(e3);
}
return new ActionForward("/primeroProyecto.html");