iText is the #1 Java-PDF library in the F/OSS world: it's the PDF engine under the hood of JasperReports, Eclipse/BIRT, jBoss/SEAM, and many other tools. Yesterday iText 2.1.6 was released, an important milestone in the history of iText, because it's the last release before a license change.
iText was originally released under the LGPL: the Lesser (or Library) GNU Public License. In the year 2002 however, we had been receiving mail from different legal departments of companies, explaining some quirks in the LGPL that (at that time) prevented the use of iText by those companies. After a long discussion, we decided to move from LGPL to MPL, but to keep the LGPL for backward compatibility. That was seven years ago, and the LGPL is still there; even though the FSF no longer recommends the use of the LGPL.
Don't worry: we're keeping the MPL; so for those companies using iText under the MPL, nothing will change, but we want to replace the LGPL by something better. We realize that we can't just "remove" the LGPL. Several companies have been ignoring our advice to use iText as an MPL library; instead they have been using iText under the LGPL. The main reason was probably because they needed a license that is GPL compatible: in other words: they can't use iText under the MPL because of license incompatibilities. That's why we're not "throwing away" the alternative license, instead we'll be upgrading from the LGPL to the AGPL. The AGPL is compatible with GPLv3, so that should solve most of the compatibility problems. iText 2.1.6 is the final release as an MPL/LGPL library; the next release will be MPL/AGPL.
Although the migration from LGPL to AGPL allows people to continue using iText in a product with one of the GPL flavored licenses in their Free/Open Source Software, there will be an extra restriction for companies that use iText in a product that has a dual (or triple, or...) license of which one license is purely commercial. These companies will have to contact http://itextsoftware.com/ and will be asked to buy a license for the use of iText in the "non-free" part of their software. The same goes for companies that use iText in commercial SaaS applications. But that's something for the future; we're not there yet; we're still thinking about the wording of the extra restrictions.
Meanwhile iText 2.1.6 has brought some really interesting new functionality.
Many users of PdfPTable will be happy to see that PdfPTable finally supports rowspan. The fact that you couldn't define a rowspan for a PdfPCell caused developers to use Table instead of PdfPTable and as the Table class hasn't been supported anymore for years, this often led to a lot of frustration. We hope rowspan support for PdfPTable solves this problem.
Also new, is support for timestamping and OCSP. Timestamping is the process of securely keeping track of the creation and modification time of a document using a timestamp issued by a trusted third party acting as a timestamping authority (TSA). OCSP (Online Certificate Status Protocol) allows the document to check the revocation status of a certificate used for a signature online.
Other (minor) new features are the possibility to skip the last footer in a PdfPTable, a method to set the initial leading (which is zero by default), and so on.
iText 2.1.6 also solves a bug introduced in iText 2.1.5: some tagged PDF examples were broken, and in specific cases form fields weren't filled out. The code causing these bugs has been removed.
For a complete overview of all the other bugfixes and changes, please have a look at http://1t3xt.com/about/history.php?branch=history.21&node=216