VISIONOFFERINGSEVENTSABOUT
 

Sessions

Cocoon: what do you need to know?

To beginners, Cocoon's rich toolset is sometimes perceived as a scary jungle of functionality.

Where to start? What to learn? Will I make it? Will it be worth it?

Focusing on the essential components and concepts of Cocoon, this talk helps you answer those questions, and provides a roadmap to shorten the trip and make it as enjoyable as possible.

We start with an overview of an actual web application built on Cocoon, and show how understanding a handful of essential concepts and components (Pipelines, Flow, Forms, basic Avalon concepts) is sufficient to start building powerful applications.

There's a catch, however: as with any complex framework, this is only true if the developer or team have the right skillset and mindset.

To help people evaluate their (or their team's) potential with Cocoon, we describe the skills needed to work with it at various levels (multi-channel publishing, database access, java business logic programming, debugging, etc.), and describe the kind of "know a little about many things" mindset that helps so much in getting started or going forward with Cocoon.

Test-driven development with Cocoon

Test-driven development is one of the core practices of Extreme Programming. It allows application development teams to focus on what needs to be done, to work in short cycles, to respond rapidly to changes, and to continuously measure how well their code is doing.

Testing frameworks such as Junit have been developed for many programming languages, including XSLT (xsltunit.org). XSLTUnit allows stylesheet developers to set up unit tests for individual stylesheets, but it does not include a framework.

In order for test-driven development to be practical, test suites must be defined and successfully run, every time when changes are committed to the code base. For Cocoon application development, transformers other than XSLT, and complete pipelines must be tested. In this talk, a framework for test-driven development in Cocoon is proposed.

With this framework, developers can define unit tests, test suites, and generate test reports. The framework is easy to use, and minimizes the effort of writing and running tests, encouraging developers to write as many tests as possible. The framework has been developed and used for about a year in several projects using Cocoon, and has lead to a notable increase in software quality.

The testing framework (which has no name yet) is now undergoing its last revision before it will be released as Open Source Software. This talk will present its design, and show how it is used in practice.

Advanced Cocoon Forms: dynamic templates and recursive forms

Cocoon Forms offers some unique features to build advanced forms, easily overpassing other form frameworks. This session will present some of these advanced features and how you can use them in your projects:

  • dynamic templates to produce a page layout that depends on the form contents,
  • the <fd:union> for variants,
  • the <fd:class> and <fd:new> widgets for recursive forms.

This session will present some real-life use case and how they were implemented.

Impress your boss: Cocoon success stories

A one-of-a-kind session: the stage will be shared by speakers from all around the world coming to Gent to show and tell their latest achievements with Cocoon. People attending will get back home with enough material to convince even the most skeptical boss that Cocoon is the way to go!

Developing Enterprise Web Applications with Cocoon and Spring

The Spring Framework is a "lightweight" container based on the principles of Inversion of Control and Dependency Injection that aims to reduce the complexity of developing enterprise Java applications.

The presentation will focus on how Cocoon and Spring can be used together to provide a powerful web application development. It will demonstrate the usage of best practices (separation of concerns, layering, testability, etc.) and of patterns of enterprise application architecture (Application Controller, Domain Model, Lazy Load, Serialized LOB, Service Layer, Two Step View, Optimistic Locking, etc.) in the context of real-world applications.

Using a hands-on approach, it will introduce the following techniques:

  • Finding and invoking Spring-managed services from Cocoon.
  • Using Aspect Oriented Programming to provide transparency and declarative transaction management.
  • Using Object-Relational mappers to bridge the O-R gap.

In the end, we aim to demonstrate how the development of Java enterprise web applications can be made simpler and more effective with the right combination of patterns and Open Source tools.

Open Source CMS shootout

Two new Open Source CMS projects, based on or related to Cocoon, get in the boxing ring and give an elevator-pitched showdown of their unique propositions. Expect friendly fighting and a no-nonsense approach towards solving real-world CMS problems.

Cocoon Projects: Best Practices

In this session Jeremy will present some suggestions for how to develop a Cocoon-based application, based on past experiences and tips collated from various colleagues. The session will cover best practice for setting up and configuring Cocoon, building applications within it, testing and deploying the applications, and working within an Open Source context. The contents of the session will also be made available in the Cocoon wiki, where hopefully it will be collaboratively improved during the session and in the future.

Supporting non-Latin character sets with Cocoon

Working with non-Latin character sets (such as Russian, Arabian / Persian, Japanese, Korean or Chinese) isn't as easy as just using UTF-8 all over the place. This presentation will dissipate every doubt when it comes to using non-Latin alphabets for web sites and publications.

Copyright (C) 2003 - Orixo - All rights reserved - info@orixo.com