Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

Basic web application development with Apache Cocoon 2.1

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio

Eche un vistazo a continuación

1 de 21 Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

Anuncio

Similares a Basic web application development with Apache Cocoon 2.1 (20)

Más reciente (20)

Anuncio

Basic web application development with Apache Cocoon 2.1

  1. 1. Basic web application development with Apache Cocoon 2.1 Jasha Joachimsthal (jasha@hippo.nl) Jeroen Reijn (j.reijn@hippo.nl) 4 May 2007 Amsterdam, The Netherlands Basic web application development with Apache Cocoon
  2. 2. Are you using Cocoon? Basic web application development with Apache Cocoon
  3. 3. Agenda • What is Cocoon? • A bit of history • Cocoon basics • Demo • Why Cocoon? • Future of Cocoon • Q&A Basic web application development with Apache Cocoon
  4. 4. What is Cocoon all about? • Web development framework • Java & XML • Separation of Concerns (SoC) • Content transformation • Dynamic multi-channel publishing • Inter-operability with other Java projects (Lucene, FOP, Spring, Hibernate, etc.) Basic web application development with Apache Cocoon
  5. 5. History • Cocoon 1 – Started in Jan. 1999 by Stefano Mazzocchi – Simple servlet for XSL styling of XML • Cocoon 2 – Rewrite for performance and scalability – More than just XSL transformations Basic web application development with Apache Cocoon
  6. 6. Connectivity Collect data from multiple resources • Filesystem • SOAP webservice • LDAP • Databases (XML, SQL, Object) • WebDAV • XML feed If that's not enough, use your current code in Cocoon from • JSF • JSP Basic web application development with Apache Cocoon
  7. 7. Connectivity Basic web application development with Apache Cocoon
  8. 8. Cocoon basics • Sitemap • Forms framework • Flow • Caching Basic web application development with Apache Cocoon
  9. 9. Sitemap • XML configuration file • Request handling • Where everything comes together Basic web application development with Apache Cocoon
  10. 10. Sitemap components • Pipelines <map:sitemap> <map:components> • Matchers <map:pipes/> • Generators <map:matchers/> <map:generators/> <map:transformers/> • Transformers <map:serializers/> <map:readers/> • Serializers </map:components> • Readers </map:sitemap> Basic web application development with Apache Cocoon
  11. 11. Pipelines • Contain matchers for (requested) URI Example Basic web application development with Apache Cocoon
  12. 12. Pipeline example <map:pipeline> <map:match pattern="body-**.html"> <map:generate type="file" src="{1}.xml"/> <map:transform type="xslt" src="doc2html.xsl"/> <map:serialize type="html"/> </map:match> </map:pipeline> Basic web application development with Apache Cocoon
  13. 13. Cocoon Forms framework • Create forms • Ajax / Dojo • Model • Template • Binding (bean or xml) Basic web application development with Apache Cocoon
  14. 14. Go with the flow • Continuations • Rhino (Javascript) • JavaFlow Basic web application development with Apache Cocoon
  15. 15. Caching • Think about how you design your web application. • Four kinds of caching • Apache mod_cache Basic web application development with Apache Cocoon
  16. 16. Demo • Let’s show some stuff! Basic web application development with Apache Cocoon
  17. 17. Why Cocoon? • Powerful multi-channel publishing • Inter-operability • Active community – 20+ active committers (60+ overall) – 5500 mails on userlist in 2006 – Annual GetTogether (100+ people) Basic web application development with Apache Cocoon
  18. 18. Future • Cocoon 2.2 – Dependency management (M2) – Spring-based framework – Modularity • Cocoon 3? Basic web application development with Apache Cocoon
  19. 19. Resources • Website: – http://cocoon.apache.org/ • Mailinglists: – users@cocoon.apache.org – dev@cocoon.apache.org • Wiki: – http://wiki.apache.org/cocoon/ Basic web application development with Apache Cocoon
  20. 20. Q&A? • Any questions? Basic web application development with Apache Cocoon
  21. 21. Latest version http://people.apache.org/~jreijn/apachecon.html • Presentation • Demo sources Basic web application development with Apache Cocoon

Notas del editor

  • Cocoon has not always been this way, but has increased in the number of features over the years.
  • {1} represents the value of the ** in the match pattern
  • Model: The form model is defined by a form definition. This is an XML file describing the structure of the form. Template: The presentation of the form is (usually) handled by a form template. The form template is an XML file (e.g. an XHTML file, but this could be any markup). Binding: To fill the form with data from a bean or XML document, a binding framework is available.
  • Picture taken from: http://www.flickr.com/photos/mell242/46500577/ A continuation is a representation of some of the execution state of a program at a certain time.
  • A very cool demonstration of the power of Cocoon
  • Cocoon 2.1: Ant, Avalon-based

×