Upgrading from iText 5.0.4 to later/latest versions - problems? - itext

I have iText version 5.0.4 installed and it has been working well. I was not aware at the rate new versions are being created.
Has anyone jumped from a similar version to a much later version and did you have any problems ?
I am experiencing a problem reading a few pdf's where pdfReader is failing when merging multiple pdf's into a single pdf and as I have not been able to identify the reason for the problem wanted to try upgrading as a test.
Thanks

You didn't specify which exception you're getting, but I can see three possible causes:
Closing streams, more specifically closing PdfReader, is now a responsibility of the developer, rather than a responsibility of iText. You may have to add or move reader.close() invocations.
We are less tolerant with respect to using broken PDFs (because using a broken PDF as input can lead to unexpected, incomplete results). We now throw an InvalidPdfException more often. (You can work around this by setting the debugmode to true).
There's a known problem (already fixed in the trunk) with 5.5.1 with respect to PdfCopy. If you use iText 5.5.0, this problem doesn't occur.
If one of your PDFs is encrypted, you'll need to make sure you also upgrade the BouncyCastle version. Mixing BouncyCastle versions leads to unpredictable errors. Check the POM file for each iText version to know which BouncyCastle is required.
If you're using PdfWriter to merge documents, you're doing it wrong.
Pick your answer depending on the exception you're getting.

Related

Drools rules export/import when upgrading

I am working with an old version of Drools (5.2). I can export all of the rules in an XML format that has more than 6 million lines in it. I can not find any way to import that file into the most recent version of drools. Is this a legitimate way to do the upgrade? Is there a better way? I need to to a mass migration due to the sheer number of rules I'm dealing with (more than 17,000). I have been struggling for a long time reading documentation trying to figure this dilemma out.
In the 5.2 version, there is a way to create and deploy a snapshot. On the same screen, there is a button to "View Package Source". With as many rules as we have, it took some time and even failed a few times, but eventually, I was able to view that source. I copied the text and pasted it into a text editor and saved it as a .drl file. Copying that way included the line numbers and a '|' character. There are probably other ways to do it such as importing into excel, but I wrote a little java program that stripped out that unwanted data. I could then import that file directly into my new version of the workbench using the "Import Asset" functionality once I had created a project. I have done some tweaking since then, but that is the gist of what I needed. The file validates but I have not tested yet to see if the rules work properly.

Does the latest version of SquishIt still have the issues with JavaScript closures

While doing some analysis on the usage details for the SquishIt framework, I came across a link as mentioned below:
https://danielsaidi.wordpress.com/tag/squishit/
which describes that SquishIt is having some problems with getting to work with JavaScript closures.
I am currently using the latest version :0.9.3.0 of SquishIt.Mvc. Can anyone help me to know whether this version has still the issues while working with JavaScript closures.
I am not aware of any issues at this time (was not aware of any in 2010 either however). It seems like any issues with closures are probably really issues with the minification library used, or files incorrectly terminated. At some point in the last couple years I think we did start adding semicolons between concatenated files if not present to deal with the latter. If you do find any I would love to hear about them.

OpenJDK and com.sun.net

I am looking at using HttpsConfigurator, HttpsServer, and HttpContext in the com.sun.net package. Additionally, part of my project requirement is to use OpenJDK.
I am coding in Eclipse, which will not auto import anything from the com.sun.net package, because it is considered 'forbidden'. After enabling forbidden packages, I can get everything working, building and running. My question, what is considered safe to use in OpenJDK? I am under the impression that it is just the java.* and javax.* packages.
I downloaded the OpenJDK 7 source, and I see that com.sun.net is part of the source, which implies that my assumption might be incorrect. I haven't had any luck googling yet, and I was hoping one the experts here can fill in the missing pieces.
In recap, what is considered safe to use in OpenJDK? Why would Eclipse label com.sun.net as 'forbidden'?
Thanks!
Countless documents -- books, articles, tutorials, official JDK documentation -- have explained that the com.sun.* packages are implementation details, subject to change or removal at any time; they are not intended for user programs. They are not portable, not reliably present, and possibly not as robust as actual API classes. In general, if the JDK documentation bundle contains Javadoc for it, it's intended for your use; otherwise not.

itextsharp not working

I am using iTextSharp to read pdf file. I am using pdfreader.GetPageContent() and PdfTextExtractor.GetTextFromPage() methods using simple text extraction strategy.
Both the methods not reading all the pdf's.
For one pdf if I use GetTextFromPage it's throwing Index was outside the bounds of the array exception(that page having bullet marks and special chars).
How to solve this problem ?
Recently a few bugs were fixed, so you have two options:
Wait for 5.1.4 to be released
Download and build the latest SVN yourself.
If you still have issues after building the latest SVN, either submit a bug report at sourceforge or subscribe to the mailing list and post there.
The recent bug fixes may or may not fix your specific problem. People keep complaining about the parsers, but many are unwilling to submit sample PDF(s) that reproduce the issue.
In other words, if the fixes don't solve your problem and you're unwilling to submit a bug report and sample PDF(s) you're out of luck.

can you DUMP the DOM to a file?

I am using Firefox with Firebug, and came to a point where I have a more mature version of my page that has more features, but apparently one feature has gone bad, and I have an earlier version in which it works, but is way behind.
I was thinking that I may make use of dumping the DOM of both versions and compare them,
how can I do that ?
Thanks !