Planet Jaspersoft

August 17, 2015

This is an error which you get while exporting the data from the Jasperserver in the Excel Format.

Something of this sort

For resolving this you should check some of these errors:

1. Number to string cast exception:
This means that a number is wrongly appended to a string in which wrongly cast number into string.
In order to fix this, you will have to use the command as

new DecimalFormat("##,#0.00").format(number).toString()
This will cast your number into two decimal places with the thousand separator.

2. Another error that can be checked is of any other cast errors, or formatting of the data in the report.


August 17, 2015

April 1, 2015

TIBCO Analytics - One Year Later (Brian Gentile)
The Open Book on BI )

The past twelve months have been a wild ride in the world of business intelligence and big data, full of acquisitions (including Jaspersoft’s addition to the TIBCO Software family) and innovations. Since forming TIBCO Analytics, we’ve entered an extraordinarily important time for the business and all those customers who’ve placed their trust in us as their partner for data analysis and reporting.   Because of this trust placed in us, and the innovative tools at our disposal as part of TIBCO Software, we have a unique opportunity to deliver best-in-class value with each of our tools.

TIBCO Analytics brings together two market-leading platforms:  TIBCO Spotfire, the award-winning platform for data discovery, analysis and visualization, and TIBCO Jaspersoft, the award-winning platform for embeddable reporting and analysis.  These two platforms solve very different analytics problems and for different types of customers.  Even the very fundamental aspects of these two platforms and the uses for which they are best suited are complementary, which becomes a growing point of emphasis as we aim to deliver increased value for our customers with each product release.

Through the combination of these products and formation of a business unit focused exclusively on Analytics, we have become one of the largest business intelligence tool providers in the industry, and boast one of the largest customer bases as well.  Our significant level of investment in Analytics allows us to solve some of the most important, new analytics problems facing our customers.

We’ll solve these problems through the continued improvement and innovation of both primary platforms (Spotfire and Jaspersoft), and we’ll do so in ways that leverage the strengths of one platform to help the other become more powerful in solving the needs of its core customer.  In other words, we’ll use Jaspersoft-centric features and techniques to help make Spotfire an even more capable data discovery and visualization tool, thereby affordably reaching the broadest possible audience of users, driving greater value in a customer’s investment.

In addition, we’ll use Spotfire-centric features and techniques to help make Jaspersoft an even more capable embedded reporting and analysis tool, enabling more powerful and visual use of data, which also drives greater value in a customer’s investment.

Our longer-term strategy for our Analytics platforms centers on cloud architecture and cloud-based delivery.  Our aim is to literally re-imagine business analytics – the way it is designed, developed, delivered, deployed and consumed – to create a seamless spectrum of web-based analytic services, which can enable anyone to have a personalized or tailored experience that is perfectly fit-for-purpose. It’s an exciting vision and, when we discuss this directly and in more detail with our customers, it never fails to capture their excitement as well.

I look forward to this TIBCO Analytics team describing this vision in more detail for you and then gaining your feedback and engagement so you might join us on this amazing step in the journey toward next-generation data analytics.

April 1, 2015

February 11, 2015

I wanted to document the process from a long time but due to crunch of time I could not, but now I will like to explain the process in simple easy to follow steps.

First of all I would like to give an idea to problem addressed in the blog, basically when a report runs as a daily status or daily count one need not run it manually it could be scheduled, but when the report is scheduled the export in desired form is exported on jasper server.

But wait a minute do we really login and see what the results came as in the PDF, Excel etc. export, no we need not the problem is handled by mail subscription attached to the scheduler, which will automatically send the Exports to the subscribers on their email accounts and send a confirmation to the administrator.

So lets cut the explanation and lets jump directly into how to do.

Prerequisites -

1. You should have working copy of JasperServer community/pro
2. You should have uploaded a report to the server
3. Choose you favourite text editor  (Windows(default) - Notepad/MacOS(default) - TextEdit)
4. Shut down the jasper server so that no sort of errors come in case of Editing/Saving documents.

after following the above prerequisites now we head on to edit two files as follows.
Both these files will be found at the location
<directory of Jasperserver on Disk>/apache-tomcat/webapps/jasperserver/WEB-INF/

   - Edit the file with the Text Editor
Change the portion of the document as (Please select your own server details I have used a gmail account )
report.scheduler.mail.sender.protocol= smtp
report.scheduler.mail.sender.port= 587
  - Make the changes and save the file.

2.   applicationContext-report-scheduling.xml

  -  Locate the bean reportSchedulerMailSender
  -  Locate the property javaMailProperties
  -  Do the changes as below - This will enable java to interact the smtp/startls authentication.      

                <prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.starttls.enable">true</prop>
  - Now save the document.

Now the report subscription is ready for run, just start the Jasper Server and you are good to go.


February 11, 2015

January 20, 2015

In this blog I have explained the steps to import and export the JasperServer Repository (In the steps below I have used a Remote Linux Machines accessed via windows machine)

Before following the steps there would be requirement of following softwares-
1. WinSCP - To browse the files in Linux machine
2. PuTTy - To run the commands for export/import in the Linux shell

Steps Export reports in Jasper Reports

1. Open PuTTy - and key in the IP address 
2. Enter the username and password.
3. Navigate to the folder /opt/jasperreport-server-5.0/buildomatic
4. Run the command  ./ --uris <Path of the Report>  --output-dir <Name of the folder to be exported>
5. Open the WinSCP, and key in the  IP Address as well as the credentials and set the Protocol as SFTP .
6. Navigate to the folder /opt/jasperreport-server-5.0/buildomatic
7. Drag and drop the folder created earlier to the local machine.

Steps Import reports in Jasper Reports

1. Open the WinSCP, and key in the  IP Address as well as the credentials and set the Protocol as SFTP .
2. Navigate to the folder /opt/jasperreport-server-5.0/buildomatic
3. Drag and drop the folder downloaded with the report.
4. Now Open PuTTy - and key in the IP address 
5. Enter the username and password.
6. Navigate to the folder /opt/jasperreport-server-5.0/buildomatic
7. Run the command  ./ --input-dir <name of the folder copied earlier>

January 20, 2015

January 12, 2015

I have been thinking to compile  a document which outlines the complete process of installation and setup of the connection because generally when one starts they do not find much of material and they tend to get stuck on a trivial issue.

So the post will have two portions, namely Installation and Setup.


This document will apprise you with the basic installation software, which would act as a prerequisite to run Jasper Report.
  1. Java
    As Jasper Reports is built on Java platform, so a proper installation of Java Development kit (jdk) is required. For official steps to install java one can refer to the link
  2. iReport Designer
    This is a third party Jasper Report designing software. iReport is the most popular visual designer tool for JasperReports Library and JasperReports Server (Business Intelligence).
    The software can be downloaded in an exe run able format for windows machine, or other types of files as per the platform demands.

  3. Jasper Server
    This is the software which acts as the interface which provides web touch to the reports rather makes it interactive in terms of external links and the drill downs
    Below is the link from where the file could be downloaded.

  4. Database  Server -
    The database server or the datasource which serves the purpose of feeding data to the report, in this projects case the setup was in the SQL Server 2008, which could vary from project to project .
  5. Netbeans(Optional)

Netbeans is the development environment where in you could create sciptlets for customization purposes in the Jasper Reports. You could even go on to make customizations on the charts, where in you could use the (Download the SE version)

Setup and Connection

Below are the steps for the setup, which would act as a prerequisite to run Jasper Report.
  1. Java
    Download and install java 7, please do mind not to install Java 8 as it is yet not supported by iReport.
  2. iReport Designer
    After installing the iReport, first thing you need to do is that the inclusion of java connector

    Below is the process to include the Java Connector

    i.  Download the Java connector for the Datasource, as we have the SQL Server datasource we need to download
    For more info on the Connector follow the link --

    ii.  Navigate to Tools—> Options  Classpath
    And select the Add JAR, and then browse to the downloaded path of the connector

    Now we  need to add a JDBC datasource

    i. Click on  the icon shown below on the top of the iReport window

  1. ii.  In the popup select New  Select The Datasource type as Database JDBC Connection

    iii. Now Enter the name of the connection, select the SQL Server driver and enter the name of the database in the url of the database, also key in your credentials, refer to the screenshot below

    iv. Now test the connection, it will say the connection successful.

    We are now ready to create reports.

  2. Jasper Server
    After installation in order to run Jasper Server open the browser and key in
    Then login using the credentials jasperadmin/jasperadmin

    Then setup the connection, righ click on the node and add a datasource
    Enter the details below,  for the connector and setup the datasource.

The above steps are pretty basic and gives a fair idea as to what all basic necessities are there to process the installation and setup.

January 12, 2015

January 5, 2015

2014 was an eventful year for Jaspersoft. We launched two new versions of our flagship product, JasperReports Server: v5.6 and v6, both full of clever innovations. We reached new records for total number of customers, product downloads, and registered community members. Oh yeah, and we were acquired by TIBCO Software at the end of April.

Now that Jaspersoft is part of the TIBCO Analytics family of products, a few things change, but most things stay the same. I’m excited that Jaspersoft is now part of a bigger company with complementary Analytics tools, which will allow it to solve more customer problems in more areas of the globe. I’m also thankful that we’ll continue all that has made Jaspersoft's business intelligence solitions great: focus on innovation, commitment to solving embeddable analytics projects, being a great provider of open source software and member of the Open Source community, and always putting the interests of customers and community first.

What’s Changed, Now That Jaspersoft is Part of TIBCO?
Jaspersoft products are now part of a bigger, more comprehensive set of Analytics offerings which will allow it to ultimately solve a broader set of a customer’s analytics needs.  Within TIBCO Analytics, the Jaspersoft product line now sits next to TIBCO Spotfire, the market-leading data discovery, analysis and visualization tool that has been part of TIBCO since 2007.  These two tools (Jaspersoft and Spotfire) are extremely complementary, so you can expect, over time, one tool to help the other be even stronger in its primary category (Jaspersoft in embedded reporting and analytics and Spotfire in data discovery and visualization).

Jaspersoft personnel are now part of a bigger, more global infrastructure and workforce that will allow it to scale more easily and serve customers more fully.  Because of Jaspersoft’s commercial open source roots, its customers are all over the globe.  Now, as part of a much larger enterprise focused exclusively on mission-critical business software, the Jaspersoft team will be able to more efficiently work with customers wherever they are and satisfy a broader range of projects and needs than we would have as an independent company.  I am hopeful that, like me, our customers see this as a powerful next step for Jaspersoft.

What Stays the Same, Now That Jaspersoft is Part of TIBCO?
All the things about Jaspersoft that matter most to customers should remain the same: 
  • Our relentless focus on innovation, which propels us to create the most affordable reporting and analytics solutions to solve the next decade’s analytics problems; 
  • Our leadership in embedded reporting and analytics, which allows Jaspersoft tools and the insight they provide to become a contextually-relevant part of thousands of other pieces of software, helping millions of users each day to become more capably analytic;
  • Our being a great Open Source software provider, community member, and participant;
  • Our never-ending drive to build an efficient and successful operating model, which ensures our customers receive the greatest value in licensing and using our software;
  • Our laser focus on customer success, our highest priority goal, along with our recognizing that we succeed only when our customers’ succeed; and
  • Our constant quest to reach everyone with analytics; that is, our understanding that analytics must become a thing that you do, not a place that you go.
As we journey forward into 2015, I hope that you, our customers and partners, will let me know how we are doing against this list of things that will and won’t change.  My responsibility is to ensure that a broader, deeper and, ultimately, even more successful relationship emerges between our customers and TIBCO Analytics, of which Jaspersoft is a critical part.  As always, my email inbox is open and I’d like to hear from you.

Thank you for your business and partnership.  Best wishes in 2015.

Brian Gentile
Former Chairman & CEO, Jaspersoft
Now Sr. Vice President & General Manager, TIBCO Analytics

January 5, 2015

November 20, 2014

 This Exception comes generally when you try to export the report on Jasper Server in PDF Format, or from iReport, then due to the error in some of the image or all the images, which is producing the error.

So to overcome this issue, you could set following properties of the image:

1. Firstly you could simply setting the Cache Property to true
2. If that does not resolves the issue then you can set the property Error type to Blank

Hope that this helps.


November 20, 2014

November 2, 2014

Jasper Reports Server is basically a stand alone as well as embedded  reporting server which can be easily used for deploying the Jasper Reports. It provides a way to embed reports as well as analytics into a web or mobile application, as well as act a informational hub.

Server is made to securely share and manage the Jasper reports and analytic views. The security feature is implemented via role management and user creation facility in Jasper Server.

Now there are two ways you can use Jasper Server
1. Standalone application
2. Embed into services, or applications.

Now moving on to the Source Code Management,

    What benefits do Source Code Management tools provide?

SCM tools help development teams in many ways:
  • Collaboration: SCM tools prevent one user from accidentally overwriting the changes of another, allowing many developers to work on the same code without stepping one each other's toes.
  • History: SCM tools track the complete development history of the software, including the exact changes which have occurred between releases and who made those changes.
  • Release notes generation: Given the tracking of each change, the SCM can be used to generate notes for their software releases which accurately capture all of the changes included in the new release.
  • Documentation and test management: SCM tools can be used to manage not just software source code, but also test suites and documentation for their software.
  • Change notifications: To keep interested members of the team informed when changes occur to the source code.

   Who uses SCM tools?

SCM tools are used by:
  • Project developers who are writing source code.
  • Project testers who need to download the very latest changes.
  • Advanced users who want to try out code that is not yet stable, mature or released.

In JasperServer, the SCM is managed very intelligently, whenever you draw a report for viewing in then you always get a version of the report, so you are not really modifying what is there on server. 

Jasper Server always keeps the original content on the server and provides the user with an instance of the report which is directly stored in the Temp folder, and if you need the modified version you have created as the current version then you need to replace the report with the current version of the report, by right clicking on the report in the repository and then replacing the report.

In light of this feature there is also a extreme care to be taken that which version is being replaced, because if once replaced the version of the report will be changes and it would be not possible to roll back the change.

This feature is really very great when you need to work on the small modification in the report as you can draw a copy on the local system and work onto that until you get the desired modification as well as you can simultaneously compare the previous version of the report and if you get the desired changes executed you can replace the report and have a new version of the report.

Hope this information helps you a lot!!

November 2, 2014

September 16, 2014

CrossTabs are used for creating statistical view of a large sample data.

They allow you to summarize a huge unorganized data to be organized in terms of commons between the data.

Suppose You have a data containing two columns Year, Brand of the car sold

Some thing like this 


Now if you have to tell the total sales of Audi  in 2000,2001,2002. It will be a long and tedious process, so to show it Schematically We can have Distinct Years and Distinct Car Brand Names for representing the data as they are the are the common attribute to the data .

So the statistical data will look like this

In the table above you could easily determine the Number of car sold for either of the brands and in which specific year. Also The last column where the the two totals converge i.e. 16 shows you the total value of the sample. 

Now let me quickly move on to implementation of Cross Tab in Jasper Reports rather iReport.
For the tutorial I would be using the iReport v5.6.0

1. The data needs to be retrieved from a datasource (either JDBC/JavaBeans/Custom Datasource/Excel/CSV... etc)
2. For the demonstration purposes I will be using the Excel File as the datasource.
3. After defining the datasource, we need to add the CrossTab element from the pallete.
4. Pallete could be accessed, Window( Menu Bar) --> Pallete, then from there the CrossTab could be found under the Report Elements.
5. As soon as we drag the Pallete, we get an wizard as below,

  •     Select the datasource, if subdataset is created then we can use that or simply the main dataset could be used. For the tutorial Main dataset is used
  • Next will appear the grouping criteria for the rows which in short means that which field(s) will come on the Rows of the Cross Tab. We need the car companies on as the rows which are unique.

  • Next will appear the grouping criteria for the Columns which in short means that which field(s) will come on the Columns  of the Cross Tab. We need the Years on as the rows which are unique
  • Next will be the Measure or the count of the value in particular grid.
    Which in our case would be the number of cars of a particular company in a particular Year

  • Then will come the window to select the layout of the crosstab, this means here we can customize the looks of the cross tab by defining the colors and which columns to show/hide.

    6. Now this brings to the completion of the crosstab, now we could see that a tab at the bottom left corner appeared showing the name of the Crosstab, as Crosstab 1. There we could see the columns and design of the Crosstab.

    7. Now a very critical point is placement of the crosstab, this should be really placed in a report band wherein the data is calculated already and then is to be shown in crosstab, the most favorable band to show the CrossTab is Summary band, else it will throw an Error Incrementing crosstab dataset/ Crosstab already been processed.

    Now to Explain the exception
    What "Crosstab data has already been processed" exception means?
    This exception is thrown if more data is added to the crosstab dataset after the crosstab has already been rendered.
    This usually happens when a crosstab element is linked to the main dataset of the report (does not use a subdataset run) and the resetType attribute of the crosstab dataset does not match the place where the crosstab is rendered.
    Crosstabs are special components that display aggregated data. And when they are linked to the main dataset of the report, you simply cannot put them in the detail section, because there is no data to aggregate from a single record.
    Such crosstabs could only reside on a group footer or on the summary section of the report and have the appropriate resetType value, so that their dataset is initialized each time after they are rendered.
    If you still think you need to render one crosstab for each detail in the master document, then almost certainly this crosstab should be linked to a subdataset and not to the main dataset of the report.

How to set up the tutorial Report:

1. Unzip the file downloaded from the above link.
2. The Zip contains sampleds.xls, CrossTabTut.jrxml and TestRun.pdf
3. Open iReport and set up the Excel Datasource using the sampleds.xls
4. Then open the sample report and its ready to run.

Hope that this helps!!

September 16, 2014

March 24, 2014

Using Styles in Jasper Reports (Unknown)
AgileTech - Ankur Gupta )

We have been accustomed to use style sheets or CSS in our HTML codes, parallel to that we can use Styles in Jasper Reports also. It provides same utilities like conditional, non -conditional and could be applied on  any element in the Report.

Now how to create styles, there are two methods basically:
1. External Style Sheet (jrtx file)
2. Declaring Internal Styles in the report itself.

The advantages of using external Style sheet is that it provides modularity and re-usability of the style over large number of reports using similar kind of styles. On the other hand, Internal styles would only contains the styles definitions for a particular report.

How to apply styles in the reports(iReport).

1. Locate the Styles node in the Report Inspector.
2. Right Click on the node and add a new Style
3. Then you could define the properties of the Style in the in the properties pane. Properties like background-color,forecolor, outline,.. etc/
4. You could even click on the Style and add a conditional Style and define conditional styles, like alternate coloring and much more.
5. After defining the styles now in the application part, locate the element onto which you want to apply the style.
6. Select the particular style in the property called Style(could be found in the properties pane) of the Element.

I have created a simple tutorial video demonstrating the Styles in Jasper Reports. Click Here

Download the sample demonstrated in the video tutorial from here. The ZIP file contains :
1. The JRXML File
2. The jrtx Style.

The Sample uses the Sample database so no need to worry about the datasource.

Happy Coding.

March 24, 2014