In getting started with Cocoon, one must learn not only a number of concepts, but a number of details as well. Read the Introduction and ensure that you understand concepts such as the sitemap, generators, transformers, serializers and actions. This guide will fill in the details, such as "So how do I turn this query into XML data".
If you are interested in developing real-world web-applications requiring form handling, authentication or even developing your own portal, have a look at the web application documentation.
If you've been writing web applications with any other system you should also take a look at Cocoon Control Flow, which makes writing complex Web applications easy with Cocoon. Complex multi-page interactions can be described easily as blocking function calls.
Come back often...this guide is being updated regularly.
The actual user documentation is available from the side-panel.
What do you need to know before taking-off with Cocoon?
Well, the question above is not that easy to answer. It depends on what you want to do with Cocoon. If you are a usual user, then you can use Cocoon without ever coding Java or knowing how exactly servlet containers work. If you become an experienced user of Cocoon you might want to tweak and tune your application. Therefore it is helpful to know Java and some basics of servlet containers.
However, if you want to develop with Cocoon (building own components to extend Cocoon for example), then you need to program Java. So, we split up this description into two sections: one for users and one for developers.
The usual Cocoon User profile
Before getting started, you should understand some basics for building web applications. This knowledge is not specific to Cocoon; it is useful for using any web framework.
- HTTP and the Request/Response cycle
- Extensible Markup Language (XML)
- Extensible Stylesheet Language (XSL)
As Cocoon enforces the separation of concerns you usually don't have to care about all these technologies at once. If you are the web application developer, you worry more about the request/response cycle and XML. A designer for instance has to have more knowledge about XML, XSL and HTML. But as always, it's good if you know at least something about the other aspects as well, even if you don't need them right now.