CINXE.COM

Cocoon Features

<div style='font-size:x-large;padding:15px;color:white;background:red;z-index:99;'> This project has retired. For details please refer to its <a style='color:white;text-decoration:underline' href="https://attic.apache.org/projects/cocoon.html"> Attic page</a>. </div><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta content="Apache Forrest" name="Generator"> <meta name="Forrest-version" content="0.9-dev"> <meta name="Forrest-skin-name" content="pelt"> <title>Cocoon Features</title> <link type="text/css" href="../skin/basic.css" rel="stylesheet"> <link media="screen" type="text/css" href="../skin/screen.css" rel="stylesheet"> <link media="print" type="text/css" href="../skin/print.css" rel="stylesheet"> <link type="text/css" href="../skin/profile.css" rel="stylesheet"> <script src="../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../skin/fontsize.js" language="javascript" type="text/javascript"></script> <link rel="shortcut icon" href="../images/cocoon.ico"> </head> <body onload="init()"> <script type="text/javascript">ndeSetTextSize();</script> <div id="top"> <!--+ |breadtrail +--> <div class="breadtrail"> <a href="http://www.apache.org/">apache</a> &gt; <a href="http://cocoon.apache.org/">cocoon</a><script src="../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script> </div> <!--+ |header +--> <div class="header"> <!--+ |start group logo +--> <div class="grouplogo"> <a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="../images/cocoon-project-logo.png" title="The Apache Software Foundation"></a> </div> <!--+ |end group logo +--> <!--+ |start Project Logo +--> <div class="projectlogo"> <a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../images/cocoon-logo.gif" title="Apache Cocoon"></a> </div> <!--+ |end Project Logo +--> <!--+ |start Search +--> <div class="searchbox"> <form action="http://www.google.com/search" method="get" class="roundtopsmall"> <input value="cocoon.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; <input name="Search" value="Search" type="submit"> </form> </div> <!--+ |end search +--> <!--+ |start Tabs +--> <ul id="tabs"> <li> <a class="unselected" href="http://cocoon.apache.org/">Home</a> </li> </ul> <!--+ |end Tabs +--> </div> </div> <div id="main"> <div id="publishedStrip"> <!--+ |start Subtabs +--> <div id="level2tabs"></div> <!--+ |end Endtabs +--> <script type="text/javascript"><!-- document.write("Last Published: " + document.lastModified); // --></script> </div> <!--+ |breadtrail +--> <div class="breadtrail"> &nbsp; </div> <!--+ |start Menu, mainarea +--> <!--+ |start Menu +--> <div id="menu"> <div onclick="SwitchMenu('menu_selected_1.1', '../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../skin/images/chapter_open.gif');">About</div> <div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;"> <div class="menuitem"> <a href="../2.1/index.html">Index</a> </div> <div class="menupage"> <div class="menupagetitle">Features</div> </div> <div class="menuitem"> <a href="../2.1/news.html">News</a> </div> <div class="menuitem"> <a href="../2.1/license.html">License</a> </div> <div class="menuitem"> <a href="http://cocoon.apache.org/mirror.html">Download</a> </div> </div> <div onclick="SwitchMenu('menu_1.2', '../skin/')" id="menu_1.2Title" class="menutitle">Documentation</div> <div id="menu_1.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/introduction.html">Introduction</a> </div> <div onclick="SwitchMenu('menu_1.2.2', '../skin/')" id="menu_1.2.2Title" class="menutitle">Tracks</div> <div id="menu_1.2.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/tracks/index.html">Introduction</a> </div> <div class="menuitem"> <a href="../2.1/tracks/first-steps-track.html">First steps</a> </div> <div class="menuitem"> <a href="../2.1/tracks/web-publishing-track.html">Web publishing</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.3', '../skin/')" id="menu_1.2.3Title" class="menutitle">Installation</div> <div id="menu_1.2.3" class="menuitemgroup"> <div class="menuitem"> <a href="http://cocoon.apache.org/mirror.html">Download</a> </div> <div class="menuitem"> <a href="../2.1/installing/index.html">Intro</a> </div> <div class="menuitem"> <a href="../2.1/installing/requirements.html">System requirements</a> </div> <div class="menuitem"> <a href="../2.1/installing/updating-older.html">Updating to version 2.1.5</a> </div> <div class="menuitem"> <a href="../2.1/installing/jars.html">Jars</a> </div> </div> <div class="menuitem"> <a href="../2.1/overview.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5', '../skin/')" id="menu_1.2.5Title" class="menutitle">User Guide</div> <div id="menu_1.2.5" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/index.html">User Documentation</a> </div> <div onclick="SwitchMenu('menu_1.2.5.2', '../skin/')" id="menu_1.2.5.2Title" class="menutitle">Concepts</div> <div id="menu_1.2.5.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/concepts/index.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.2.2', '../skin/')" id="menu_1.2.5.2.2Title" class="menutitle">Sitemap</div> <div id="menu_1.2.5.2.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/concepts/sitemap.html">Section Home</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/sitemap/sitemap-examples.html">Example sitemap snippets</a> </div> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/views.html">Views</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/caching.html">Caching</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/actions.html">Actions</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/matchers_selectors.html">Matchers and Selectors</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/catalog.html">Entity Catalogs</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/mrustore.html">MRUMemoryStore</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/persistence.html">Persistence</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/storejanitor.html">StoreJanitor</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/xmlsearching.html">XML Searching</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/validation.html">XML Validation</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/databases.html">Databases</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/modules.html">Modules</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/modules-ref.html">Modules Reference</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/redirection.html">Redirection</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/profiler.html">Profiler</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/concepts/errorhandling.html">Error Handling</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3', '../skin/')" id="menu_1.2.5.3Title" class="menutitle">Sitemap Components</div> <div id="menu_1.2.5.3" class="menuitemgroup"> <div onclick="SwitchMenu('menu_1.2.5.3.1', '../skin/')" id="menu_1.2.5.3.1Title" class="menutitle">Generators</div> <div id="menu_1.2.5.3.1" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/generators.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.1.2', '../skin/')" id="menu_1.2.5.3.1.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.1.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/file-generator.html">File Generator</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.1.3', '../skin/')" id="menu_1.2.5.3.1.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.1.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/calendar-generator.html">Calendar Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/directory-generator.html">Directory Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/file-generator.html">File Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/imagedirectory-generator.html">Imagedirectory Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/jx-generator.html">Jx Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/linkstatus-generator.html">Linkstatus Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/mp3directory-generator.html">MP3directory Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/error-generator.html">Notifying Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/request-generator.html">Request Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/sessionattribute-generator.html">SessionAttribute Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/status-generator.html">Status Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/stream-generator.html">Stream Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xpathdirectory-generator.html">Xpathdirectory Generator</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.1.4', '../skin/')" id="menu_1.2.5.3.1.4Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.1.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/extractor-generator.html">Fragment Extractor Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/html-generator.html">HTML Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/jsp-generator.html">JSP Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/php-generator.html">PHP Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/profile-generator.html">Profile Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/script-generator.html">Script Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/search-generator.html">Search Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/serverpages-generator.html">Server Pages Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/velocity-generator.html">Velocity Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/wsproxy-generator.html">Web Service Proxy Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xmldbcollection-generator.html">XML:DB Collection Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xmldb-generator.html">XML:DB Generator</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.2', '../skin/')" id="menu_1.2.5.3.2Title" class="menutitle">Transformers</div> <div id="menu_1.2.5.3.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/transformers.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.2.2', '../skin/')" id="menu_1.2.5.3.2.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.2.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/xslt-transformer.html">XSLT Transformer</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.2.3', '../skin/')" id="menu_1.2.5.3.2.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.2.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/extractor-transformer.html">Fragment Extractor Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/i18nTransformer.html">I18n Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/jpath-transformer.html">JPath Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/log-transformer.html">Log Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/filter-transformer.html">Filter Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/readdomsession-transformer.html">Read DOM Session Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/rolefilter-transformer.html">RoleFilter Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/simpleform-transformer.html">SimpleForm Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/simpleforminstance-transformer.html">SimpleFormInstance Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/writedomsession-transformer.html">Write DOM Session Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xinclude-transformer.html">Xinclude Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/cinclude-transformer.html">Cinclude Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/encodeurl-transformer.html">EncodeUrl Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/sourcewriting-transformer.html">Sourcewriting Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/augment-transformer.html">Augment Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/jx-template-transformer.html">JX Template Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xslt-transformer.html">XSLT Transformer</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.2.4', '../skin/')" id="menu_1.2.5.3.2.4Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.2.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/ldap-transformer.html">LDAP Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/lexer-transformer.html">Lexical Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/parser-transformer.html">Parser Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/pattern-transformer.html">Pattern Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/session.html">Session Transformer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/sql-transformer.html">SQL Transformer</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.3', '../skin/')" id="menu_1.2.5.3.3Title" class="menutitle">Serializers</div> <div id="menu_1.2.5.3.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/serializers.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.3.2', '../skin/')" id="menu_1.2.5.3.3.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.3.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/html-serializer.html">HTML Serializer</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.3.3', '../skin/')" id="menu_1.2.5.3.3.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.3.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/html-serializer.html">HTML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xhtml-serializer.html">XHTML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xml-serializer.html">XML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/text-serializer.html">Text Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/wap-serializer.html">WAP/WML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/svg-serializer.html">SVG Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/svgxml-serializer.html">SVG/XML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/svgjpeg-serializer.html">SVG/JPEG Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/svgpng-serializer.html">SVG/PNG Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/svgtiff-serializer.html">SVG/TIFF Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/vrml-serializer.html">VRML Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/link-serializer.html">Link Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/ziparchive-serializer.html">Zip archive Serializer</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.3.4', '../skin/')" id="menu_1.2.5.3.3.4Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.3.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/pdf-serializer.html">PDF Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/ps-serializer.html">PS Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/pcl-serializer.html">PCL Serializer</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xls-serializer.html">HSSF (XLS) Serializer</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.4', '../skin/')" id="menu_1.2.5.3.4Title" class="menutitle">Matchers</div> <div id="menu_1.2.5.3.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/matchers.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.4.2', '../skin/')" id="menu_1.2.5.3.4.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.4.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/wildcarduri-matcher.html">WildCard URI Matcher</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.4.3', '../skin/')" id="menu_1.2.5.3.4.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.4.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/core/wildcarduri-matcher.html">WildCard URI Matcher</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/core/wildcardheader-matcher.html">WildCard Header Matcher</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.4.4', '../skin/')" id="menu_1.2.5.3.4.4Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.4.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/optional/template-matcher.html">Template Matcher</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.5', '../skin/')" id="menu_1.2.5.3.5Title" class="menutitle">Selectors</div> <div id="menu_1.2.5.3.5" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/selectors.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.5.2', '../skin/')" id="menu_1.2.5.3.5.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.5.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/browser-selector.html">Browser Selector</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.5.3', '../skin/')" id="menu_1.2.5.3.5.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.5.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/browser-selector.html">Browser Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/host-selector.html">Host Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/parameter-selector.html">Parameter Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/requestattribute-selector.html">Request Attribute Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/requestmethod-selector.html">Request Method Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/requestparameter-selector.html">Request Parameter Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/resourceexists-selector.html">Resource Exists Selector</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/regular-expression-header-selector.html">Regular-expression Header Selector</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.5.4', '../skin/')" id="menu_1.2.5.3.5.4Title" class="menutitle">Scratchpad</div> <div id="menu_1.2.5.3.5.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/scratchpad/date-selector.html">Date Selector</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.6', '../skin/')" id="menu_1.2.5.3.6Title" class="menutitle">Actions</div> <div id="menu_1.2.5.3.6" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/actions.html">Overview</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/database-actions.html">Database</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.6.3', '../skin/')" id="menu_1.2.5.3.6.3Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.6.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/optional/sendmail-action.html">Sendmail Action</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/optional/session-action.html">Session Action</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/optional/script-action.html">Script Action</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.7', '../skin/')" id="menu_1.2.5.3.7Title" class="menutitle">Readers</div> <div id="menu_1.2.5.3.7" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/readers.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.3.7.2', '../skin/')" id="menu_1.2.5.3.7.2Title" class="menutitle">Default</div> <div id="menu_1.2.5.3.7.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/default/resource-reader.html">Resource Reader</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.7.3', '../skin/')" id="menu_1.2.5.3.7.3Title" class="menutitle">Core</div> <div id="menu_1.2.5.3.7.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/core/image-reader.html">Image Reader</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/core/resource-reader.html">Resource Reader</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.7.4', '../skin/')" id="menu_1.2.5.3.7.4Title" class="menutitle">Optional</div> <div id="menu_1.2.5.3.7.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/optional/axisrpc-reader.html">AxisRPC Reader</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/optional/database-reader.html">Database Reader</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/optional/jsp-reader.html">JSP Reader</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.3.7.5', '../skin/')" id="menu_1.2.5.3.7.5Title" class="menutitle">Scratchpad</div> <div id="menu_1.2.5.3.7.5" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/scratchpad/directoryziparchiver-reader.html">Directory ZIP Archiver</a> </div> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.4', '../skin/')" id="menu_1.2.5.4Title" class="menutitle">Flow</div> <div id="menu_1.2.5.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/flow/index.html">Introduction</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/continuations.html">Continuations</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/how-does-it-work.html">How does it work?</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/using.html">Usage</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/tutor.html">Tutorial</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/sitemap.html">Sitemap</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/api.html">Flowscript</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/java.html">Calling Java</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/views.html">Views</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/jxtemplate.html">JXTemplate</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/jpath.html">JPath</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/flow/velocity.html">Velocity</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.5', '../skin/')" id="menu_1.2.5.5Title" class="menutitle">Cocoon Forms</div> <div id="menu_1.2.5.5" class="menuitemgroup"> <div onclick="SwitchMenu('menu_1.2.5.5.1', '../skin/')" id="menu_1.2.5.5.1Title" class="menutitle">Basics</div> <div id="menu_1.2.5.5.1" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/basics/index.html">Introduction</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/basics/sample.html">Sample</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/basics/improving_sample.html">Improving the sample</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.5.2', '../skin/')" id="menu_1.2.5.5.2Title" class="menutitle">Widgets</div> <div id="menu_1.2.5.5.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_form.html">form</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_field.html">field</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_multivaluefield.html">multivaluefield</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_booleanfield.html">booleanfield</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_repeater.html">repeater</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_output.html">output</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_submit.html">submit</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_action.html">action</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_repeater_action.html">repeater-action</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_row_action.html">row-action</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_aggregatefield.html">aggregatefield</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_upload.html">upload</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_messages.html">messages</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_imagemap.html">imagemap</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_tree.html">tree</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_group.html">group/struct</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_union.html">union</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgets/widget_class.html">class/new</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.5.3', '../skin/')" id="menu_1.2.5.5.3Title" class="menutitle">Widget Concepts</div> <div id="menu_1.2.5.5.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/widgetconcepts/validation.html">Validation</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgetconcepts/eventhandling.html">Event Handling</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgetconcepts/datatypes.html">Datatypes</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgetconcepts/selectionlists.html">Selection lists</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/widgetconcepts/widgetstates.html">Widget states</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.5.4', '../skin/')" id="menu_1.2.5.5.4Title" class="menutitle">Form Publishing</div> <div id="menu_1.2.5.5.4" class="menuitemgroup"> <div onclick="SwitchMenu('menu_1.2.5.5.4.1', '../skin/')" id="menu_1.2.5.5.4.1Title" class="menutitle">Templating</div> <div id="menu_1.2.5.5.4.1" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/publishing/templating.html">Section Home</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/publishing/templating/templategenerator.html">Template Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/publishing/templating/templatetransformer.html">Template Transformer</a> </div> </div> <div class="menuitem"> <a href="../2.1/userdocs/publishing/formsgenerator.html">Generator</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/publishing/xslt.html">XSLT</a> </div> </div> <div class="menuitem"> <a href="../2.1/userdocs/binding.html">Binding Framework</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xmlbinding.html">Simple XML Binding</a> </div> <div onclick="SwitchMenu('menu_1.2.5.5.7', '../skin/')" id="menu_1.2.5.5.7Title" class="menutitle">API</div> <div id="menu_1.2.5.5.7" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/api/api_javascript.html">Javascript (Flowscript)</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/api/api_java.html">Java</a> </div> </div> <div class="menuitem"> <a href="../2.1/userdocs/formlibraries.html">Form libraries</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/ajax.html">Ajax</a> </div> <div class="menuitem"> <a href="https://cwiki.apache.org/confluence/display/COCOON/Forms">Forms @ Wiki</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.6', '../skin/')" id="menu_1.2.5.6Title" class="menutitle">XSP</div> <div id="menu_1.2.5.6" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/index.html">Overview</a> </div> <div onclick="SwitchMenu('menu_1.2.5.6.2', '../skin/')" id="menu_1.2.5.6.2Title" class="menutitle">XSP</div> <div id="menu_1.2.5.6.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/xsp.html">Section Home</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xsp/logicsheet.html">XSP Guide</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xsp/xsp-internals.html">XSP Internals</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xsp/logicsheet-concepts.html">XSP Logicsheets</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/xsp/sessions.html">Sessions</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.6.3', '../skin/')" id="menu_1.2.5.6.3Title" class="menutitle">Logicsheets</div> <div id="menu_1.2.5.6.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/logicsheets/request.html">Request</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/logicsheets/session.html">Session</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/logicsheets/esql.html">ESQL</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/logicsheets/logicsheet-forms.html">Forms</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/logicsheets/sendmail.html">Sendmail</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.5.7', '../skin/')" id="menu_1.2.5.7Title" class="menutitle">Offline</div> <div id="menu_1.2.5.7" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/userdocs/offline/index.html">Overview</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/offline/cli.html">Command Line</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/offline/configuration.html">CLI Configuration</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/offline/ant.html">Ant</a> </div> <div class="menuitem"> <a href="../2.1/userdocs/offline/bean.html">Cocoon Bean</a> </div> </div> </div> <div onclick="SwitchMenu('menu_1.2.6', '../skin/')" id="menu_1.2.6Title" class="menutitle">Developer's Guide</div> <div id="menu_1.2.6" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/index.html">Index</a> </div> <div onclick="SwitchMenu('menu_1.2.6.2', '../skin/')" id="menu_1.2.6.2Title" class="menutitle">Concepts</div> <div id="menu_1.2.6.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/httprequest.html">Internals</a> </div> <div class="menuitem"> <a href="../2.1/developing/extending.html">Extending</a> </div> <div class="menuitem"> <a href="../2.1/developing/avalon.html">Avalon</a> </div> <div class="menuitem"> <a href="../2.1/developing/source.html">Source Handling</a> </div> <div class="menuitem"> <a href="../2.1/developing/stores.html">Stores</a> </div> <div class="menuitem"> <a href="../2.1/developing/datasources.html">Using Databases</a> </div> <div class="menuitem"> <a href="../2.1/developing/parent-component-manager.html">Parent CM</a> </div> <div class="menuitem"> <a href="../2.1/developing/deliquick.html">DELI Quick Start</a> </div> <div class="menuitem"> <a href="../2.1/developing/deli.html">DELI</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.6.3', '../skin/')" id="menu_1.2.6.3Title" class="menutitle">Developing Webapps</div> <div id="menu_1.2.6.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/webapps/index.html">Overview</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/session.html">Sessions</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/contexts.html">Session Contexts</a> </div> <div onclick="SwitchMenu('menu_1.2.6.3.4', '../skin/')" id="menu_1.2.6.3.4Title" class="menutitle">Authentication</div> <div id="menu_1.2.6.3.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication.html">Section Home</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/authentication-handler.html">The Authentication Handler</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/authenticating_user.html">Authenticating a User</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/user_management.html">User Management</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/application_management.html">Application Management</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/module_management.html">Module Management</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/user_administration.html">User Administration</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/summary.html">Configuration Summary</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/authentication/pipeline_patterns.html">Pipeline Patterns</a> </div> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/forms.html">Simple Forms</a> </div> <div class="menuitem"> <a href="../2.1/developing/webapps/portal.html">Portal FW</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.6.4', '../skin/')" id="menu_1.2.6.4Title" class="menutitle">Building a portal using the Portal Engine</div> <div id="menu_1.2.6.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/portal/index.html">Index</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/portal-block.html">Portal Engine</a> </div> <div onclick="SwitchMenu('menu_1.2.6.4.3', '../skin/')" id="menu_1.2.6.4.3Title" class="menutitle">Configuring Coplets</div> <div id="menu_1.2.6.4.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/developing/portal/coplets.html">Section Home</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/coplets/uricoplet.html">The URICoplet</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/coplets/cachinguricoplet.html">The CachingURICoplet</a> </div> </div> <div class="menuitem"> <a href="../2.1/developing/portal/layout_skins.html">Layout and Skins</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/events.html">Event Handling</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/profiles.html">Profiles</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/wsrp.html">WSRP Support</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/authentication.html">Authentication</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/forms.html">Form handling</a> </div> <div class="menuitem"> <a href="../2.1/developing/portal/basket.html">A Basket</a> </div> </div> <div class="menuitem"> <a href="../2.1/developing/web3.html">Connect to SAP R/3</a> </div> <div class="menuitem"> <a href="http://cocoon.apache.org/2.1/apidocs/index.html">API (Javadoc)</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.7', '../skin/')" id="menu_1.2.7Title" class="menutitle">Tutorials</div> <div id="menu_1.2.7" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/tutorial/index.html">Index</a> </div> <div class="menuitem"> <a href="../2.1/tutorial/tutorial-develop-webapp.html">WebApp</a> </div> <div class="menuitem"> <a href="../2.1/tutorial/tutorial-generator.html">Custom Generator</a> </div> <div class="menuitem"> <a href="../2.1/tutorial/tutorial-shots.html">Tutorial screenshots</a> </div> <div class="menuitem"> <a href="../2.1/tutorial/tutorial-rmi-generator.html">RMIServer</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.8', '../skin/')" id="menu_1.2.8Title" class="menutitle">FAQ</div> <div id="menu_1.2.8" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/faq/index.html">Index</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-install.html">Install</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-configure-environment.html">Configure</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-cvs.html">CVS/SVN</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-configure-c2.html">Configure C2</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-databases.html">Databases</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-xsp.html">XSP</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-xslt.html">XSLT</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-debugging.html">Debugging</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-sitemap.html">Sitemap</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-generators.html">Generators</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-transformers.html">Transformers</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-serializers.html">Serializers</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-matchers.html">Matchers</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-selectors.html">Selectors</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-actions.html">Actions</a> </div> <div class="menuitem"> <a href="../2.1/faq/faq-aggregators.html">Aggregators</a> </div> </div> <div onclick="SwitchMenu('menu_1.2.9', '../skin/')" id="menu_1.2.9Title" class="menutitle">How Tos</div> <div id="menu_1.2.9" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/howto/index.html">Index</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-explore-samples.html">Samples</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-paginator-transformer.html">Paginator</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-html-pdf-publishing.html">HTML-PDF</a> </div> <div class="menuitem"> <a href="../2.1/howto/wsproxy-generator.html">Web Syndication</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-flow-debugger.html">Flow Debugger</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-author-howto.html">Author How-To</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-author-faq-document.html">Author FAQ</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-author-snippet.html">Author Snippet</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-author-core-docs.html">Author Docs</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-patch.html">Prepare patch</a> </div> <div class="menuitem"> <a href="../2.1/howto/howto-bugzilla.html">Bugzilla</a> </div> </div> <div class="menuitem"> <a href="../2.1/performancetips.html">Performance</a> </div> <div onclick="SwitchMenu('menu_1.2.11', '../skin/')" id="menu_1.2.11Title" class="menutitle">Snippets</div> <div id="menu_1.2.11" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/snippet/index.html">Index</a> </div> <div class="menuitem"> <a href="../2.1/snippet/snippet-xslt-options.html">XSLT Processor Options</a> </div> <div class="menuitem"> <a href="../2.1/snippet/snippet-internal-pipeline.html">Internal Pipeline</a> </div> </div> <div class="menuitem"> <a href="https://cwiki.apache.org/confluence/display/COCOON/">Wiki Docs</a> </div> </div> <div onclick="SwitchMenu('menu_1.3', '../skin/')" id="menu_1.3Title" class="menutitle">Status</div> <div id="menu_1.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/changes.html">Changes</a> </div> <div class="menuitem"> <a href="../2.1/todo.html">To Do</a> </div> <div onclick="SwitchMenu('menu_1.3.3', '../skin/')" id="menu_1.3.3Title" class="menutitle">Planning Notes</div> <div id="menu_1.3.3" class="menuitemgroup"> <div onclick="SwitchMenu('menu_1.3.3.1', '../skin/')" id="menu_1.3.3.1Title" class="menutitle">Overview</div> <div id="menu_1.3.3.1" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/plan/overview/index.html">Planning Overview</a> </div> <div class="menuitem"> <a href="../2.1/plan/overview/roadmap.html">Roadmap</a> </div> </div> <div onclick="SwitchMenu('menu_1.3.3.2', '../skin/')" id="menu_1.3.3.2Title" class="menutitle">Documentation</div> <div id="menu_1.3.3.2" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/plan/documentation/doc.html">Overview</a> </div> <div class="menuitem"> <a href="../2.1/plan/documentation/linkstatus.html">Fix broken links</a> </div> </div> <div onclick="SwitchMenu('menu_1.3.3.3', '../skin/')" id="menu_1.3.3.3Title" class="menutitle">Other Planning</div> <div id="menu_1.3.3.3" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/plan/otherplanning/release.html">Release Plan</a> </div> <div class="menuitem"> <a href="../2.1/plan/otherplanning/samples.html">Cocoon Samples</a> </div> <div class="menuitem"> <a href="../2.1/plan/otherplanning/proposed-toc.html">Proposed TOC</a> </div> <div class="menuitem"> <a href="../2.1/plan/otherplanning/updating.html">Updating Cocoon</a> </div> </div> </div> <div class="menuitem"> <a href="http://issues.apache.org/jira/browse/COCOON">Patch queue</a> </div> </div> <div onclick="SwitchMenu('menu_1.4', '../skin/')" id="menu_1.4Title" class="menutitle">Community</div> <div id="menu_1.4" class="menuitemgroup"> <div class="menuitem"> <a href="../2.1/bylaws-addendum.html">Cocoon Bylaws</a> </div> <div class="menuitem"> <a href="../2.1/who.html">Hall of Fame</a> </div> <div class="menuitem"> <a href="../2.1/1177.html">Contributing</a> </div> <div class="menuitem"> <a href="../2.1/1175.html">Mail Lists</a> </div> <div class="menuitem"> <a href="../2.1/1171.html">Mail Archives</a> </div> </div> <div onclick="SwitchMenu('menu_1.5', '../skin/')" id="menu_1.5Title" class="menutitle">Project</div> <div id="menu_1.5" class="menuitemgroup"> <div class="menuitem"> <a href="http://issues.apache.org/jira/browse/COCOON">Bug Database</a> </div> <div class="menuitem"> <a href="http://svn.apache.org/viewcvs.cgi/cocoon/branches/BRANCH_2_1_X/?root=Apache-SVN">Code Repository</a> </div> <div class="menuitem"> <a href="http://cocoon.apache.org/mirror.html#nightly">Dev Snapshots</a> </div> </div> <div onclick="SwitchMenu('menu_1.6', '../skin/')" id="menu_1.6Title" class="menutitle">Other Releases</div> <div id="menu_1.6" class="menuitemgroup"> <div class="menuitem"> <a href="http://cocoon.apache.org/1.x/">Cocoon 1.x</a> </div> <div class="menuitem"> <a href="http://cocoon.apache.org/2.0/">Cocoon 2.0</a> </div> </div> <div onclick="SwitchMenu('menu_1.7', '../skin/')" id="menu_1.7Title" class="menutitle">External</div> <div id="menu_1.7" class="menuitemgroup"> <div class="menuitem"> <a href="https://cwiki.apache.org/confluence/display/COCOON/GT2005Hackaton">2005 Get Together</a> </div> </div> <div id="credit"></div> <div id="roundbottom"> <img style="display: none" class="corner" height="15" width="15" alt="" src="../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div> <!--+ |alternative credits +--> <div id="credit2"></div> </div> <!--+ |end Menu +--> <!--+ |start content +--> <div id="content"> <h1>Cocoon Features</h1> <div id="front-matter"></div> <a name="N10007"></a><a name="General+information"></a> <h2 class="h3">General information</h2> <div class="section"> <ul> <li>Apache Cocoon is a web development framework built around the concepts of component-based web development and separation of concerns, ensuring that people can interact and collaborate on a project without stepping on each other toes. </li> <li>Cocoon implements these concepts around the notion of <strong>component pipelines</strong>, each component on the pipeline specializing in a particular operation (usual pipeline uses a Generator, Transformers and a Serializer). This makes it possible to use a Lego(tm)-like approach in building web solutions, hooking together components into pipelines without requiring programming.</li> <li> <strong>Advanced Control Flow</strong>: continuation-based page flow hides the complexity of request/response processing and is cleanly separated from the view and data components.</li> <li>Cocoon is open source software (based on the <a description="" href="../2.1/license.html">Apache Software License</a>).</li> <li>Cocoon does not duplicate efforts but tightly integrates many technologies. </li> <li>Cocoon is in use at many live sites and on many company networks.</li> <li>Cocoon has a strong community, with many active developers and more than <a description="" href="../2.1/who.html">plenty of active committers</a>!</li> <li>There is free support from the thousands of people on our <a description="" href="http://cocoon.apache.org/community/mail-lists.html">mailing lists</a> and commercial support is available from various companies and consultants. </li> <li>There are many Cocoon sessions at different conferences: <ul> <li> <a class="external" href="http://www.orixo.com/events/gt2003/">Cocoon GetTogether</a> </li> <li> <a class="external" href="http://apachecon.com/">ApacheCon</a> </li> <li> <a class="external" href="http://cocoon.ifs.tuwien.ac.at/">Austrian Cocoon Day</a> </li> <li> <a class="external" href="http://www.wjax.de/">WJAX</a> </li> <li> <a class="external" href="http://www.jax2003.de/">JAX</a> </li> </ul> </li> <li>To get started see the <a description="" href="../2.1/tracks/first-steps-track.html">"first steps" documentation track</a>. Basically you only need to <a description="" href="http://cocoon.apache.org/mirror.html">download</a> Cocoon, unpack it and follow the simple INSTALL.txt instructions. A minimal version of the Jetty servlet container is included with Cocoon.</li> </ul> </div> <a name="N1006A"></a><a name="Usage+scenarios"></a> <h2 class="h3">Usage scenarios</h2> <div class="section"> <p>As you would expect, all of these scenarios can be combined.</p> <ul> <li>Dynamic multi-channel web publishing (see below for the possible datasources and output formats)</li> <li>Create static content (automatically) by separating data from view</li> <li>Offline generation modes with Cocoon's own <a description="" href="userdocs/offline/">offline facilities</a>: command-line interface (CLI), ant task, bean. Also with <a class="external" href="http://forrest.apache.org/">Apache Forrest</a> which utilises Cocoon.</li> <li>Dynamic document preparation with <a class="external" href="http://forrest.apache.org/">Apache Forrest</a>, the '<tt>forrest run</tt>' mode. Use many different data input formats, see the transformed result immediately in the browser.</li> <li>Advanced web applications with J2EE integration (with separation of your data, the view and the <a description="" href="../2.1/userdocs/flow/index.html">flow logic</a> --&gt; this really means you can change one of the parts without touching another)</li> <li>Develop your company portal using the Cocoon Portal framework</li> <li>Support multiple clients, layouts and languages (i18n) without code duplication</li> <li>Integrate Cocoon with your existing web applications or use it to put a better face on them (page scraping)</li> <li>Add full-text search to any datasource that can be converted to XML (see below)</li> <li>Use Cocoon as the base for Enterprise Application Integration (EAI)</li> <li>Use Cocoon as the base for your Content Management System (CMS) (see <a description="" href="http://cocoon.apache.org/lenya/">Apache Lenya</a> for a Cocoon based CMS)</li> <li>Use Cocoon for producing mobile content (mobile phones, pdas)</li> <li>Datawarehouse reporting across multiple formats (see xReporter)</li> </ul> </div> <a name="N100B5"></a><a name="Connect+your+datasources"></a> <h2 class="h3">Connect your datasources</h2> <div class="section"> <p>Out of the box, the following data can be converted to XML to be processed by Cocoon pipelines.</p> <ul> <li>XML Files</li> <li>XML based (Web) services</li> <li>RDBMS (via <a class="external" href="http://java.sun.com/products/jdbc/">JDBC</a>, including connection pooling)</li> <li>XML databases</li> <li>SAP (r) Systems by adding the SAP JavaConnector see <a class="external" href="http://service.sap.com/connectors/">http://service.sap.com/connectors/</a> (accessible for all SAP (r) customers)</li> <li> <a class="external" href="http://www.webdav.org/">WebDAV</a> </li> <li>CVS (supported by the external project <a class="external" href="http://cocoondev.org/projects/cvssource.html">CVSSource</a>)</li> <li>Text-based file formats, either using the integrated <a class="external" href="http://chaperon.sourceforge.net/">Chaperon </a> parser for a yacc-like approach to parsing, or the "slop" component (Simple Line Oriented Parser). </li> <li> <a class="external" href="http://jakarta.apache.org/velocity/">Velocity templates</a> </li> <li> <a description="" href="../2.1/userdocs/flow/jxtemplate.html">JXPath/Jexl templates</a> </li> <li> <a description="" href="../2.1/userdocs/index.html">eXtensible Server Pages (XSP)</a> with wide range of logicsheets (database, mailing, ...)</li> <li> <a class="external" href="http://www.jython.org/">Python (Jython</a>) and generic <a class="external" href="http://jakarta.apache.org/bsf/">BSF support</a> </li> <li> <a class="external" href="http://java.sun.com/products/jsp/">JSP</a> </li> <li>Filesystem (traversing directory hierarchies)</li> <li>Any information provided by environment (request, session)</li> <li> <a class="external" href="http://www.macromedia.com/">Flash</a> </li> <li> <a class="external" href="http://www.palserv.com/XMidi/">XMidi</a> </li> <li> <a class="external" href="http://www.ietf.org/rfc/rfc1777.txt?number=1777">LDAP - Lightweight Directory Access Protocol</a> </li> <li>Easily aggregate different datasources</li> </ul> </div> <a name="N1012B"></a><a name="Transform+your+XML+based+on+standards"></a> <h2 class="h3">Transform your XML based on standards</h2> <div class="section"> <ul> <li> <a class="external" href="http://www.w3.org/TR/xslt">XSLT</a> (The default XSLT-Engine is Apache Xalan, XSLTC is included in the Cocoon distribution, other XSLT-Engines like Saxon can be easily integrated)</li> <li> <a class="external" href="http://stx.sourceforge.net/documents/spec-stx-20030505.html">STX (Streaming Transformations for XML)</a> </li> <li> <a class="external" href="http://www.w3.org/TR/xinclude/">XInclude</a> with <a class="external" href="http://www.w3.org/TR/xptr/">XPointer</a> framework support</li> </ul> </div> <a name="N1014A"></a><a name="Serialize+your+XML+to+various+output+formats"></a> <h2 class="h3">Serialize your XML to various output formats</h2> <div class="section"> <ul> <li> <a class="external" href="http://www.w3.org/XML/">XML</a> </li> <li> <a class="external" href="http://www.w3.org/MarkUp/">HTML</a> </li> <li> <a class="external" href="http://www.w3.org/XHTML/">XHTML</a> </li> <li> <a class="external" href="http://www.adobe.com/products/acrobat/adobepdf.html">PDF</a> </li> <li> <a class="external" href="http://www.openoffice.org/">OpenOffice.org/StarOffice</a> </li> <li>MS Excel</li> <li> <a class="external" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnrtfspec/html/rtfspec.asp">RTF</a> </li> <li>Postscript</li> <li>Charts (see external project <a class="external" href="http://www.cocoondev.org/projects/fins.html">Fins</a>)</li> <li> <a class="external" href="http://www.macromedia.com/">Flash</a> </li> <li>Plain text</li> <li> <a class="external" href="http://www.w3.org/TR/SVG/">Scalable Vector Graphics (SVG)</a> </li> <li>MIDI</li> <li>ZIP archives</li> </ul> </div> <a name="N10199"></a><a name="What+else+we+can+do+for+you"></a> <h2 class="h3">What else we can do for you</h2> <div class="section"> <ul> <li>Coexist and interoperate side-by-side with your existing J2EE solutions (<a class="external" href="http://java.sun.com/products/ejb/">EJB</a>, <a class="external" href="http://java.sun.com/products/jms/">JMS</a>, ...)</li> <li>Build your <a description="" href="../2.1/developing/portal/index.html">Portals</a> based on Cocoon</li> <li>Scheduler - Run background tasks for maintenance, etc.</li> <li>Caching on many levels</li> <li>Integrated search engine (using <a class="external" href="http://jakarta.apache.org/lucene/">Lucene</a>)</li> <li> <a description="" href="../2.1/developing/deli.html">DELI</a> (detect client configuration)</li> <li>Catalog Entity Resolver to map to local copies of DTDs and other resources </li> <li>Publish your own WebServices (<a class="external" href="http://xml.apache.org/axis/">Apache Axis</a> is integrated)</li> <li> <a class="external" href="http://java.sun.com/products/javamail/">Java Mail</a> support</li> <li>Easy integration of object-relational frameworks (<a class="external" href="http://db.apache.org/ojb/">OJB</a>, <a class="external" href="http://www.hibernate.org/">Hibernate</a>, ...)</li> <li>I18n support (translation support)</li> <li>Easily extensible by clear interfaces (write your own components following <a class="external" href="http://avalon.apache.org/">Avalon</a> patterns)</li> <li>Many, many examples and samples</li> <li>Configurable build mechanism based on <a class="external" href="http://ant.apache.org/">Ant</a> (you decide which parts of Cocoon you need)</li> <li>Integration of Java data binding frameworks (<a class="external" href="http://www.castor.org/">Castor</a>, <a class="external" href="http://jakarta.apache.org/commons/betwixt/">Betwixt</a>)</li> </ul> </div> <a name="N1020B"></a><a name="Form+handling+frameworks"></a> <h2 class="h3">Form handling frameworks</h2> <div class="section"> <ul> <li>Enhanced form handling with strong validation through <a description="" href="../2.1/userdocs/basics/index.html">Cocoon Forms</a> </li> <li>Easy integration of (future) <a class="external" href="http://www.w3.org/TR/xforms/">XForms</a> clients</li> </ul> </div> <a name="N10220"></a><a name="Cocoon+deployment+and+integration"></a> <h2 class="h3">Cocoon deployment and integration</h2> <div class="section"> <ul> <li>Cocoon can be run in every servlet container or J2EE application server that supports Java Servlets 2.2 and above, e.g. <a class="external" href="http://jakarta.apache.org/tomcat/">Tomcat</a>, <a class="external" href="http://jetty.mortbay.org/jetty/">Jetty</a>, <a class="external" href="http://www.jboss.org/">JBoss</a> <a class="external" href="http://www.macromedia.com/software/jrun/">JRun</a>, <a class="external" href="http://www.caucho.com/">Resin</a>, <a class="external" href="http://www.ibm.com/software/webservers/">Websphere</a>, <a class="external" href="http://www.bea.com/">Weblogic</a>, ...</li> <li>Command line execution, without requiring a servlet container</li> <li>Embeddable in any Java application</li> </ul> <div class="daisy-edit-link"> <p> <em>Errors and Improvements?</em> If you see any errors or potential improvements in this document please help us: <a class="external" href="http://cocoon.zones.apache.org/daisy/legacydocs/651"> View, Edit or comment on </a> the latest development version (registration required). </p> </div> </div> </div> <!--+ |end content +--> <div class="clearboth">&nbsp;</div> </div> <div id="footer"> <!--+ |start bottomstrip +--> <div class="lastmodified"> <script type="text/javascript"><!-- document.write("Last Published: " + document.lastModified); // --></script> </div> <div class="copyright"> Copyright &copy; 1999-2005 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a> </div> <div id="feedback"> Send feedback about the website to: <a id="feedbackto" href="mailto:dev@cocoon.apache.org?subject=[WEBSITE]%C2%A02.1/features.html">dev@cocoon.apache.org</a> </div> <!--+ |end bottomstrip +--> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10