An Interview with Teodor Danciu of JasperReports
Orange Crate is pleased to announce an interview with Teodor Danciu, developer of JasperReports, an open source project that delivers excellent reporting capabilites for applications using a number of methods and capabilities. Teodor was kind enough to take time out of his schedule to answer my questions, and I do appreciate that.
(Submitted by Chuck Talk Wed Feb 16, 2005 )
| ||Chuck Talk: Teodor, I must say that I am very impressed with JasperReports, it is a great product and you have done some amazing work. My audience may not be familiar with JasperReports, but I certainly am. I would encourage them to take a look at this excellent reporting engine and application, as you have really done some awesome work (IMHO). Can you tell me how you came to the idea of developing JasperReports?
Teodor Danciu: A few years ago I had to evaluate the feasibility of a very large Java project that required extensive printing capabilities. I had to investigate what existing solutions were available in the market when it comes to complex document generation and printing from Java applications. I found some solutions, but they were too expensive, given the limited budget for the project I was evaluating. At that time, I had some experience with Windows-based reporting tools like CrystalReports and I thought that it should not be too hard to create a similar reporting tool in Java. The project I was evaluating did not receive backing for other reasons, but the idea to build a Java reporting tool from scratch remained in my head and was very appealing to me so I began working on it in my spare time, usually late at night and during the weekends.
Chuck Talk: The sample output from JasperReports shows an amazing depth in what is possible. Even the JFree Chart eye candy is amazing. The scope and sheer number of types of reports available indicates a great deal of effort has gone into the project. How long have you been working on JasperReports, and do you see it growing for you?
Teodor Danciu: Work on JasperReports began in June 2001. First I put on paper some initial requirements and then I started to figure out possible solutions to the various technical challenges ahead. In September 2001 I already had some core functionality in place and I registered the project at Sourceforge.net without releasing any files. But right away I started to receive messages from possible users that were interested in a product like the one I have described on Sourceforge.net and I adopted the Open Source strategy that says you have to "release early, release often".
The feedback received from the community boosted my interest in the project and soon my priorities were adapted to suit users' demand for new features. I plan to bring JasperReports to its next level of usability by adding interesting new features that will make it more appealing and useful to its users.
Chuck Talk: What are your thoughts about supporting anonymous classes as scriptlets that can be declared in XML?
Teodor Danciu: I think this feature needs to be studied and evaluated. Certainly it is interesting to have a simple way to put some business logic inside the report template itself and deal with only one source file (the JRXML). But on the other hand, mixing Java code with XML is something I try to avoid or keep to a minimum. Having a separate Java file gives the possibility to edit it using a specialized Java editor with syntax coloring, code completion and everything. However, this could be posted as a "Feature Request" in order to get some community feedback on it.
Chuck Talk: Have you given any thought to having JasperReports return the original path or URL provide for images when exporting to HTML instead of the current mechanism of using a map for renamed images that requires a session in a servlet?
Teodor Danciu: This issue will be solved soon. It is on my TODO list now and I'm trying to find the best solution for it. I am not sure yet what would happen to the images when the same report is exported to other formats like PDF or when viewed with the JasperViewer. As I see it right now, it will be something that will work only with HTML.
Chuck Talk: Have you given any thought to exporting to non-formatted text (txt) or XLS?
Teodor Danciu: The existing XLS exporter tries to keep all the formatting in place so that the document closely matches the PDF representation. There is also the CSV exporter that completely ignores style and formatting, but at a certain degree it keeps some layout information and if the elements are not perfectly aligned, we get many empty cells inside the resulting table data. A pure text exporter has been requested by the community from some time now and there were some contributions in the patches area at Sourceforge.net.
However, the results are not very good and there is no simple solution to this problem. I'll probably take a closer look at this issue for one of the future versions and try to crack that nut.
Chuck Talk: Have you worked with or considered tabular reports, or do you consider that a possibility for JasperReports?
Teodor Danciu: Adding support for crosstab reports and simplifying the use of charts are the two main priorities for me right now. They will be available sometime later this year.
Chuck Talk: One of the developers here has said that you intend to work full-time on JasperReports this year. Have you found a backer for your product, or is the product being supported by any entity or has this simply provided you with a good source of income? Everyone here is impressed that you can work on your own project for a year. ;)
Teodor Danciu: The JasperReports project has now enough mass to support itself. The existing business model around the project can assure that the product will continue to evolve and get better with every new version.
Chuck Talk: I have noticed and read the license section of your website, but I am confused. Is the product still licensed under both the JasperReports License and the GNU Lesser GPL (LGPL)? I had heard that you might be consolidating your license into one license from one of my coworkers. Is that on your current to-do list?
Teodor Danciu: Yes, this is something I'll probably do starting with the next version which will be available only under the LGPL license.
Chuck Talk: As Sun Microsystems just released some 1600 patents under their CDDL, a license that was approved by the Open Source Institute, do you think that will affect the Java development community or your licensing decision for JasperReports in any way?
Teodor Danciu: Moving to the LGPL license is the first step towards simplifying JasperReports licensing. What I want is eventually to find the best open source license that can protect the product and its users and that will guarantee it will keep evolving through contributions and community participation. I have initiated an open discussion on the Sourceforge.net forums in order to get some community feedback when choosing the appropriate license for JasperReports.
Chuck Talk: The last word I always give to you. Is there anything that you would like to tell my readers that I failed to ask, or something you are just dying to tell everyone, but have never been asked? By the way: JasperReports totally rocks!
Teodor Danciu: I want to let the JasperReports community know that since I'll be spending more time on the product, the development pace will accelerate and new, interesting and long-awaited features will be available sooner. I want to thank the JasperReports users for their feedback and their contributions to the product and assure them that the product will evolve and improve so that everybody can enjoy a very powerful and flexible open source Java reporting tool.
Chuck Talk: Thanks Teodor, for taking the time to answer my questions, I hope that my audience has learned something about JasperReports, and that the community remembers to support projects like JasperReports and developers like Teodor. Thanks for your excellent contribution, this is what open source offers: a competitive edge for your users, and a thoroughly adaptive product that works as it should.
Our content can be syndicated: Main page Mac Page
Copyright 1999-2005 Noel Davis. Noel also runs web sites about sailing and kayaking.
All trademarks are the property of their owners.
All articles are owned by their author