Put simply, Cocoon is a front controller
Servlet that performs dynamic server-side XSLT transformations.
We have been using Cocoon to support multiple client types( browsers, hand-helds and perhaps Voice based responses in future). The selection criteria was certainly not based on rich content generation( asp and
JSP beats Cocoon in GUI vocabulary), but was based on heterogenous client support and dynamic transformations. We use Producer based architecture to generate XML data.
Cheers,