Well, you can simply disable all the controls, but that usually looks pretty ugly. Plus when everything's framed in a control object, users are apt to get confused when they see an "editable" form with nothing editable on it.
I've always (dating all the way back to when JSPs first came out) maintained 2 separate JSPs for this kind of stuff. It may seem like duplication, but it gives a lot more control over the appearance. Usually my display and edit views don't look that much alike anyway.
An IDE is no substitute for an Intelligent Developer.
You can go for disabling the fields. But then you need to beautify the stuff. And, surely, need to handle those confusions which might occur when user see the same with disabled field. We can spiffy that using CSS.
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