Cocoon es un sistema de publicaci�n Web, basado en XML/XSL. Cuenta con desarrollo total en Java por lo cual se puede ejecutar desde cualquier servidor que pueda contener Servlets; y al ser un Servlet cuenta con las ventajas de �stos, es decir, se ejecutan como threads de forma simult�nea en el mismo contexto y no tienen que llamar a m�todos auxiliares como lo hacen tecnolog�as del estilo CGI.
Cocoon es Open Source. Es bastante configurable y personalizable. Adem�s adopta caracter�sticas para escribir p�ginas de servidor en XML (XSPs). Permite diferenciar el procesamiento del documento para tenerlo en distintos formatos, dependiendo del tipo de software que hace la petici�n y cuenta con un sistema de cach� para tener un mejor rendimiento. Un elemento adicional y clave para tener en cuenta es que es un producto gratuito y por lo tanto no tendr� que gastar dinero para su adquisici�n.
Su usted desea separar contenido, presentaci�n y l�gica en su aplicaci�n, una buena alternativa es adoptar Cocoon.
Cuando un usuario hace una solicitud, en Cocoon ocurren una serie de fases que consisten en:
El usuario solicita un documento de cualquier tipo al servidor.
La solicitud se analiza para concluir si se puede atender o no. Si no se puede atender se produce un mensaje de error.
Si se puede atender se analiza a qu� productor XML corresponde. Se genera un documento XML con el cual se trabajar�.
Se extraen las instrucciones del XML generado en el paso anterior y �stas se le pasan al procesador apropiado para que se le apliquen al XML. Al procesar el XML podr�a salir un XML con m�s instrucciones que ser�n tratadas en alg�n otro ciclo.
El XML procesado se le pasa al elemento que aplica el formato. Si el documento es un documento final,XML aplica el formato y le env�a el documento formateado al cliente. En el caso que el documento XML procesado, sea c�digo que deba ejecutarse (como en el caso de una XSP ya compilada), �ste se pasa como productor de XML y se vuelve a procesar hasta que se llega a un documento XML final.