This week's book giveaway is in the Other Open Source APIs forum. We're giving away four copies of Storm Applied and have Sean Allen, Peter Pathirana & Matthew Jankowski on-line! See this thread for details.
JSF has no database capabilities of its own. Whatever access you do with a database would be done in the same way that you would in a non-JSF program.
The DTO object is actually obsolete if you are using up-to-date ORM techniques. With EJB3, there is no longer a need to maintain a separate DTO from the Entity, the Entity can serve as its own DTO.
DAO's can continue to be used, although I don't reference DAO's directly in my JSF code, i have a separate application layer I put that stuff into and my backing beans call into that layer. Most of what's in my JSF backing beans is GUI-related.
Customer surveys are for companies who didn't pay proper attention to begin with.