On your way in you may have missed that JavaRanch has a policy on display names, and yours does not comply with it - please adjust it accordingly, which you can do right here. Thanks for your prompt attention to this matter.
Also, please don't post questions to more than one forum; it makes it harder to find them, and figure out whether it has been answered already. Let's discuss this in the other thread in the Servlet forum, where it it is more appropriate.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com