Thursday, November 21, 2013

Upgrading the JasperReports libraries to 5.2.0

Would you like to upgrade your existing JasperReportsIntegration with the 5.2.0 libraries of JasperReports?

As of now this already seems to be not the most current version, JasperReports has already moved on to 5.5.0. But since I have already created the 5.2.0 package a while ago, I might just post the instructions here. The 5.5.0 version will follow.

Here you go ...

This is an updated version of the original instructions found here: http://daust.blogspot.de/2013/01/upgrading-jasperreports-libraries-to-501.html

Step 1: Download the libary files for 5.2.0


You can download the files here:


 

Step 2: Shutdown the Apache Tomcat J2EE server

 

Step 3:  Remove the existing JasperReportsLibraries from your existing installation


Typically, after you have installed your previous version of the JasperReportsIntegration toolkit on your Apache Tomcat J2EE server, the files will be located in the directory $CATALINA_HOME/webapps/JasperReportsIntegration/WEB-INF/lib, for example version 4.7.0 of JasperReports, where $CATALINA_HOME represents the path to your installation of Tomcat.

Then you would have to remove these libraries first. In this directory you should find two files for removal: _jasper-reports-delete-libs-4.7.0.sh and _jasper-reports-delete-libs-4.7.0.cmd, for *nix or Windows respectively. For *nix systems you would have to make it executable, though, e.g.: chmod u+x _jasper-reports-delete-libs-4.7.0.sh . Then you can call it and it will remove all files for version 4.7.0. But it will NOT remove the file for the JasperReportsIntegration and all other libraries which YOU might have placed there deliberately.

You can always find the required removal scripts here: http://www.opal-consulting.de/downloads/free_tools/JasperReportsLibraries/ .

Whenever I release another package, the removal scripts for that package will be shipped as well.

Step 4: Install the new 5.2.0 libraries


Now you can just copy the new libraries from JasperReportsLibraries-5.2.0.zip into $CATALINA_HOME/webapps/JasperReportsIntegration/WEB-INF/lib.

 

Step 5: Start the Apache Tomcat J2EE server again


Now you system should be upgraded to the most current JasperReports 5.2.0 !

Just drop me a note when you need updated libraries for a later JasperReports version, etc. I have scripts in place to create a new package of the libraries.

Here you can find the notes from my upgrade (4.5.0 => 4.8.0) on Linux to illustrate the process, I hope it makes sense:

**
** download the libraries from:
**  http://www.opal-consulting.de/downloads/free_tools/JasperReportsLibraries/4.8.0/JasperReportsLibraries-4.8.0.zip
** to /home/jasper/JasperReportsLibraries

cd /home/jasper
mkdir JasperReportsLibraries

** unzip them
cd JasperReportsLibraries
unzip JasperReportsLibraries-4.8.0.zip -d JasperReportsLibraries-4.8.0

** stop tomcat server
/home/jasper/tomcat/bin/shutdown.sh

** remove libraries of current jasper reports release
cd /home/jasper/tomcat/webapps/JasperReportsIntegration/WEB-INF/lib
chmod +x _jasper-reports-delete-libs-4.5.0.sh
dos2unix _jasper-reports-delete-libs-4.5.0.sh

./_jasper-reports-delete-libs-4.5.0.sh

** copy libraries of the new release to the WEB-INF/lib directory
cp /home/jasper/JasperReportsLibraries/JasperReportsLibraries-4.8.0/* /home/jasper/tomcat/webapps/JasperReportsIntegration/WEB-INF/lib

** restart tomcat
/home/jasper/tomcat/bin/startup.sh


Cheers,
~Dietmar.

5 comments:

Sasha Splinter said...

Dietmar, thank You very much! I do hope that You will find out a time to investigate a annoying bug (?) with full path requrements to .jasper file in

Dietmar Aust said...

Hi Sasha, not much time right now ... but I will see what I can do.

Can you please again post your environment details with the ticket, like os, version of tomcat, etc.

thanks, dietmar.

Sasha Splinter said...

Oh, great news!
Here You are my environment details:
Debian 6 2.6.32-5-amd64,
Apache Tomcat/6.0.35 1.6.0_26-b03 Sun Microsystems Inc. Linux 2.6.32-5-amd64 amd64,
JRI v2.1.0.0

Armin Baier said...

Hi Dietmar,
it seems the bug (with full path requirements for subreports) still exist.
My environment is tomcat 7.0.53 on windows with JasperReportsIntegration 2.1 and Jasper Libraries 5.2.
JRI.log says:
[DEBUG]-[webapp.ReportWrapper] de.oc.integration.jasper.webapp.ReportWrapper.service(ReportWrapper.java:169): reportFileDir: C:\web\Tomcat 7.0\webapps\JasperReportsIntegration\reports
[DEBUG]-[webapp.ReportWrapper] de.oc.integration.jasper.webapp.ReportWrapper.service(ReportWrapper.java:181): set parameter baseDir:C:\web\Tomcat 7.0\webapps\JasperReportsIntegration\reports
[DEBUG]-[webapp.ReportWrapper] de.oc.integration.jasper.webapp.ReportWrapper.service(ReportWrapper.java:184): set parameter SUBREPORT_DIR:C:\web\Tomcat 7.0\webapps\JasperReportsIntegration\reports\
Do you have any hints what I can do to get rid of this behaviour?
Thanks in advance.
Armin

Dietmar Aust said...

Hi Armin, Sasha,

cannot really troubleshoot that right now but there is a workaround: http://www.opal-consulting.de/site/jasperreportsintegration-full-path-requirement-and-workaround/

Hope that helps,
~Dietmar.