cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Ziegeler" <>
Subject [Announcement] Apache Cocoon 2.0.2 Release
Date Tue, 26 Mar 2002 08:51:19 GMT
Apache Cocoon 2.0.2 Released

   The Apache Cocoon team is proud to announce the new release
   of Apache Cocoon.

    Apache Cocoon is an XML framework that raises the usage of
    XML and XSLT technologies for server applications to a new level.
    Designed for performance and scalability around pipelined SAX
    processing, Cocoon offers a flexible environment based on the
    separation of concerns between content, logic and style.
    A centralized configuration system and sophisticated caching
    top this all off and help you to create, deploy and maintain
    rock-solid XML server applications.

    Today, most web engineers consider XML as the key for an improved
    web model and web site managers see XML as a way to reduce costs
    and ease production. In an era where services rather than software
    will be key for economic success, a better and less expensive model
    for web publishing will be a winner, especially one based on open

    This release of Cocoon is a maintainance release focusing on
    improved performance and robustness. In addition some bugs were
    fixed and new features were added. See the following changes list
    for more information.

For more information about Apache Cocoon 2.0.2, please go to

Changes with Apache Cocoon 2.0.2

*) New BootstrapServlet to allow Cocoon torun in non-compliant servlet
engines that don't handle correctly servlet contexts. This servlet builds a
class loader with the contents of WEB-INF/classes and WEB-INF/lib and
manages resource resolution. [SW]

*) Updated error reporting to add line, column and location attributes
specified in SAXException and TransformerException. The error page in the
webapp examples shows the new extra info. [NKB]

*) Added new "gump" target to the build, to be used as a general test of
Cocoon code. To be used by Gump. It calls docs, javadocs, test and package.
Gump descriptor has been modified to use it; now we also have automatic
javadoc creation. [NKB]

*) cocoon.xconf is moved in WEB-INF for security reasons. The documentation
has been updated to reflect the change. [NKB]

*) Partial commit of new samples structure. Samples go in samples/ dir with
theit own sitemap. All scratchpad samples that are in the samples/ subdir
are copied in webapp samples automatically by installscratchpadwar target.

*) New "set-content-length" configuration for FOPSerializer to allow
streaming of large PDFs (default is true for backwards compatibility). [SW]

*) The docs now have svg stuff removed and these enhancements: menu items
are in text, page title is in text, pages have new clean style courtesy of
Stefano, added Stefano's explanation on how to write mails, the docs are
generated with the TreeProcessor, the docs generation uses JispStore. [NKB]

*) Added new targets: "installwar" asks for the directory in which to put
the war and makes it. "installscratchpadwar" does the same but incudes
scratchpad libs ans samples. [NKB]

*) New POI HSSF Serializer; outputs to the .xls (not .xsl) file format.
Added samples as legacy file format support. [NKB]

*) New module structure for input, output, and database specifica in
scratchpad. Thus it is possible to write generic components for one task and
replace input and output dynamically. As an example a generic version of a
WildcardMatcher is provided as well as a sample action that uses it.
DatabaseActions in scratchpad use this structure as well. [CH]

*) Moved ModularDatabase*Actions to new home in scratchpad and reworked
them. They now use new module structure. For sample application, copy mod-db
directory to cocoon/mount. [CH]

*) Changed jdbc datasource to ResourceLimitingJdbcDataSource because it does
not require to be able to contact the datasource on startup. Thus race
condition with HSQLDB startup is eliminated. [CH]

*) Added new Jisp based persistence cache, to improve (1) performance and
(2) to solve the problem with long filenames on Windows OS flavours. [VG,GF]

*) Removed explicit System.gc() call from StoreJanitor, because this caused
performance leaks. [GF]

*) Added support for input type=image buttons [TC]

*) Deprecated the old cocoon-action=ACTION syntax in favor of the new
cocoon-action-[ACTION]=whatever. Still supported though. [TC]

*) Added encodeURL transformer for encoding URIs. [BH]

*) Using migrated XPath Processor from Avalon Excalibur instead of own
component. [CZ]

*) Fixed endless loop bug in IncludeXMLConsumer. [CZ]

*) Added <xsp:page create-session=""> attribute now processed correctly, as
described in the xsp-session logicsheet documentation. Variable 'session'
declared and could be used in XSP page code. [VG]

*) New implementation of the sitemap engine based on an evaluation tree.
This provides super-fast load times (no more compilation), and a slight gain
in request processing speed compared to the compiled engine thanks to the
HotSpot VM. [SW]

*) Added matchers: HeaderMatcher, ParameterMatcher. [VG]

*) Added CookieSelector. [VG]

*) Added CookieMatcher. [VG]

*) Request, response, and session XSP logicsheets in Javascript language are
added. [VG]

*) Added Cocoon link page. [SM]

*) Added 'cocoon.ico'. [SM]

*) Cleaned up documentation and refactored it a little. [SM]

*) Started to clean up the XML:DB stuff. The XML:DB generators have been
deprecated, and a note has been written in the docs suggesting to switch to
the XML:DB pseudo-protocol. Configurations have been switched from dbXML to
Xindice. [GR]

*) New WriteableSource interface that extends Source. Just as Source for
reading, it allows to transparently write to various destinations. The first
implementation is FileSource to write to files. [SW]

*) Added FileWritingTransformer and sample file editor to scratchpad. [JQ]

*) Fixed some bugs in the file URI resolving on windows plattforms. [CZ]

*) Using migrated entity resolver from Avalon Excalibur instead of own
component. [CZ]

*) Javascript language now supported by the XSP pages. Samples of Javascript
XSP pages are added. [VG]

*) Using migrated XML Parser from Avalon Excalibur instead of own component.

*) Added subprotocol "raw" to the cocoon: protocol. When the subprotocol is
appended, the request parameters of the original request are not forwarded
to the internal pipelines. Suggested by Michael Hartle
[]. [CZ]

*) Added Pizza Java compiler as another alternative to Sun javac and Jikes.

*) ProgramLanguage is decoupled now from the languages compiled into Java.
Instead of Class object representing a program, Program interface has been
introduced. [VG]

*) Text located in XSP language logicsheets now properly quoted. [VG]

*) SQL Transformer did enter Infinite Loop. This is fixed now. [CZ]

*) Sitemap engine verifies that root element is the <sitemap> element in the
'' namespace. [VG]

*) Move commonalities between sitemap markup language and XSP markup
language into CocoonMarkupLanguage. [VG]

*) Minor rewrite of the LogTransformer. The logfile is now resolved using
the standard source resolver. The component is now recycled properly. [CZ]

*) Minorrewrite of the SQLTransformer. Removed several parameters tests and
the use of Properties objects - instead the Parameters object is used
directly. [CZ]

*) Action LangSelect has been deprecated in favor of LocaleAction. [VG]

*) Allow sitemap components to be declared in the cocoon.xconf. Enhance
SitemapComponentSelector to store label information provided in the
configuration. [VG]

*) Added the XPath-enabled DirectoryGenerator (XPathDirectoryGenerator) to
scratchpad. [GR]

*) XSP engine verifies that root element is the <page> element in the
'' namespace. [VG]

*) Markup language logicsheets in general and XSP logicsheets in particular
are now looked up by their namespace URI, not prefix. [VG]

*) xsp-request and xsp-response logicsheets got more tags, and now are
(almost) backward compatible with the logicsheets in Cocoon 1.8. [VG]

*) Cache relies on two types of store components: (1) transient cache, with
cache-transient shorthand, and (2) persistent cache, with cache-persistent
shorthand. [VG]

*) FilesystemStore (used as programs repository) now is created as all other
components from the cocoon.xconf, and can be configured to use working
directory, cache directory, or any other directory. [VG]

*) Calling getInputStream() on a "cocoon:" source now returns the same
output as an external call instead of always using an XML serializer. This
also allows to get internally data produced by a Reader. [SW]

*) Fixed memory leaks in XScript engine. Fixed global and session scope
variables: now they are shared between XScript pages as it should be. Page
scope variables now visible for all instances of the same page. [VG]

*) Added size() method to the Store interface. [VG]

*) Prevent PostInputStream from looping if the available() method of the
base InputStream is returning 0. [GP]

*) Added X-Cocoon-Version header to all responses generated by Cocoon. [VG]

*) SystemID for cocoon: pseudo-protocol URIs changed from the form of
<schema>:\\<host>:<port>\path\to\resource\from\the\root\sitemap to the form
cocoon:\\path\to\resource\from\the\root\sitemap. This provides portability
for compiled resources generated from the cocoon: sources. [VG]

*) Stored Procedure support for esql plus ability to obtain and use a result
set from any column just like a nested query. [CH]

To unsubscribe, e-mail:
For additional commands, email:

View raw message