History of Changes
Version 2.1.8 (November 18 2005)
-
Portal Block: Include coplet instance id in window renderer; ignore
javascript: urls during url rewriting.
(CZ)
-
Bricks-cms example application created (distributed separately), see http://wiki.apache.org/cocoon/BricksCms
(BD)
-
CForms block: new Tree widget, heavily inspired by Swing's JTree. Features Ajax, selection listeners,
and a lightweight data model with two implementations: a generic one, and a source-based one to build
file explorers.
(SW)
-
CForms: The repeater widget now supports min and max-size attributes.
(JHS) Thanks to Thomas Lutz. Fixes 36781.
-
Moved support for zip: sources from scratchpad into the core.
(VG)
-
CForms: Small change to the calendar styling which now shows dropdowns
to choose the time when the date format includes time also.
(SW) Thanks to Jean-Chrisophe Kermagoret.
-
Caching support for XInclude Transformer
(AG) Thanks to Jason Johnston. Fixes 31600.
-
CForms block: new form libraries features. You can now define form definition and binding
library files and import them for reuse and/or extension in regular definition and binding files.
This is the result of the Max Pfingsthorn's Google Summer of Code (GSoC) project.
(SW) Thanks to Max Pfingsthorn.
-
Added ImageMap widget.
(JHS) Thanks to Luca Morandini. Fixes 35462.
-
Added a new "validation" block abstracting the concept of XML validation and providing access to schemas
and validation tools from within Cocoon pipelines and/or Cocoon components. As of right now, the
"validation" block supports the RELAX-NG grammar using JING and the XML-Schema grammar using Xerces.
(PF)
-
Add a "cocoon.exit()" method to flowscript, which allows to exit the current flowscript invocation without
creating a continuation.
(SW)
-
Portal block: Add WSRP consumer support (through WSRP4J).
(CZ)
-
Portal block: Allow portlet adapter to stream html content through the pipeline using the NekoHTML parser.
(CZ)
-
Portal block: Use OJB and the HSQLDB for authentication of the portal sample.
(CZ) Thanks to Jens Maukisch. Fixes 36240.
-
Portal block: Add support for portal bridges and add CoWarp for authentication.
(CZ)
-
Portal block: Add global caching to caching uri adapter.
(CZ)
-
Add geronimo-specs-javamail-1.3.1-rc5 and geronimo-spec-activation-1.0.2-rc4.jar. This jars replace mock classes for mail block.
(AG)
-
XSP block: Extend {#expr} interpolation parser to understand {}, "}", '}'
as not being the closing brace.
The previously implemented mechanism #} to escape braces within the
statement is no longer supported.
(AN)
-
Added Cocoon stacktraces. This is based on location classes in the new org.apache.cocoon.util.location package
and a refactoring of the exception management to attach locations to exceptions.
(SW)
-
XSP block: Implement {#expr} interpolation also for logicsheets.
(AN)
-
New org.apache.cocoon.util.location package, providing utilities to track locations in XML documents and
the objects built from these documents.
(SW)
-
Added the empty: source than either generates empty documents
or documents containing just a root node.
(CZ) Thanks to Mark Lundquist. Fixes 35521.
-
Portal block: Add easier to use event handling mechanism by introducing the new Receiver interface.
Deprecated Publisher, Subscriber, Filter and Register.
(CZ)
-
XSLTAL block added, presentation templating transformer based on the Zope TAL syntax.
(BD) Thanks to Christian Stocker.
-
Added CookieModule as a more convinient way to access cookie values as {cookie:query}
in alternative to {request:cookies[name='query']/value}.
(AN) Thanks to Jon Evans. Fixes 28045.
-
Added parameter "show-cocoon-version" to web.xml for configuring whether X-Cocoon-Version
response header should be sent. Default is true.
In a security paranoid environment you may want to set it to false in order to hide from
the outside world which Cocoon version you are running.
(AN) Thanks to Andrew Stevens. Fixes 33388.
-
XSP block: Added short-cut notation {#expr} for interpolation of
XSP expressions in attribute values and text nodes.
Removed wrapping of all text nodes from XSP source into <xsp:text>
elements before passing them to logicsheets.
(This feature was not used by the standard logicsheets but check your
custom logicsheets whether they depend on it.)
(AN) Thanks to Jochen Kuhnle. Fixes 35228.
-
Portal block: Convert PortletPortalManager into portal manager aspect.
(CZ)
-
CForms block: Make all WidgetValidatorBuilders ThreadSafe. Reset validation errors
before validating a field.
(CZ)
-
Portal block: Add portal manager aspects for more flexible portal processing.
(CZ)
-
CForms block: Add isValid() method to a Widget.
(CZ)
-
POI Block: Added HSSFGenerator.
(VG) Thanks to Patrick Herber. Fixes 29817.
-
Added getSitemapURIPrefix method to the Request interface.
(VG) Thanks to Nico Verwer. Fixes 35435.
-
Mail block: The SendMailTransformer can now configure the smtp port.
(UH) Thanks to Johan Stuyts.
-
JMS block: Connection failures can now be recovered from. The default JMSConnectionManager implementation
detects when JMS connections are severed and schedules reconnection attempts with the cron scheduler
in order to re-establish the connection. As soon as reconnection was successful it notifies its listeners
so that they may recover as well and refresh their JMS sessions. The provided abstract MessageListener
and JMS publisher that users are recommended to use as base classes for their concrete JMS needs have been
updated to use this mechanism.
(UH) Thanks to Johan Stuyts.
-
Forms block: sqldatabase sample added, demonstrates "zero java code" editing of SQL data
using the SQLTransformer.
(BD) Thanks to Askild Aaberg Olsen. Fixes 35364.
-
CForms block: The form and container widgets can take up ValidationErrors. As those widgets
don't have a natural place where the error message should appear, the <ft:validation-error id="[widget-id]"/>
has to be used. Currently this tag is only supported by the jxtemplate macro library.
(RP)
-
Add setter action to set values in the object model, request or session.
(CZ)
-
CForms block: add a new <fd:true-param-value> configuration to
booleanfield definitions, to allow specifying a value different from "true"
for the checkbox.
(SW)
-
CForms block: add automatic AJAX features. When <ft:form-template>
has an ajax="true" attribute, partial page updates are performed rather
than full page reloads.
(SW)
-
The new "annotations" namespace (http://apache.org/cocoon/sitemap/annotations/1.0)
can be used to add information to sitemaps. The sitemap processor ignores this information,
which can be used for documentation purposes.
(BD) Thanks to Johan Stuyts. Fixes 25352.
-
CForms block: added CAPTCHA validator.
(UC)
-
IncludeTransformer moved from the scratchpad into the core. It has following
features:
- Supports caching, with configurable caching key.
- Supports parallel include processing in multiple threads.
- Included source URIs resolved relative to the document URI.
- Supports recursive include processing (includes in included files).
- Supports fallback element processing.
- Supports inclusion of files as text.
(VG)
-
New JCR block that adds a "jcr:" protocol to access and modify repository contents.
(SW)
-
New HTMLTransformer sample in html block.
(BD)
-
New set of automated tests based on HtmlUnit
(BD) Thanks to Alfred Nathaniel. Fixes 34294.
-
POST method in cinclude:includexml is broken.
(AG) Thanks to Maurice Jumelet. Fixes COCOON-1365.
-
Forms block: Fix HTML rendering of booleanfields in output state.
(SW) Thanks to Jason Johnston. Fixes 36381.
-
Forms block: Fix ArrayIndexOutOfBoundException in the library subsystem.
(SW) Thanks to Philipp Schmidt. Fixes 37005.
-
Portal Block: Only remove layout if a layout remove event is fired (and not with each layout event).
(CZ)
-
Fix bug with session:getxml when path is a text-element and IncludeXMLConsumer
when including text nodes.
(CZ) Thanks to Armaz Mellati. Fixes 36471.
-
Portal block: Add title to basket item in the portal sample.
(CZ) Thanks to Philippe Gassmann. Fixes 33152.
-
Portal block: Fix history aspect when coplets are used.
(CZ) Thanks to Philippe Gassmann. Fixes 37115, 29405.
-
Do not flush and close output stream, servlet container
will take care of it.
(VG) Fixes 35905.
-
Portal Block: Allow Full screen mode to show navigation.
(RG) Fixes 32784.
-
Portal Block: PageLabelLinkService generated the wrong url when using 3 layer tabs with showallnav.
(RG) Thanks to Roy Huang. Fixes 34802.
-
Databases block: Support stored procedures returning result set in SQLTransformer.
(VG) Fixes 30894.
-
Fix OutofBoundsException when form element does not have an action attribute
(JHS) Thanks to Max Pfingsthorn. Fixes 30796.
-
Portal Block: PageLabelLinkService generated the wrong url when using 3
layer tabs with showallnav.
(RG) Thanks to Roy Huang. Fixes 34802.
-
Portal Block: Add missing interface CopletInstanceEvent to FullScreenCopletEvent.
(CZ)
-
XSP: EclipseJavaCompiler chokes on warnings. Changed to errors.
(JH) Thanks to Jochen Kuhnle. Fixes 35162.
-
CForms: Fixed JavaScript error in forms-lib.js when using keyword undefined and Mac IE 5.0.
(JH) Thanks to Dan Durkin. Fixes 33318.
-
Deli block updated to use the latest revision of DELI. This uses a more robust method of loading configuration
files that should ensure DELI works on different apps servers or deployed as a WAR.
(JHS) Thanks to Mark H. Butler. Fixes 35538.
-
MultipartParser now removes partially uploaded files
(JHS) Thanks to Gunnar Brand. Fixes 29712.
-
Added percentage-dimensions and jpeg quality handling to the ImageReader.
(JHS) Thanks to Eric Caron. Fixes 36326.
-
JXTG: jx:formatDate and jx:formatNumber allows for specifying locale string instead of a Locale object
(LG) Thanks to Henric Mueller. Fixes 35845.
-
XMLdb block: Don't rely on the sitemap components to stream the contents of a xmldb source.
(SW) Thanks to Jean-Baptiste Quenot. Fixes 35575.
-
CForms block: Escape apostrophes in validation messages formatted as JavaScript alerts.
(SW) Thanks to Jean-Baptiste Quenot. Fixes 35574.
-
getTime(...) of CocoonLogFormatter implemented incorrectly
(AG) Thanks to Johan Stuyts. Fixes 36373.
-
Portal block: Fix bugs in CachingURICopletAdapter - store cache information in temporary attributes.
This bug fix introduces incompatible changes: the cache validity attribute is not
used anymore, use the cache temporary attribute instead and update your code to
use temporary attributes instead of (persistent) attributes.
(CZ)
-
XSP block: Move AttributeImpl in xsp.xsl to class scope.
That allows top-level xsp:logic to define markup generating methods.
Variable xspAttr renamed to _xspAttr to be avoid breaking existing
XSPs which already use that trick.
(AN)
-
XSP block: Add xsp:expr and various other contexts where text must be
passed through XSLTExtension:escape in order to preserve non-ASCII
characters in Java string constants independently of the XSP source file
and compiler expected encodings.
(AN)
-
JXTemplate: ensure JXPath expressions can use namespace prefix mappings declared in the template document.
(SW)
-
Complete refactoring of error handling in TraxTransformer and XSLTProcessor so that actual error messages
are displayed rather than the useless RuntimeException usually reported by Xalan. These messages include
both stylesheet compilation errors and warnings, and outputs of <xsl:message terminate="yes">.
Using this feature requires to change the XSTLProcessor class in cocoon.xconf to
org.apache.cocoon.components.xslt.TraxProcessor.
(SW)
-
Mail block: Allow any of the Cocoon-provided protocols to be used for attachments in SendMailTransformer.
This means that "cocoon:" URLs are no more rewritten as external http requests.
(SW) Thanks to Jean-Baptiste Quenot. Fixes 35618.
-
Fix NPE in RequestGenerator when request.getHeaderNames() returns null.
(CZ) Thanks to Doug Bennett. Fixes 35457.
-
Fix wrong caching behaviour in DirectoryGenerator.
(CZ) Fixes 29506.
-
Fixed reloading of the i18n catalogues (regression introduced in 2.1.7).
(VG) Fixes 33097.
-
CForms block: Ensure FormHandler is always called when a field's value change.
(SW) Thanks to Jeffrey Kirby. Fixes 35311.
-
Fix some multithreading issues when a background thread or cron job uses the "cocoon:" protocol, that
caused the background request pipeline to be recycled by the parent thread during its execution.
To use multiple threads to process a request (e.g. parallel include), background processing must use
the org.apache.cocoon.environment.CocoonRunnable wrapper that ensures that the environment
context of the main request is properly inherited by tasks running in the background.
(SW)
-
XSP Block: Double check and attempt again to load program object from cache.
This avoids that simultaneous requests recompile the same XSP over and over again.
(AN) Fixes 32935.
-
When receiving a multipart request, also add parameters given on the URL to the
request parameters.
(SW)
-
EHDefaultStore.store throws more descriptive exception if key or value
are not Serializable.
(BD)
-
SearchGenerator return has-previous false when meet the no. 2 page.
(AG) Thanks to Thomas Scheithauer. Fixes 32728.
-
XSP Block: Race condition could lead to duplicate application of same logicsheet
with spurious compilation errors or undefined runtime behaviour.
(AN) Fixes 32934.
-
Enabled the synchronization on Cocoon's session wrapper by assuring that only
one wrapper exists per servlet session.
(JH)
-
Databases: SQLTransformer: Support queries nested into insert/delete/update
queries. Return number of rows updated by insert/delete/update queries as
returncode element.
(VG) Fixes 25098.
-
Databases: SQLTransformer: Each query can now have connection with own
database connection configuration parameters. Queries with same configuration
will share single database connection. You can force queries to create private
connection using own-connection configuration parameter.
(VG)
-
Databases: SQLTransformer: Each query can now have own output namespace and
prefix. If desired output namespace already in use, existing prefix will be
used.
(VG)
-
Databases: SQLTransformer: Support multiple nested queries within one query.
(VG) Thanks to Philipp Matthias Hahn. Fixes 27440.
-
Databases: SQLTransformer: Output attributes on rowset element with
empty namespace.
(VG) Thanks to Martin Holz. Fixes 31634.
-
Databases: SQLTransformer: Avoid declaring duplicate namespaces.
(VG) Fixes 25203.
-
form(NOT_FOUND is not a function) error caused by wrong documentation.
(AG) Thanks to Juan Jose Pablos. Fixes 33100.
-
Fix ContextPathModule name in javadocs.
(AG) Thanks to Jorg Heymans. Fixes 34591.
-
Faces Block: ValidateLongRangeTag, ValidateDoubleRangeTag should use long
and double to set minimum and maximum, not int.
(VG) Thanks to Markus Bussemer. Fixes 34400.
-
Fixed caching of a pipeline aggregating non cacheable pipelines via
cocoon: protocol.
(VG)
-
Fix environment handling to allow the root sitemap to be at an abitrary location
and not only in the main webapp context directory.
(SW)
-
Updated excalibur-pool to 2.0.0, excalibur-datasource to 1.2.0.
Fixes problem of database connections pools not coming up after
database outage.
(VG)
-
XInclude transformer does not handle fallback correctly.
(AG) Thanks to Joachim Breitsprecher. Fixes 34325.
-
XSP Block: Note in the documentation that XSP namespace must be declared
on the xsp:page element.
(VG) Fixes 26107.
-
Fix NPE in DOMStreamer.stream().
(CZ) Thanks to John Yonosh. Fixes 33963.
-
Portal block: Make portal manager available through portal component manager.
(CZ)
-
Databases: Removed xml-encoding parameter from the SQLTransformer configuration.
The latest SQLTransformer has no byte to character conversions.
(VG)
-
Forms block: If a field is required or not can be changed during form processing.
Applied patch by Philipp Schmidt (philipp.schmidt@gmail.com).
(CZ)
-
Forms block:
- Automatic submit-on-change. Fields which have value-changed listeners are now by default submitted
automatically, meaning adding <fi:styling submit-on-change="true"/> is no
more necessary. For those cases where a field with event listeners should not be automatically
submitted, set submit-on-change to false.
- Introduce a naming convention for stylesheet-generated IDs: they should all start with the
widget's ID followed by a ":" and a name. The use of ":", which is forbidden in widget names,
avoids conflicts with other widgets in the form. All stylesheets have been updated to this convention.
This change can break applications that use document.getElementById() to access some of the generated
elements (notably "foo-input" that's used for the <input> of the "foo" widget), but this notation is now
a public contract that will be taken care of in the future.
- Along with field, aggregatefield and booleanfield, you can now add value-changed listeners on output
and upload widgets.
- Widget validators can now return not only a boolean value, but also a String or an XMLizable (such as
I18nMessage) which are used to set a validation error on the widget.
- The <fi:styling submit-on-change="output"/> is no more available, as it was
intrinsically broken as a field whose value is not submitted is reset. Use the "output" widget state to
achieve the same effect.
(SW)
-
Update Pluto to final release 1.0.1.
(CZ)
-
Portal block: Deprecate AbstractUserProfileManager and AuthenticationProfileManager.
(CZ)
-
Improved blocks build exclusion/inclusion. See blocks.properties for more info.
(LG)
-
I18n: Refactored XMLResourceBundle to use transient store instead of
private cache. Added reload check interval parameter. Support dynamic
additions and removals of resource bundles, without need to restart
Cocoon.
(VG)
-
JavaDocs and documentation are no longer copied to the webapp.
(CZ)
-
build.sh: use --noconfig option to avoid problems with local ant settings.
Does not apply to build.bat, windows ant scripts do not have this option.
(BD) Thanks to Sandor Spruit.
-
cocoon.sh and cocoon.bat (done by CZ): "servlet" is now the default action.
(BD)
-
Update Avalon framework to 4.3, Avalon LogKit to 2.1, Excalibur Instrument to 2.1,
Excalibur Logger to 2.1, Excalibur Pool to 2.1, Excalibur SourceResolve to 2.1,
Excalibur Store to 2.1, Excalibur XMLUtils to 2.1 and Excalibur Database to 2.1.
(VG)
-
Updated quartz to 1.5.0.
(AG)
-
Midi Block: Marked as stable.
(JH) Fixes 28056.
-
Portal Block: Provide sample for caching uri coplet adapter (Gallery coplet).
(CZ) Thanks to Michal Durdina. Fixes 32994.
-
CForms: Improved error message for wrong content type on upload.
(JH) Thanks to Mark Lundquist. Fixes 35475.
-
When the upload size exceeds the configured limit, a RejectedPart is associated to the request
rather than throwing a exception at the servlet level. This allows the application to handle
oversized uploads and provide meaningful messages. The upload widget in CForms has been updated
to use this new feature.
Uploads are now allowed in the provided web.xml, but with a low 100 kbytes limit to allow samples
to be functional without endangering security.
(SW)
-
Updated log4j to 1.2.12, asm to 2.0, asm-util to 2.0,
groovy to 1.0-jsr-03.
(AG)
-
SourceWritingTransformer supports all allowed nodes when using
source:write to create new document.
(VG)
-
LocaleMatcher can save resulting locale into request, session or cookie
(if configured).
(VG)
-
Updated hsqldb to 1.8.0.2.
(AG)
-
Updated jakarta-regexp to 1.4.
(AG)
-
Faces block: Updated MyFaces libraries to the SVN r233484, get rid of patched
version.
(VG)
-
Updated xalan to 2.7.0.
(AG)
-
Updated Axis to 1.2.1 and wsdl4j to 1.5.1.
(CZ)
-
Updated xercesImpl to 2.7.1, xml-apis to 1.3.02, log4j to 1.2.11, nekohtml to 0.9.5,
geromino-spec-jms and geronimo-spec-jta to M3.
(AG)
-
Webapp context is now configurable when starting with the included Jetty webserver. Setting
JAVA_OPTIONS=-Dcontext=blah/, for example will make the Cocoon webapp available at
/blah/ instead of / which stays the default.
(BD)
-
Update Rhino+continuations so that JavaScriptException has the same API as the official 1.6 version. This
is allows to access location and nested exceptions for Cocoon stacktraces.
(SW)
-
Updated hsqldb to 1.8.0.
(AG)
-
Moved following components into core: TraversableGenerator, XPathTraversableGenerator (both from repository
block), CSVGenerator (from scratchpad block), FragmentExtractorTransformer and FragmentExtractorGenerator
(both from batik block).
(JH)
-
TraxTransformer: new default-src configuration parameter, used if src is not specified.
(BD)
-
Updated commons-digester to 1.7, commons-lang to 2.1, xercesImpl to 2.7.0.
(AG)
-
CForms block: The default HTML stylesheets have been moved into the jar packages. If they should
be extended in custom stylesheets, import or include them using the resource protocol:
<xsl:include href="resource://org/apache/cocoon/forms/resources/forms-advanced-field-styling.xsl"/>.
(RP)
-
Mail block: Make internal protocol handling for attachments in SendMailTransformer
configurable and properly release all sources.
(CZ)
-
Move expires pipeline implementation out of the scratchpad.
(CZ)
-
Updated ant to 1.6.5.
(AG)
-
Set the content-length of a response when the pipeline buffers the content
(which is the default).
(CZ)
-
Cforms block: Caching selection list for best performance inside repeaters.
Deprecate @dynamic in <fd:selection-list>
in favor of @cache. Posible @cache values are:
-
static => equivalent to old @dynamic="false"
-
none => equivalent to old @dynamic="true"
-
request => is new, similar to cache="none", but caching the selection list per request. Useful to improve performance inside repeaters.
(AG)
-
Updated ant to 1.6.4, batik to 1.6, db-ojb to 1.0.3.
(AG)
-
Databases: Changes in SQLTransformer:
- By default, output resulting XML using 'sql' namespace prefix.
- Accept non-namespaced attributes in the input XML,
and prefer them over attributes in SQLTransformer namespace.
- Support configured namespace, instead of hardcoded value.
(VG)
-
Updated ant to 1.6.3.
(AG)
-
OJB Block: Added support for OJB 1.1.
(VG)
-
AbstractSAXTransformer gets transformer-factory configuration
parameter.
(VG)
-
XMLFileModule gets cache-expressions configuration parameter.
(VG)
-
Stacktrace of the ResourceNotFound exception is logged only in DEBUG level,
otherwise only exception message is logged.
(VG)
-
Updated groovy to 1.0-jsr-01, jdtcore to 3.0.2.
(AG)
-
Add support for namespaced XML elements to the JXPath based input
modules (includes JXPathMetaModule, XMLFileModule, and others).
(VG)
-
Deprecate EventRecorder (in o.a.c.t.helpers package). It will be
removed starting with Cocoon 2.2.
(VG)
Version 2.1.7 (March 23 2005)
-
Implemented error handling for the internal requests. Error handling for
internal requests can be configured using the when attribute
on the handle-errors element. Supported values for
when attribute are:
-
external: This error handler should be used only on
external requests (default);
-
internal: This error handler should be used only on
internal requests;
-
always: This error handler can be used for all
requests.
Currently, if internal error handling is enabled, only the inner most
error handler will be used for errors which happened during internal
pipeline processing. See samples for usage details.
(VG)
-
A flowscript's file encoding can now be specified by a comment on the script's
very first line, in the form "// encoding = xxxx". Otherwise, the
default platform encoding is used.
(SW)
-
Added QueryBean as a standalone block, copied over from 2.2.0. Removed
the original from the Lucene Block. Stores Favourites using OJB in HSQLDB.
(JQ)
-
Polish i18n for CForms.
(LG)
-
Many changes in CForms block.
Widgets:
- add Widget.getDefinition() to access the definition that was used to create the widget.
- make widget definitions immutable once setup. This is necessary with the previous change as a definition
is shared by all of the widgets it creates and modifying it could lead to weird behaviors.
- new "output" widget state, where values are displayed but not read on the request. The difference with
"disabled" is that "output" widgets are displayed as plain text and not as disabled inputs.
- add on-create event listeners that are called when a widget is created.
- deprecate "struct" in favor of "group" in definition, template and binding. More work is needed on the
relation between ft:group and fi:group provided by forms-page-styling.xsl
Field:
- a field's selection list can be removed by setting it to null. This previously re-installed the widget
definition's selection list.
- a field can have an optional initial value defined using <initial-value locale="...">...</initial-value>.
The "locale" attribute is used to convert the value text into an object as defined by the datatype's convertor.
This feature is also available on AggregateField and BooleanField (for which locale is useless).
Form.js :
- added "fun" and "ttl" parameters to Form.showForm(), which now has the exact
same parameters as cocoon.sendPageAndWait().
- the argument of new Form(...) can now be either a String or a DOM Element.
Accepting an Element allows the use of any kind of dynamic process to build the form
definition.
-
Form.showForm() now uses a single continuation, which saves memory and speeds
up processing by shortening the continuation chain when the user has a long interaction
with the form.
- "ttl" parameter added to Form.showForm(), which has the same meaning as for cocoon.sendPageAndWait().
- new "cleanupHook" property on Form: this is a function that is called each time the form is displayed.
This is similar to the "fun" parameter of cocoon.sendPageAndWait().
- new "restoreHook" property on Form: this is a function that is called each time the continuation is called back,
to restore if needed the execution environment before processing the request.
Actions:
- the "action-command" attribute is deprecated and replaced by "command" which is now optional, except on
repeater-action and row-action where it indicates what to do.
- new "insert-rows" repeater-action that insert new rows before the selected rows in a repeater
Styling: styling "output" is deprecated and will be removed in 2.1.8. The "output" widget state should be
used instead.
(SW)
-
Added best-fit-while-keeping-aspect-ratio option to the ImageReader
(TC) Fixes 30417.
-
Mail Block: Add support for replyTo.
(VG) Thanks to Andrew Thornton. Fixes 28973.
-
CocoonBean can now process a URL to a SAX ContentHandler (skipping the serialiser), via cocoon.process(uri, handler).
(UV)
-
hsqldb: make name and path of database parameterizable - this way the database can be located outside of Cocoon
(RP)
-
Portal Block: Add portal tools framework contribution.
(CZ) Thanks to Jens Maukisch. Fixes 33287.
-
Build system: External blocks can be built together with Cocoon.
(CZ)
-
Add <compiler-compliance-level> parameter for java XSP compiler.
This new parameter allow to specify the java code source version used to compile the XSP code.
It is useful to run cocoon using java 1.5 while using source code for 1.4.
Posible values:
1.3 = Java version 1.3
1.4 = Java version 1.4
1.5 = Java version 1.5
auto = The version of the JVM where cocoon is running. (Default value).
NOTE: The parameter is optional to keep backward compatibility.
The parameter currently works only with Sun Javac compiler.
The eclipse compiler version 3.0.1 currently does not support java 1.5.
The pizza compiler does not support java 1.5.
(AG)
-
Added commons-transaction 1.0 and commons-codec 1.3. Both are needed by slide 2.1.
(AG)
-
Portal now allows Cocoon to be deployed as a war (only supports local JSR-168 portlets) and
allows external portlets to be in a war.
(RG)
-
ContinuationsManager default implementation can now store continuations in user session.
Continuations are not available outside user session and invalidated automatically
when session gets invalidated by servlet container. This is a good security option for web applications.
(LG)
-
Paranoid: make the classloader implementation configurable
(TC)
-
CForms: added HTMLCleaning convertor (taken from Outerthought's Daisy) that cleans
up the result by HTMLArea fields. The cleanup process, that is based upon
Nekohtml can be configured. One confiugration is available at
resource://org/apache/cocoon/forms/datatype/convertor/HtmlCleanerConfiguration.xml
and guarantees valid XHTML
Example:
<fd:datatype base="string">
<fd:convertor type="htmlcleaner"
config="resource://org/apache/cocoon/forms/datatype/convertor/HtmlCleanerConfiguration.xml"/>
</fd:datatype>
(RP)
-
CForms: 'htmlarea' fields can be directly configured in cForms templates
Example configuration (within the <conf> part the variable conf contains
the configuration object of HTMLArea
<fi:styling type="htmlarea" rows="8" style="width:100%">
<conf>
conf.statusBar = false;
conf.sizeIncludesToolbar = false;
conf.fullPage = false;
conf.toolbar = [
[ "bold", "italic", "separator",
"subscript", "superscript", "separator",
"insertorderedlist", "insertunorderedlist",
"outdent", "indent", "separator",
"inserthorizontalrule", "separator",
"copy", "cut", "paste", "space", "undo", "redo",
"separator", "showhelp"]
];
</conf>
</fi:styling>
(RP)
-
CForms: add a new "link" styling for action widgets, that renders the action
as an hypertext link.
(SW)
-
Portal: Added support for storing JSR-168 Portlet preferences.
(RG)
-
Allow attribute values to be matches as well for EncodeURLTransformer.
(GP)
-
Fix caching of i18n bundles with expires validities.
(VG)
-
Sitemap now properly throws ResourceNotFound exception for not matched
requests even if last pipeline marked as an internal pipeline.
(VG)
-
Sitemap handle-errors now reports an error if generator is missing, or
if type attribute (deprecated) specified and generator is present.
(VG)
-
Tour block: fix "shapes" sample using if/else in flowscript
instead of switch.
(BD)
-
Change the mime-type setting of a reader. See also bug #25121.
(CZ) Fixes 10277.
-
Fix thread safety problem in JXTemplateGenerator.setup() concerning template script reparsing.
(LG) Thanks to Niklas Therning. Fixes 33836.
-
Runnable Manager: Fix bug preventing scheduling of two different jobs at the same time.
(VG)
-
Resource Reader: Make sure response is cacheable when expires parameter is not set.
(VG) Thanks to Adam Ratclife. Fixes 33319.
-
CForms: forms generator and template transformer now use the same object model as the JXTG: access
to objects have to use the "cocoon" object, like "cocoon/continuation/id".
(CZ)
-
Apply patch for a better exception handling in the Meta-InputModule when an input module is not found.
(CZ) Thanks to Michal Durdina. Fixes 32987.
-
Fixed caching of i18n bundles when using multiple locations.
(JH) Fixes 33097.
-
Fix handling of environment context when returning from a pass-through sitemap mount.
(SW) Thanks to Jean-Baptiste Quenot. Fixes 33178.
-
Refreshing a page with a JSR-168 portlet in it could cause unexpected results. JSR-168 urls can
now be configured to contain the data required to generated the required events.
(RG) Fixes 33091.
-
PageLabel url's were not properly encoded.
(RG) Thanks to Roy Huang. Fixes 32838.
-
CForms: the parser used to read form files now uses the EntityResolver defined in cocoon.xconf.
(SW) Fixes 31668.
-
Tiny typo in AbstractTextSerializer
(AG) Thanks to Micah Dubinko. Fixes 32620.
-
Modified PortletURLProviderImpl.toString() to create a copy of itself and register that with the event.
(RG) Fixes 32645.
-
Update Deli to x031104 (include over 300 vendor, operator and third party profiles)
(AG) Thanks to Mark H. Butler. Fixes 32083.
-
Typo on the date-selector doc.
(AG) Thanks to Juan Jose Pablos. Fixes 32408.
-
xml2html.xslt does not work on IE.
(AG) Thanks to Micah Dubinko. Fixes 30043.
-
Portal: attributes "javax.portlet.request" and "javax.portlet.response" were not set for JSR-168
portlets running in the Cocoon webapp.
(RG) Fixes 32417.
-
CForms: fields styled as 'htmlarea' can be used in tables (workaround for strange IE behaviour)
(RP)
-
Batik block: Fixed handling for empty extract URIs when matching on null
namespace URIs.
(JH) Fixes 32342.
-
Multipart requests: use container encoding for decoding requests, in order to have consistent
handling between normal requests and multipart requests.
(BRD)
-
I18n (ParamSaxBuffer): handle case where substitution params like {0} are split over multiple character events.
(BRD) Thanks to Neil Bacon. Fixes 31887.
-
Fix: Continuation can only be invoked for the interpreter it was originally created for.
(LG)
-
Updated hsqldb to 1.7.3.3.
(AG)
-
Updated quartz to 1.4.5, jcs to 1.2.5-dev-20050313.
(AG)
-
Refactored the Deprecation class: the "forbidden-deprecation-level" parameter in web.xml
allows to raise deprecation exceptions depending on the log level. For example, DEBUG
allows no deprecations (strict mode), and FATAL_ERROR allows all (tolerant mode).
Default is ERROR, allowing messages up to WARN.
(SW)
-
CForms: separate FormattingDateConvertor that uses
java.text.SimpleDateFormat and Icu4jDateFormatter
that uses ICU4J. There was previously an automatic switch to ICU4J if the
library was present in the classpath, which sometimes caused some strange
results as it behaves a bit differently.
(SW)
-
Build: Added exclude.all.blocks and include.all.blocks properties
to quickly toggle all blocks on or off.
(VG)
-
Updated antlr to 2.7.5, groovy to 1.0-beta-10, jetty to 4.2.23
(AG)
-
OJB Block: Marked as stable.
(VG)
-
Make Cocoon compilable and buildable using JDK 5.0.
(all)
-
Remove scratchpad block - the scratchpad area is only available in trunk.
(CZ)
-
Deprecated Pizza compiler support in XSP. To be removed in Cocoon 2.2.
(AG)
-
CForms: JavaSelectionList implementations can now be Contextualizable and
can build SelectionLists with XMLizable labels.
(VG)
-
OJB Block: Renamed JdoPMF component to JDO, OdmgImplementation to ODMG, and
removed PBFactory component - please use OJB PersistenceFactory API directly.
(VG)
-
OJB Block: Integrated OJB logging with Cocoon logging.
(VG)
-
Add a deprecation logger that gives hint about used deprecated stuff.
(CZ)
-
Updated commons-transaction to 1.0.1, castor to 0.9.6, groovy to beta-9, quartz to 1.4.4.
(AG)
-
Remove restrictions on the flowscript object model (FOM): the objects available through the
cocoon object (request, session, response, etc) now provide the full API of the
corresponding Java classes.
(SW)
-
Updated quartz to 1.4.3, nekodtd to 0.1.11, nekohtml to 0.9.4
castor to 0.9.5.4, commons-digester to 1.6, groovy to 1.0-beta-8, asm to 1.5.2
and asm-util to 1.5.2.
(AG)
-
Updated jakarta-slide-webdavlib to 2.1, jdom to 1.0, slide-kernel to 2.1, slide-stores to 2.1, slide-webdavservlet to 2.1.
(AG)
-
Updated hsqldb to 1.7.3, lucene to 1.4.3, ehcache to 1.1, log4j to 1.2.9.
(AG)
-
DateInputModule now accepts date format string when specified in a sitemap.
(RG) Thanks to Nico Verwer. Fixes 28360.
Version 2.1.6 (November 19 2004)
-
Portal: Added support for page labels.
(RG) Fixes 31857.
-
Portal: Generate subnavigation for non-selected tabs.
(RG) Fixes 31229.
-
Added replacement for Excalibur Event package in
org.apache.cocoon.components.thread and migrated most classes using their own
threads to that package.
(GP) Fixes 31760.
-
Javaflow block: Add parameter support.
(TC)
-
CForms block: added widget states. All widgets can now have an "active" (default), "disabled" or "invisible"
state. Updated the stylesheets accordingly to use HTML's disabled inputs.
(SW)
-
Portal block: Apply batch for configuring the type handling in the Castor converter.
(CZ) Thanks to Juergen Seitz.
-
Forms block: added possibility to add a SelectionList based on Java.
(JH) Thanks to Nuno Santos. Fixes 29715.
-
Scratchpad block: Implemented support of parallel loading of included
sources in the IncludeTransformer.
(VG)
-
Faces block: Added JSF CarStore demo.
(VG)
-
Forms block: Implementation of the CForm template language using JX macros,
allowing smart page layout that depends on the widgets state and value.
(SW)
-
Forms block: allow widget attributes which were only accessible programmatically
to be set in the form definition. This allows e.g. generic form processing code
to find widgets having a particular attribute.
(SW)
-
Faces block: Initial implementation of JavaServer Faces for Cocoon.
(VG)
-
Taglib block: Initial implementation of BodyTag.
(VG)
-
Selector for matching the request headers using a regular expression.
Simple content negotiation, e.g. serve XHTML if browser indicates it
accepts application/xhtml+xml and HTML otherwise; potentially do
automatic i18n according to the accept-language header.
(DC) Thanks to Colin Adams. Fixes 30321.
-
New @pass-through attribute for the sitemap mount node.
If true, processing will resume in the base sitemap just after the mount node
if the mounted sitemap has not already generated output (usually if no match
is found). Previous behaviour was always to throw a ResourceNotFoundException.
The attribute defaults to "false" for backwards compatibility.
(NKB)
-
Portal block: New Group Based Profile Manager.
(CZ)
-
Mail block: Add ability to specify mime-type for email body text parameter in the mail transformer.
(CZ) Thanks to John Lianoglou. Fixes 30688.
-
Added LocaleMatcher for file based internationalization.
(UV)
-
Enhanced JMS support by adding a JMSConnectionManager component to the JMS block.
This component replaces the JMSConnection component which only supported
publish/subscribe messaging and which mixed some concerns. Two abstract classes:
AbstractMessageListener and AbstractMessagePublisher should be used as basis for
custom publish/subscribe components.
(UH)
-
Still in the scratchpad area at the time of this writing, added a
CachedSource proxy subclass for Sources that implement TraversableSource and
InspectableSource (for instance WebDAVSource).
(UH)
-
Added a NekoHTMLGenerator to HTML block. This is a simpler HTML parser than
JTidy, which preserves more of the original HTML, primarily just balancing
closing tags.
(UV)
-
Added support for stripping root elements in the CIncludeTransformer.
(TC) Thanks to Leszek Gawron. Fixes 29935.
-
Portal block: Added ManagedCocoonPortlet, to be used together with
CocoonServlet or CocoonPortlet.
(VG)
-
POI block: cell spanning.
(TC) Thanks to Frank Taffelt. Fixes 28015.
-
Forms block: Implement setValue method for the upload widget.
(JH)
-
NamingInputModule provides access to the JNDI context.
(VG)
-
Add configuration support for log4j.
(CZ)
-
New Input modules: URLEncodeModule and URLDecodeModule
(ATC) Thanks to Leszek Gawron.
-
Tour block: added Java shapes sample.
(BD) Thanks to Stavros Kounis. Fixes 28834.
-
Serializers block: Added support for indentation to the XMLSerializer.
(TC)
-
Added instrumentation support to ContinuationsManager.
(VG)
-
Lucene: SearchGenerator incorrectly counts previous-index. Reported by: Tomasz Nowak (tnowak-p@netventure.pl)
(AG) Thanks to Jorg Heymans. Fixes 23118.
-
Fix: buildList() in AbstractDatabaseAction generates incorrect parameter list.
(AG) Thanks to wchao@yahoo.com. Fixes 32011.
-
Fix: Webmail sample broken.
(AG) Thanks to Leo Leonid. Fixes 32124.
-
Fix: Context directory not required to be writable by the CLI.
(AG) Thanks to Rick Tessner. Fixes 32214.
-
Portal: If a coplet has an error, the error-uri has been called twice. This is fixed now.
(CZ) Fixes 32199.
-
Portal: Request content length and content type are required in portlet ActionRequest
for custom upload handling.
(RG) Thanks to Michal Durdina. Fixes 32159.
-
Javaflow: JavaInterpreter initialize method was not thread safe.
(RG) Fixes 31854.
-
Scratchpad block: Restored CastorTransformer support for context beans,
restored bean lookup logic, fixed sample.
(VG)
-
The CocoonBean now creates its own private logger hierarchy, thus avoiding to
pollute the CocoonServlet hierarchy when called in that context (e.g. when
generating a static site from a CMS).
(SW)
-
Javaflow block: Support inherited methods.
(TC) Thanks to Nikolaus Rath. Fixes 31297.
-
Scratchpad block: BetwixtTransformer: removed deprecation warning with
latest betwixt.
(AG) Thanks to Christoph Gaffga. Fixes 29945.
-
Flowscript: enforce the explicit declaration of variables in the global
scope (attached to the session). This avoids the implicit declaration of
variables in the global scope when the 'var' keyword is missing, which
leads to weird bugs difficult to track down, especially with continuations.
(SW) Fixes 25951.
-
XSP Block: Add space="strip" attribute support for <xsp:page>
element. When present, all extra whitespace from XSP source is stripped.
(VG) Thanks to Guillaume Deflache. Fixes 27176.
-
XMLDB Block: Fix NullPointerException in XMLDBTransformer if specified
collection does not exist.
(VG) Fixes 30849.
-
XSP - JXPath logicsheet: Allow use relative contexts in <jxpath:for-each>.
Add a new tag <jpath:set-lenient lenient="true|false">.
(AG) Thanks to Gunnar Brand. Fixes 31564.
-
Fix bug in SessionPropagatorAction.
(CZ) Thanks to Sal Mangano. Fixes 30250.
-
Fix syntax error in build.bat on Windows ME.
(CZ) Thanks to Jeff Ramsdale. Fixes 22707.
-
Portal block: Apply patch for rendering a link of the selected tab in TabContentAspect.
(CZ) Thanks to Christian Mayrhuber. Fixes 29996.
-
Portal block: Apply patch for handling GET method when no enctype is set in CopletTransformer.
(CZ) Thanks to Christian Mayrhuber. Fixes 29951.
-
Throw a more meaningful exception if charset classes are missing.
(TC) Fixes 31545.
-
Fixes the SQLTransformer not to close the statement twice.
(TC) Fixes 30874.
-
Change constructor to be public in order to fix bug 30270.
(TC) Fixes 30994.
-
HTML serialization has no space between publicId and systemId.
Updated xalan to 2.6.1-dev-20041008T0304.
(AG) Thanks to David Crossley. Fixes 28680.
-
Flow preserves global variables on sitemap reload.
(VG)
-
XSP logicsheet jpath.xsl: incorrect call to JXPathContext.compile.
(AG) Thanks to Rob Berens. Fixes 31493.
-
Mail block: Support multiple SMTP servers, not only default one.
(VG) Fixes 28485.
-
Mail block: Add support for authenticated SMTP server connections.
(VG) Fixes 24760.
-
Cron block: JobScheduler's fireJob method now supports jobs calling Cocoon
pipelines.
(VG)
-
Allow recursive Flow invocations with processPipelineTo.
(VG)
-
Forms block: rename fd:on-activate to fd:on-action on
fd:row-action and fd:repeater-action for consistency
with fd:action and fd:submit.
(SW)
-
The daylight time cause error when timezone is CST. Updated icu4j to 3.0.
(AG) Thanks to Johnson Hsu. Fixes 30372.
-
Upgrading DELI block from version 0.9.8 to x020904.
(AG) Thanks to Mark H. Butler. Fixes 31407.
-
AbstractSAXTransformer namespaceURI and defaultNamespaceURI must never
be null. When extending AbstractSAXTransformer make sure to set
defaultNamespaceURI in the constructor.
(VG)
-
JXPathMetaModule incorrectly checks for null parameter (can't happen)
instead of empty string.
(AG) Thanks to Ralph Goers. Fixes 31134.
-
Cron block: Fixed memory leak, QuartzJobExecutor was not releasing pipelines.
(VG)
-
Cron block: Fix TestCronJob pipeline call functionality.
(VG)
-
GetInstance don't work with upgrade from db-ojb-1.0rc6.
(AG) Thanks to Johnson Hsu. Fixes 30065.
-
A redirect is now possible, if it's called from flow. This also fixes bug #26571.
(CZ) Fixes 26854.
-
Fix potential memory leaks in CForms/Woody Template Transformer and JXTemplateGenerator.
(CZ)
-
XMLDB Block: Add ability to delete collections with XMLDBTransformer.
(VG) Thanks to Rui Alberto L. Gonçalves. Fixes 29765.
-
Make implementation of Cocoon protocol compliant with the Source interface.
(CZ) Fixes 27260.
-
Mail block: The mail transformer ignored configured toAddresses from a
pipeline parameter. This is fixed now.
(CZ)
-
Fixing BetwixtTransformer does not marshal Collections properly (java.lang.OutOfMemoryError).
(AG) Thanks to Enrico Maccias. Fixes 28209.
-
Fixing lucene-block samples dependencies.
(AG) Thanks to Jorg Heymans. Fixes 30038.
-
POI block: processing of tags "vcenter", "hcenter", "monochrome", "draft",
"Header", "Footer" in "gmr:PrintInformation". Initial support for
"Margins" ("top", "bottom", "left", "right", "header", "footer").
(AG) Fixes 23002.
-
POI block: processing of tags "grid", "orientation and "paper" in
"gmr:PrintInformation".
(AG) Thanks to Viktor Skladovs. Fixes 23002.
-
Fix JXTemplate generator does not handle format-number(number, '$#,##0.00').
(AG) Fixes 24433.
-
Forms block: Handle variants of datatype date correctly (i18n, styling).
(JH) Thanks to Colin Adams. Fixes 29881.
-
Fix JXTemplateGenerator eating backslash characters.
(AG) Fixes 27133.
-
Add new <jx:comment> tag to the JXTemplate. XML comments are not
parsed anymore. See the bug description for a sample.
(AG) Fixes 25083.
-
Move commons-logging-1.0.4.jar to lib/core as jcs.jar depends on it.
(AG) Thanks to Juan Jose Pablos. Fixes 29369.
-
Apply patch: Cached resources don't have Expires-Header.
(AG) Thanks to Jorg Heymans. Fixes 17924.
-
Apply patch: Caching JXTemplateGenerator.
(AG) Thanks to Leszek Gawron. Fixes 29752.
-
Fix byte ranges support in ResourceReader.
(VG) Thanks to Litrik De Roy. Fixes 25712.
-
Apply patch to fix some memory leaks in the tree processor.
(CZ) Fixes 27066.
-
Portal: Fix NPE when non-caching pipelines are used for the portal profile.
(CZ) Fixes 29373.
-
Portal: Fix transformation of non-external html links (HTMLEventLinkTransformer)
(CZ)
-
Portal: Fix problem with bookmarks and CachingURICoplet
(CZ) Fixes 28687.
-
Refactor TreeProcessor to avoid constant reloading of sitemap if its
modification date is in the future and occasional ECM-related exceptions
when a sitemap is reloaded.
(SW) Fixes 27249.
-
Serializers block: Fixed the namespace handling of the XMLSerializer.
(TC)
-
Flowscript: Deprecated support for passing sitemap parameters into flowscript
function as positional arguments. Use cocoon.parameters instead. Support will
be removed completely in Cocoon 2.2.
(VG)
-
Remove jisp from distribution.
(AG)
-
Updated iText to 1.1.
(AG)
-
Updated antlr to 2.7.4, db-ojb to 1.0.1.
(AG)
-
Deprecated the PHP block since the PHP servlet the generator depends on
never worked properly. Explicitly excluded the PHP block from blocks.properties.
(ATC)
-
Updated commons-httpclient to 2.0.2, groovy to 1.0-beta-7, commons-betwixt to 0.6.
(AG)
-
Flow invocations (function calls or continuation invocations) should always
result in a response. Flowscripts with no response are prohibited.
(VG)
-
Updated commons-lang to 2.0-20041007T2305. Needed for Java 5 compatibility (enum is a keyword).
(AG)
-
Updated jdt-core to 3.0.1.
(AG)
-
Cache the mime-type of readers and serializers.
(CZ)
-
Add support for translating attribute values which contain i18n expressions
rather than complete i18n key.
(VG)
-
Mail block: the MailSender now gets its source resolver from the service manager.
This allows its use from flowscript where the old SourceResolver is not available.
(SW)
-
Portal block: Changed pathInfo and servletPath logic. pathInfo always starts
with '/', while servletPath always has no '/' at the end.
(VG)
-
Updated jexl to 1.0, lucene to 1.4.1.
(AG)
-
Cron block: Add support for persistent job stores, type "tx" and "cmt".
(VG)
-
Updated rhino to 1.5r4-20040629T1232,
xreporter-expression to 20040701, ehcache to 0.9.
(AG)
-
Reworked LocaleAction and LocaleMatcher to have similar logic and
configuration.
NOTE: Sitemap variable "lang" renamed to
"language", removed configuration parameters: "language-attribute",
"country-attribute", "variant-attribute".
(VG)
-
Update ant to 1.6.2, commons-jxpath to 1.2, commons-beanutils to 1.7,
POI to 2.5.1-final-20040804, commons-httpclient to 2.0.1, nekohtml to 0.9.3,
hsqldb to 1.7.2, jcs to 1.1-dev-20040811, quartz to 1.4.2, asm to 1.4.3,
asm-util to 1.4.3 and groovy to 1.0-beta6.
(AG)
-
Update qdox to 1.5 and jdt-core to 3.0.0.
(AG)
-
Update lucene to 1.4.
(AG)
-
Update commons-digester to 1.5, commons-betwixt to 0.5, commons-pool to 1.2,
commons-dbcp to 1.2.1 and db-ojb to 1.0.0.
(AG)
-
Update commons-collections to 3.1.
(AG)
-
ResourceReader can now take configuration elements, parameters
are deprecated.
(VG)
-
Portal: CocoonPortlet has new configuration parameter,
default-session-scope.
(VG)
-
Updated commons-logging to 1.0.4
(AG)
-
Updated quartz to 1.4
(AG)
-
A new build property, "include.sources-in-jars", allows to include java
source files in jar archives. Useful when using a non-released version
to know what sources are used.
(SW)
-
Updated Groovy to 1.0-beta5, qdox to 1.4 and util.concurrent to 1.3.4.
(AG)
-
Chaperon block: Improvements for Chaperon JSPWiki to xdocs conversion:
- Handle nested bullet lists (number lists already supported)
- If 'name' parameter is specified, use it as title (and add spaces between
WikiWords) instead of first section title
- Handle images with alt text
- 'spaceless-filenames' parameter will squash out spaces in relative
links
- Fix anchors to use 'id' instead of 'name'
- Emphasize anchors a bit
- selftest.txt tests for lists and tables
- More known issues listed in selftest.txt
(DC) Thanks to Dave Brondsema. Fixes 28809.
Version 2.1.5.1 (July 9 2004)
-
Extended CocoonServlet to allow any
org.apache.avalon.excalibur.logger.LoggerManager
to be used.
(JH) Thanks to Ralph Goers. Fixes 28860.
-
RequestListener hook added, that is called before and after a request is processed.
(JH) Thanks to Ralph Goers. Fixes 28424.
-
Extended FOM so that cocoon.redirectTo("url", true) will do a global
redirect. cocoon.redirectTo("url") will act as before. This enables
FOM to redirect when it is called from within cocoon: protocol
requests, aggregations, etc.
(UV)
-
Added the "tour" block: "Supersonic Tour of Apache Cocoon".
Tutorial/example app focused on the Power Trio: Pipelines, Flow, Forms.
(BD)
-
Added standalone build target "validate-sitemaps".
Added standalone build target "validate-stylesheets".
(DC)
-
CForms: it is now possible to store arbitrary data with each widget
instance by using the new setAttribute and getAttribute methods of the
Widget interface.
(BRD)
-
Groovy script generator support in BSF block
(AG)
-
Databases: The xml-encoding for the SQLTransformer is now configurable.
(CZ)
-
Ant task (correctLinefeed) that corrects linefeed characters according to
our standard (LF).
(RP)
-
New Ant task ("woody2CocoonForms-renaming") that updates namespaces, sitemap components and
flowscript functions (details see tools/target/upgrade-build.xml)
(RP)
-
Added grayscaling and color transformation to the ImageReader.
(JH) Thanks to Peter Horsfield. Fixes 27020.
-
Added additional property <column-case> to the SQLTransformer with
the possible values "preserve", "uppercase", and "lowercase".
(JH) Thanks to Steve Krulewitz. Fixes 22400.
-
CForms: Added String() function. Converts argument to string value.
(VG)
-
Portal block: Add portlet environment to build JSR 168 portlets with Cocoon.
This is a contribution by Alex Rudnev (alex.rudnev@dc.gov)
and Vadim Gritsenko (vadim.gritsenko@dc.gov).
(VG)
-
The persistent store is now really persistent between two application runs. (Fixed
a bug in the hash code calculation of the keys).
(CZ)
-
Fixed jetty-4.2.19.jar compiled for +jdk1.4. The new version can run in 1.3
(AG) Thanks to Juan Jose Pablos. Fixes 28889.
-
Fixed missing escapes of line feeds, carriage returns and tabs, that resulted
in invalid Java code.
(JH) Thanks to Michal Durdina. Fixes 27871.
-
Moving check on number of specified targets within CocoonBean. This was
preventing the processURI(uri, outputStream) method from working.
(UV)
-
XMLResourceBundleFactory was stopping when it encountered the first
bundle name that does not have a locale, missing those that might be
in one of the other locations.
(DC) Thanks to Ralph Goers. Fixes 27878.
-
Moved storage of all flow-related data (viewData, continuation, request, etc) from request
attributes to object model entries. This allows a view called by sendPage() to also use
flowscript (using request attributes caused the two calls to mix up their data).
(SW)
-
Hopefully fixed the source resolving in JSP components finally by using
standard Cocoon/Avalon Excalibur source resolving. This allows to use all
known protocols and Cocoon pseudo protocols as long as the JSP file is
inside the servlet's context.
(JH)
-
CForms: <fi:styling type="date"/> is not needed (nor supported)
anymore, the required information about the datatype and the pattern is
now included in the widget instance XML.
(BRD)
-
Renamed validate-set to constraint-set for consistency (the element name is also constraint-set).
(JH) Thanks to Derek Hohls.
-
"Fixed" bug 15841 by raising an exception when something is tried to add
to elements before attributes.
(JH) Fixes 15841.
-
DefaultIncludeCacheManager did not release xml-serializer under some circumstances.
(CZ) Thanks to Corin Moss. Fixes 27764.
-
DOMFactory can now create a document element.
(CZ) Thanks to Peter Brant. Fixes 27681.
-
Build System: New property "loglevel" that can be used in the patch files.
(CZ) Thanks to Andreas Hartmann. Fixes 27217.
-
Portal: Fix problems with minimizing/maximizing of portlets.
(CZ) Thanks to Michal Durdina. Fixes 27518.
-
Portal: Fix problems with the portal block and using the CLI.
(CZ) Thanks to Simon Mieth. Fixes 26566.
-
Portal: Add default PropertyManagerService implementation
(CZ) Thanks to Michal Durdina. Fixes 27658.
-
Portal: Fix synchronization problem with JSR-168 portlets in IncludingHTMLSerializer.
(CZ) Thanks to Michal Durdina. Fixes 27657.
-
Improvement for AbstractReader: Don't wrap an already buffered stream.
(CZ) Thanks to Gunnar Brand. Fixes 27602.
-
ForwardEnvironmentWrapper delegates isResponseModified/setResponseIsNotModified to wrapped environment.
(CZ) Thanks to Marco Rolappe. Fixes 25437.
-
Fix namespace handling in FilterTransformer.
(JH) Fixes 27301.
-
LinkStatusGenerator now handles also links with a specified charset.
(JH) Thanks to Marco Rolappe. Fixes 26851.
-
Avoid "CLOBs" when indexing XML without superfluous whitespace (Lucene).
(JH) Thanks to Philipp Matthias Hahn. Fixes 25934.
-
Allow streaming of uploaded files into a pipeline using StreamGenerator.
(JH) Thanks to Gernot Koller. Fixes 25594.
-
Avoid accumulating of addresses and attachements in SendMailTransformer,
when sending multiple mails, i.e. multiple sendmail elements at once.
(JH) Thanks to Rui Alberto L. Gonçalves. Fixes 25483.
-
EncodeURLTransformer no longer creates a session.
(JH) Thanks to Marco Rolappe. Fixes 25403.
-
Fixed path separator handling in cocoon.bat/.sh and Loader.java.
(JH) Thanks to Georg Ragaller. Fixes 27254.
-
Fixed duplicate startDocument event in BetwixtTransformer.
(JH) Thanks to Oscar Picasso. Fixes 27456.
-
CForms: Remove custom flow level forms validators.
(VG)
-
Removed xmlform and jxforms blocks as confirmed by a users poll.
(TC)
-
Removed precept block. Was dead code.
(TC)
-
Remove non-FOM flow classes and system.js
(VG)
-
The store/caching system now uses JCS instead of Jisp.
(CZ)
-
Updated Apache JCS to 1.0 dev 20040516 and util.concurrent to 1.3.3.
(AG)
-
Deprecated getWidget from the Widget interface in cforms.
People should consider using getChild(id) or lookupWidget(path) instead.
On the level of the flowscript 'Form' API a semantical distinct getWidget()
(notice: no arguments!) is still available to return the actual wrapped
Java form instance.
(MPO)
-
Updated Joost to 20040330
(AG)
-
Enable XConfToolTask to modify multiple attributes. See the bug report
for description of use. Also enable suppression of comments.
(DC) Thanks to Ralph Goers. Fixes 28704.
-
CForms: Change to generated instance xml <fi:form>.
Nested widgets are now grouped in <fi:widgets> and no longer in <fi:children>.
This aligns with other container-widgets.
(MPO)
-
LinkRewriter: Added support for rewriting URLs which are embedded into
the attribute values (example: style attribute with background image URL).
Such URLs can be extracted using RE expressions and re-written, leaving
rest of the attribute value intact.
(VG)
-
Updated Velocity to 1.4 and iText to 1.02b
(AG)
-
Updated Xindice to 1.1b4, xmldb-api to 20030701, xmldb-common to 20030701
and xmldb-xupdate to 20040205
(AG)
-
Updated Jetty to 4.2.19
(AG)
-
Updated bsf to 2.3.0
(AG)
-
Changed blocks selection handling to allow more intuitive
include.block.blockname syntax in (local.)blocks.properties. Old syntax
exclude.block.blockname is still supported.
(JH)
-
Enabled use of nested sitemap variables, e.g. {request-param:{1}}.
(UV)
-
Updated antlr to 2.7.3
(AG)
-
Deprecated Tokenizer and the methods count(), matchStrings(),
replaceTokens() and both split() in StringUtils. The functionality of all
this was replaced in favor of Apache commons-lang lib. They will be removed
in Cocoon 2.2
(AG)
-
Updated batik to 1.5.1, db-ojb to 1.0RC6
(AG)
-
Updated jdtcore to 2.1.3, update castor-xml to 0.9.5.3
(AG)
-
CForms: Change the syntax for repeater row identity handling.
(JH) Fixes 27600.
-
An internal redirect is now handled the same way as an external redirect would be handled.
This includes that the error handler of the called pipeline is invoked in case of an error.
(CZ)
-
Set the default encoding for the Portlet Environment.
(CZ) Fixes 27188.
-
Move XSP into an own block.
(SMS)
-
Licenses changed to ASF 2.0 in all source files which had a license, using
the ReplaceLicense tool from the committers CVS module.
(BD)
-
Apples use the new CocoonForms classes
(RP)
-
Petstore samples use the new CocoonForms names
(RP)
-
Renaming Woody to CocoonForms
- The Woody block (src/blocks/woody) has moved into the new Cocoon Forms
block (src/blocks/forms).
- new namespaces:
- from xmlns:wd="http://apache.org/cocoon/woody/definition/1.0"
to xmlns:fd="http://apache.org/cocoon/forms/1.0#definition"
- from xmlns:wb="http://apache.org/cocoon/woody/binding/1.0"
to xmlns:fb="http://apache.org/cocoon/forms/1.0#binding"
- from xmlns:wi="http://apache.org/cocoon/woody/instance/1.0"
to xmlns:fi="http://apache.org/cocoon/forms/1.0#instance"
- from xmlns:wt="http://apache.org/cocoon/woody/template/1.0"
to xmlns:ft="http://apache.org/cocoon/forms/1.0#template"
- Java packages moved from org.apache.cocoon.woody to org.apache.cocoon.forms
(RP)
-
Updated Velocity engine to 1.4-rc1
(AG)
-
Updated POI to 2.5-final-20040302
(AG)
-
Pass notification object to coplet error pipelines so it can react on it.
(CZ)
-
Updated xalan to 2.6.0
(AG) Thanks to Leszek Gawron. Fixes 24457.
-
CForms: Support for multiple unique-row-id in a repeater
(AG)
-
CForms: Aggregate field supports both directions (split / combine), and arbitrary
types (not strings only).
(VG)
-
Update Avalon Excalibur packages to released versions.
(CZ)
-
Updated joost to 20031219, qdox to 1.3 and quartz to 1.3.2
(AG)
-
Updated xerces to 2.6.2
(AG)
-
Make the current sitemap service manager available through the component context.
(CZ)
-
Adding basket coplet to the portal.
(CZ)
-
Patch for allowing empty values in configuration of defaults input module.
(CZ) Thanks to Alfred.Nathaniel. Fixes 25093.
-
Patch for disposing components in the properties in xml file module.
(CZ) Thanks to Marco Rolappe. Fixes 26896.
-
Updated commons-httpclient to 2.0-final
(AG)
-
Updated jdtcore to 2.1.2, and Ant to 1.6.1
(AG)
-
Patch for any elemens inside a coplet:content element and not just only text.
(CZ) Thanks to Jon Evans. Fixes 26896.
-
Adding SAX recording to AbstractSAXTransformer.
(CZ)
Version 2.1.4 (February 12 2004)
-
Woody block: every widget can now have a validator. This allows for example
repeaters to perform inter-row validation or overall form-level validation.
(SW)
-
Woody block: added support for rich text editing using InteractiveTools' HTMLArea.
(UC)
-
OJB-Block: Added our own OJB ConnectionFactory which uses the
DataSources configured in cocoon.xconf
(GP)
-
JSPReader: The output encoding of the reader is now configurable.
(JH) Thanks to Marco Rolappe. Fixes 14327.
-
First version of the JSR-168 support in the portal engine.
(CZ)
-
Changed semantics on the cforms binding. Added a @direction (which replaces
the @read-only) and a @lenient attribute on all binding implementations in
the pool.
(MPO)
-
New PipelineUtil class that extends the features or cocoon.processPipelineTo()
to SAX and DOM outputs.
(SW)
-
The "cocoon" object in flowscript has two new methods that allow Java classes
instanciated by a flowscript to access e.g. request, response and components
without requiring a dependency on the "FOM_Cocoon" class.
cocoon.createObject(Class) creates an object and honors the various
Avalon lifecycle interfaces implemented by an object.
cocoon.disposeObject(Object) disposes an object if needed.
(SW)
-
In XMLDBTransformer, create operation now is able to create collections.
It will create collection if oid attribute value ends with '/', otherwise
it will work as before (creates XML resource)
(VG)
-
Added optional collection attribute on <xmldb:query/> element of XMLDBTransformer.
This attribute specifies collection name, relative to the transformer's base
collection, which is used as base collection for current create/delete/update
operation
(VG)
-
Woody: new double-list styling for MultivalueField.
(SW)
-
New MountTableMatcher to define "mount tables" that allow external
directories to be mounted in a sitemap without requiring to modify the
sitemap. It's use has been included in the samples sitemap, thus allowing
mounts that surivive a "build clean webapp".
(SW)
-
Woody: added rendering of <wd:help> popup panel on a "?" icon.
(SW)
-
Woody: new upload widget. This required some modification on multipart.Part
objects that can now survice the end of processing of the current request.
(SW)
-
Add cocoon.sendStatus([Number] sc) and cocoon.response.setStatus([Number] sc)
to FOM.
(UH)
-
Fixing memory leak in the cocoon protocol.
(CZ) Thanks to Michael Gerzabek. Fixes 26186.
-
Allow the Authentication Framework to invoke a pipeline during logout
(CZ) Thanks to Ralph Goers. Fixes 26450.
-
JSPEngineImpl incorrectly converts bytes to characters.
(UH) Thanks to Johan Stuyts. Fixes 25694.
-
Build fails on windows without cygwin.
(AG) Thanks to Karel Vervaeke. Fixes 25664.
-
Fix NPE error when pointed tag is empty in xsp-session-fw:getxml. Applying
patch from ltrillaud@jouve.fr (ltrillaud@jouve.fr).
(AG) Thanks to Laurent Trillaud.
-
Do not double decode URI in CocoonServlet
(VG) Fixes 25132.
-
Resurrected the XMLDB samples including XIndice 1.1b1 in Cocoon.
(JH)
-
I18n transformer now works with translations containing elements with
attributes.
(VG)
-
Disable accessing files outside the context via the context protocol.
(CZ) Fixes 24093.
-
woody.js has been removed. Please use woody2.js instead.
(VG)
-
Remove deprecated XMLDB generators from the sitemap
(VG)
-
I18n transformer does not support old configuration syntax anymore
(parameters catalogue-name, catalogue-location). Use <catalogues/>
element instead.
(VG)
-
Updated iText to 1.02
(AG)
-
ResourceReader: Is now configurable as well. All parameters can be defined
during configuration of the reader. Fixed also a minor bug in the last-modified
detection.
(CZ)
-
Updated POI to 2.0-final
(AG)
-
Resurrected the Slide block and made it to work with current developement version
of Slide (2.0-b1). Complete revamping of the Slide sample admin app.
(UH) Fixes 25356.
-
Updated commons-collections to version 3.0
(AG)
-
Updated commons-httpclient to the version 2.0-RC3
(AG)
-
Renamed JspGenerator to JSPGenerator to match JSPEngine and JSPReader naming convention.
(UH)
-
Woody expression manager supports registration of custom functions (see cocoon.xconf).
Added IsNull function.
(VG)
-
Updated Jakarta ORO to the version 2.0.8.
(AG)
-
Updated Lucene to 1.3 final.
(AG)
-
Updated Ant to 1.6.0.
(AG)
-
Remove dependencies to Xalan (from portal-fw, authentication-fw, session-fw and core)
(CZ)
-
Portal-Engine: Added some new samples (for inter-coplet communication,
cleaned up the sample, fixed some bugs and added some new components
for developing own coplets.
(CZ)
-
ResourceExistsSelector now works the same way as ResourceExistsAction does.
It can now detect existence of any Cocoon resource, not only files in context.
Default value for prefix was changed from '/' to ''. For old behavior, use prefix
'context://'.
(VG)
-
Fixed and updated the stores and made them instrumentable to follow their size and
the number of hits and missed.
(SW)
-
Reworked I18nTransformer implementation to use new version of XMLResourceBundle.
(VG)
-
Reworked XMLResourceBundle implementation. Now it supports only XML bundles with
fixed syntax (same as for I18nTransformer dictionaries), and instead of XPath
keys uses message keys (which is faster). Returned resources now are instances of
ParamSaxBuffer class, and not DOM nodes.
(VG)
-
Modified BundleFactory interface to return Bundle instead of Component.
(VG)
-
Cocoon Forms (Woody) selection lists now allow empty value (which is
translated to the null object)
(VG)
-
Deprecate MirrorRecorder. It will be removed starting with Cocoon 2.2
(VG)
-
Update libs Xerces to 2.6.0 and xml-apis.jar.
(AG)
-
Updated Entity Resolver from pre-release to official
xml-commons-resolver-1.1 release.
(DC)
-
NetUtils deparameterize() and parameterize() extended to support
multivalue parameters. Multivalue parameters are returned as String
arrays.
(VG)
-
Updated Jetty to 4.2.14
(AG)
Version 2.1.3 (November 13 2003)
-
sitemap-viewer added to the scratchpad samples
(BD) Thanks to Jelle Alten. Fixes 24294.
-
Patch to XMLDBTransformer to generate a key on create if it is not provided
(GR) Thanks to Micheal Homeijer. Fixes 14845.
-
New JavaScriptBinding for Woody, which allows writing specific binding strategies
with two JavaScript snippets (one for load, one for save).
(SW)
-
Add initial support for IE in linotype.
(GH) Thanks to Klaus Bertram. Fixes 22813.
-
Woody block: New integer Datatype.
(AG)
-
SimpleFormTransformer: multiple values not repeatedly inserted anymore,
value is consumed instead. Add repeater tag. Make transformer inherit from
AbstractSAXTransformer. Update examples to show basic repeat tag usage.
(CH)
-
Complete overhaul of the Petstore sample. Adding Woody form processing
Flow, and dealing with persistent data. Implementation of missing or
unfinished parts. See the the bug report and its attached notes.
(DC) Thanks to Leo Leonid. Fixes 24463.
-
The CachingPointProcessingPipeline now uses Parameters instead of
an own configuration scheme. See the demo sitemap for the changed configuration.
(CZ)
-
XMLByteStreamCompiler now handles also text nodes longer than 32 k.
(JH) Thanks to Simon Mieth. Fixes 23299.
-
Reducing
setDocumentLocator calls in JXTemplateGenerator and JXFormsGenerator.
(CZ) Thanks to Sam Coward. Fixes 23538.
-
Fix HSSFSerializer Bug: Same cell definitions blows document. Applying
patch from Grigorios Merenidis (Grigorios.Merenidis@Dresdner-Bank.com).
(AG) Thanks to Grigorios Merenidis. Fixes 19638.
-
SQLTransformer: Correcting handling of XML data with XML declarations.
(CZ) Thanks to Andrzej Taramina. Fixes 24326.
-
Fixing threading problems in the ExtendedComponentSelector.
(CZ) Thanks to Volker Schmitt.
-
Fixing namespace handling in the send-mail transformer.
(CZ) Thanks to Martin Holz. Fixes 24409.
-
Fixing precompilation of the XSPs for the CLI.
(CZ) Thanks to Andrea Poeschl.
-
Closing some memory leaks in the source and component handling.
(CZ) Fixes 23625.
-
Cocoon Protocol: Fixed a bug that broke the environment handling in some cases for internal pipeline calls. (This should also fix bug #15843).
(CZ) Thanks to Sam Coward. Fixes 22377.
-
HTMLGenerator: fixed NullPointerException in case the "HTML" file contained an XML declaration.
(BRD) Thanks to Alfred Fuchs. Fixes 23648.
-
Fixed ResolverImplTestCase so that the "test" build target does not fail (it still depends on the
deprecated block, though).
(UC)
-
Woody: fixed a bug causing an endless loop during validation of a field if
during the validation of the field the value of the field itself was again
requested.
(BRD)
-
Patched SQLTransformer to use only one connection.
(BRD) Thanks to Daniel Fagerstrom. Fixes 16718.
-
Woody: in the form definition, for widgets that have child widgets, those
child widgets should now be embedded inside a wd:widgets element.
Practical update information can be found
in the wiki.
(BRD)
-
Updated Xalan to 2.5.2
(AG)
-
Woody: did some cleanup of the FormHandler interface: moved it to the event subpackage,
made it handle all types of WidgetEvents (there's an AbstractFormHandler which splits
ActionEvents from ValueChangedEvents). Removed the deprecated RepeaterHandler class,
and the unused CarSelectorHandler class.
(BRD)
-
Serializers now can optionally implement the SitemapModelComponent interface, meaning then can
be given a "src" attribute and parameters using <map:parameter>.
(SW)
-
Sitemap components (matchers, actions, generators, etc) can know the location of their use in the
sitemap unsing a special parameter named Constants.SITEMAP_PARAMETERS_LOCATION.
(SW)
-
TraversableGenerators can now be used with plain resources too (not only
collections). XPathTraversableGenerator has been revamped
in the XML recognition pattern (using mime type mapping too).
While at it, a bug regarding non-existent sources has been
fixed.
(GR) Thanks to Unico Hommes. Fixes 23575.
-
Update lib excalibur-i18n to 1.1, update iText to 1.01
(AG)
Version 2.1.2 (September 30 2003)
-
OJB block: Object Relational mapping tool integration.
(AG)
-
Slop block: New YAPT sample, lightweight presentation tool.
(BD)
-
Fixing release of Source in the JXTemplateGenerator.
(CZ) Thanks to Volker Schmitt. Fixes 23171.
-
New event-handling system for Woody. Value change and action event handlers
can be attached respectively to field and action widgets, and event handlers
can be both Java classes or JavaScript snippets in the form definition.
New <wd:repeater-action> widget to automatically handle rows addition and
deletion on repeaters (a very common need).
New <wd:submit> widget to distinguish between actions (act on the form and
redisplay it) and submits that terminate the form.
Ability to trigger form submit on any widget value change (including inputs,
popups, etc) to trigger server-side event handlers through client-side interaction.
Rewriting of the Woody/FlowScript integration to be more simple.
(SW)
-
Errors handled by map:handle-errors are now logged to the logcategory
"sitemap.handled-errors". Previously they weren't logged.
(BRD)
-
Fix default namespace handling in Xscript variables.
(VG) Fixes 23516.
-
Fixed internationalization support for HSSFSerializer by setting also the
output encoding in the Workbook to UTF-16.
(JH) Thanks to Yury Mikhienko. Fixes 23208.
-
Fixed issues the cron block had when cocoon (or the servlet container ?)
allows reloads.
(GP)
-
Woody binding framework: fixed a problem with the deletion of rows by the
repeater binding, whereby not all deleted rows where removed from the
bean or XML model.
(BRD)
-
Removed deprecated XPathProcessor and implementations. These classes where
moved into the Excalibur XMLUtil package. Removed Jaxen libraries used by
JaxenProcessorImpl.
(VG)
-
Update lib commons-lang to 2.0, iText to 1.00
(AG)
-
Update libs Xerces to 2.5.0 and Ant to 1.5.4
(AG)
-
Replaced the deprecated LogkitManager stuff with its LoggerManager
counterpart. This is Cocoon internal and should not affect components as
long as you don't use LogKitManageable interface.
(JH) Fixes 21730.
Version 2.1.1 (September 05 2003)
-
cron block added
(GP)
-
Applying patch for adding new session-fw logicsheet that allows access to a session context from with xsp.
(CZ) Thanks to Antonio Gallardo. Fixes 13070.
-
Adding new RequestDataStore component that can be used as a replacement
for the component marker interfaces RequestLifeCycleComponent and
GlobalRequestLifeCycleComponent obsolete.
(CZ)
-
Adding contributions to the portal from Friedrich Klenner (friedrich.klenner@rzb.at),
Gerald Kahrer (gerald.kahrer@rizit.at) and Gernot Koller (gernot.koller@rizit.at):
caching uri coplet, application coplet, proxy transformer, proxy reader and link
transformer.
(CZ)
-
Added include/exclude feature to CLI to allow fine-tuning of crawling of a site.
(UV)
-
Add a session-context input module to the session framework to retrieve
information from a session context in the sitemap.
(CZ)
-
Applying patch for processing http.nonProxyHosts in WebServiceProxyGenerator.
(CZ) Thanks to Peter Ross. Fixes 21399.
-
Applying patch for using 'host' in the logging patterns.
(CZ) Thanks to Unico Hommes. Fixes 21848.
-
Fixed a StackOverflowError in errors2html.xslt that could occur with error
pages containing very long stack traces.
(BRD)
-
Changed logkit attribute of <logging in cli.xconf to be relative to context dir,
rather than CLI invocation dir.
(UV)
-
Upgraded excalibur-event package so that Tomcat shutdown and continuations
cleanup now works properly.
(BRD) Fixes 18131.
-
POI block: fixed formula support. If no ValueType attribute is set on
<gmr:Cell/>, the cell content will be interpreted as formula.
(JH) Thanks to Neil Bacon. Fixes 22574.
-
Lucene block: LuceneIndexTransformer configuration fixed.
(JH) Thanks to Conal Tuohy. Fixes 22498.
-
Applying patch from Renaud Bruyeron (bruyeron@fullsix.com) that fixes
the prematurely closing of the connection causing in the SQL Transformer.
(CZ) Fixes 12173.
-
Rewrite handling of internal-redirects (i.e. redirects to "cocoon:" URLs). Previously, internal redirects
where not handled for internal requests (i.e. sitemap source). This bug prevented among other cases the use
of flow-driven pages enclosed in an aggregation.
(SW)
-
The jars in /lib/local are used during compilation again.
(CZ)
-
Update the I18nTransformer so that it also accepts the 2.0 namespace. This ensures backwards compatibility
for 2.0 applications. Additionally, attributes on "i18n:" elements can now be in the default namespace (meaning
we can now write <i8n:text key="foo"> instead of <i18n:text i18n:key="foo">)
(SW) Fixes 20445.
-
Fix in the SVG serializer: if setDocumentLocator wasn't called on the
serializer (which can happen if you have e.g. an XSLT transformer in the
pipeline), then the base URI for the SVG document wasn't set which could
cause exceptions. Now it is set to http://localhost/ in such cases. Also
fixed a problem with the document locator not being reset between
subsequent retrievals of the serializer from the pool.
(BRD)
-
Fix Jisp based persistent store: close database files on Cocoon shutdown and
re-use existing database and index files on startup.
(VG)
-
Views are now always loaded before resources, ensuring proper call of views from resources.
Redeclaring a component (e.g. file generator) with no "label" attribute was wrongly inheriting
view labels from the same component in the parent sitemap.
(SW) Fixes 22239.
-
Moved scratchpad into an own block. This allows that code in the
scratchpad can depend on other blocks. The scratchpad can now also
have own configurations.
(CZ)
-
Extended the build system. If one block depends on the other it
can now also use the libraries of the other block. This avoids
moving the libs to the lib/optional directory.
(CZ)
-
Updated Jakarta Regexp library to the version 1.3
(VG)
-
Woody: renamed the button widget to action widget. If you were using this
widget, you will need to update your form definition files.
(BRD)
-
Midi block: added transposition and inversion stylesheets and samples.
(JH) Thanks to Mark Leicester. Fixes 22479.
Version 2.1 (August 12 2003)
-
Patch for allowing to specify a cocoon-view for internal requests in the query string.
(CZ) Thanks to Unico Hommes. Fixes 22270.
-
midi block added
(BD) Thanks to Mark Leicester.
-
slop block added (Simple Line Oriented Parser)
(BD)
-
LDAPTransformer: Added attribute modification methods: add, replace, modify, append.
(JH) Thanks to Yury Mikhienko. Fixes 20033, 22042.
-
Configuration logkit.xconf can now be read from any location.
(CZ)
-
Instrumentation support: Updated client libraries to make instrumentation work again.
Added a target "start-instrumentation-client" to Cocoon's ant files and removed "runclient" shell scripts.
(JH) Fixes 19839.
-
XMLDBTransformer: retrieving auto-generated resource id.
(JH) Thanks to Nicolas Maisonneuve. Fixes 22064.
-
LDAPTransformer now handles multiple attribute values.
The filter element is also configurable via a sitemap parameter.
(JH) Thanks to Unico Hommes. Fixes 21931, 22173.
-
IMPORTANT: Flow: cleaned up the situation with regards to the "uri" argument to the
sendPage, sendPageAndWait, and processPipelineTo functions. URI's starting
with a slash are resolved against the root sitemap, URI's not starting with
a slash are resolved against the current sitemap. Specifying a scheme is not
allowed.
(BRD)
-
I18nTransformer: if content of i18n:text is empty and translation is not
found, use untranslated-text.
(BRD) Fixes 19841.
-
ESQL: explicitly release database resources.
(CH) Thanks to Gildas Guillemot. Fixes 22050.
-
Paginator now caches dynamic pagesheet correctly.
(CZ) Thanks to Frank Taffelt. Fixes 21213.
-
Fix the ignoreErrors handling in the cinclude transformer.
(CZ)
-
Midi block refactoring applied.
(JH) Thanks to Mark Leicester. Fixes 22288.
Version 2.1rc1 (July 29 2003)
-
Added delete capabilities to the SourceWritingTransformer.
(GR)
-
Add a defaultContentType parameter to StreamGenerator, to comply
with misbehaving clients.
(GR) Thanks to Guido Casper. Fixes 21881.
-
Add a new set of WebDAV samples, with the capability of serving
WebDAV content straight from Cocoon.
(GR) Thanks to Guido Casper. Fixes 21778.
-
Added CLOB support in SQLTransformer.
(GR)
-
Added an (unstable) HTMLTransformer to the html block, to parse and
tidy an XML containing escaped (and possibly incorrect) HTML
(GR)
-
Added a WebDAV block, with an initial implementation of
a modifiable and traversable WebDAV source.
(GR)
-
Added a DirectoryGenerator implementation on scratchpad
working on any Traversable Source.
(GR)
-
Adding global request lifecycle component.
(CZ)
-
ParanoidCocoonServlet can optionally configured with a file containing the classpath.
(CZ)
-
Configuration cocoon.xconf can now be read from any location.
(CZ)
-
Various fixes and enhancements to Lucene search. Propagate the lucene:*
elements to the result tree and add "elapsed-time" attribute, so now
possible to transform the results into a useful report about indexing.
Fix "incremental" indexing.
(DC) Thanks to Conal Tuohy. Fixes 21557.
-
Made JSPs working in Resin that don't end on *.jsp.
(JH) Thanks to Ryder Rishel. Fixes 4934.
-
Reverted the encoding changes in the JSP engine. The fix should be done in
the JSPReader, that already contains a TODO.
(JH) Fixes 14327.
-
Web3: The stylesheets in the examples use Xalan as transformer and work correctly now
as XSLTC has problems with the 'rfc' namespace.
(RP)
-
Flow view can now be in "internal-only" pipelines.
(SW)
-
Refactored the WebServiceProxyGenerator: "host parameter is null" fixed, replaced deprecated
stuff, removed all work arounds (hopefully no longer needed), removed the buggy "<?xml" test,
replaced getResponseBodyAsString() with getResponseBody() (but encoding issue is still not fixed).
(JH) Thanks to Peter Ross. Fixes 21340.
-
Applied patch for implementing exists for the xmldb source.
(CZ) Thanks to Tim Goodwin. Fixes 20115.
-
Updated FOP to the latest released version, 0.20.5.
(VG)
-
Added URL encoding of user/password in the WebDAV source
(webdav://user:password@host/path)
(GR)
-
Decouple core XSP logicsheet from database classes to allow XSP deployment
without excalibur datasource JAR file. If your XSP pages use datasources
directly (and not through ESQL logicsheet), add xsp:include.
(VG)
-
The authentication framework now uses a configurable component to try to authenticate a user.
This allows to drop in own authentication services or e.g. the servlet authentication mechanism.
(CZ)
-
All Reader accessing Avalon components now extend the ServiceableReader
instead of deprecated ComposerReader. It pertains the JSPReader, the
DatabaseReader and the AxisRPCReader.
(JH)
-
The cache used by the caching processing pipeline is now configurable
allowing to use different caches in different pipelines.
(CZ)
-
The cache uses now a configured store. This allows to use differently
configured caches at the same time.
(CZ)
-
Changed namespace for Web3RfcTransformer to 'http://apache.org/cocoon/Web3-Rfc/1.0'.
(RP)
-
Updated FOP to 0.20.5rc3a.
(JH)
-
Moved WebServiceProxyGenerator + some samples into the proxy block.
(JH)
-
Updated common-httpclient from CVS checkout of 2003-02-10 to 2.0 beta 2.
This hopefully fixes also the bug. Moved it into core because of dependencies.
(JH) Fixes 12216.
Version 2.1m3 (July 5 2003)
-
Added merged region support to HSSF (= Excel) Serializer.
(BRD) Thanks to Danny Mui. Fixes 15150.
-
Added SimpleSelector that operates just on Strings. Useful in conjunction
with a sitemap variable or input module.
(CH)
-
Added support for permanent redirects in <map:redirect-to>
(UV)
-
Adding concept of parent-aware components, making e.g. the usage of
selectors with a component manager hierarchy much easier.
(CZ)
-
Added cHTML/iMode "Hello World!" sample (provided by Arje Cahn)
(JH) Thanks to Arje Cahn. Fixes 20477.
-
Getter for jxcontext_ property added for subclassing reasons.
(JH) Thanks to Robert E. Parrott. Fixes 13559.
-
The object model and the components stored in the object model are now available
via the component context.
(CZ)
-
I18nTransformer: support a currency attribute on i18n:number. This allows
to take the currency symbol and formatting from one locale and the decimal
and grouping separation symbols from another locale.
(BRD) Thanks to Michael Enke. Fixes 19894.
-
Web3: Fix extra close element on connectivity loss.
(CH) Thanks to Michael Gerzabek.
-
Fixed SchematronValidator.evalRule() in xmlforms block: create a relative context instead of an absolute one.
This allows to refer to another form field by using relative paths (../password) instead of choosing a common root.
(JH) Thanks to Johan Stuyts. Fixes 19104.
-
Fixed return of different DirValidity objects on multiple calls on getValidity() in the DirectoryGenerator.
(JH) Thanks to Wolfgang Kowarschick. Fixes 20682.
-
Fixed some caching (added missing parameters and changed algorithm for cache key generation)
and logging issues in the DirectoryGenerator. Fixed the root pattern handling (if not matching
directory found leave out the ancestors). Fixed empty src attribute handling.
(JH)
-
Added/fixed internationalization support for HSSFSerializer by setting the output encoding
hardcoded to UTF-16. It is obviously only a hack, but so it is at least usable for more people.
(JH) Thanks to Maciek Kaminski. Fixes 15365.
-
Fixed usage of removed method XSPUtil.include() in ESQL logicsheet <esql:get-xml/>
(JH) Thanks to Alfred Nathaniel. Fixes 20658.
-
Fixed NPE in SQLTransformer.serializeData()
(JH) Thanks to Tony Culshaw. Fixes 14977.
-
Encoding-related change to the JSP engine: the response charset is now
retrieved from the Content-Type, and if not found ISO-8859-1 is used as
default (previously UTF-8 was the default).
(DC) Fixes 14327.
-
The deprecated source implementations are now wrapped by proxies.
Modified patch from Jens Lorenz (jens.lorenz@interface-business.de)
(CZ) Fixes 11533.
-
For non-existent files XSPUtil.relativeFilename() now throws FileNotFoundException instead of NPE.
(JH) Fixes 15302.
-
Fixing incorrect caching behaviour when internal pipelines are used.
(CZ) Thanks to Alex Romayev. Fixes 17623.
-
Command-line will no longer add a 'null' suffix to files with an unknown MIME type.
(JT)
-
Logicsheets:
Changed scope of and renamed temporary 'soap:call' XScript variable in <soap:call>.
Fixed compilation problem with <xscript-get as="object"> expression.
(VG) Thanks to Hugh Leather. Fixes 20159.
-
Fixed synchronisation problem in I18nTransformer when retrieving catalogues.
(BRD) Thanks to Michael Enke. Fixes 19881.
-
Improved XPointer support in the XIncludeTransformer. Meanwhile improved the way xml:base
attributes are handled, added support for the xi:fallback element, do XInclude processing
on included content, and added XInclude samples.
(BRD) Fixes 19423, 15525.
-
Refactored the XPathDirectoryGenerator: provides all the functionality of DirectoryGenerator now,
parameter xpath added replacing the xpointer-ish syntax, additional parameter xmlFiles for specifying
a pattern for XML files, removed docid attribute on dir:xpath + some minor fixes.
(JH)
-
Updated POI from 1.7.0-dev to 1.10.0-dev. Patched code accordingly. Fixed usage of deprecated methods.
(JH) Thanks to Alfred Nathaniel. Fixes 21248.
-
SimpleFormTransformer: Make complete form protectable, ability to use more
than one transformation with different fixed attributes, optionally let
error elements pass, configure prefix, suffix, separator at configuration
time, add optional use of form name, formating.
(CH)
-
Added feature to allow a database action (i.e. delete) not to fail if no
row was affected. Formating. Use toString() to convert to String rather
than cast.
(CH)
-
The DTDs are now completely handled by the catalog entity resolver.
The old copies of DTDs at xdocs/dtd/ have been removed. If you are
editing the Cocoon xdocs with an xml editor, then point it to the
WEB-INF/entities/catalog or catalog.xcat file. If your editor cannot
utilise an entity resolver, then get a better editor.
(DC)
-
Upgraded to new Axis 1.1 release
(GP)
-
Upgraded Xalan (includes XSLTC) from a CVS snapshot (20030506) to version 2.5.1.
(BRD)
-
Updated ParanoidCocoonServlet, which is now an easy solution to the
well-known endorsed library problem (incompatible version of Xalan in
Cocoon and in JDK 1.4+).
(SW)
-
Dispose the parent Component Manager if it implements Disposable. Happens when the
Cocoon servlet shuts down or when Cocoon is reloaded.
(BRD) Thanks to Unico Hommes. Fixes 15312.
Version 2.1m2 (May 20 2003)
-
Added XHTML 1.1 DTD to the entity catalog. Added XHTML 1.1 serializer into the sitemap.
Explained different XHTML 1.0 serializer options.
(VG) Fixes 16003.
-
Added STX block. (alternative to XSLT)
(TC) Thanks to Daniel Fagerstrom. Fixes 19772.
-
Adding new portal framework.
(CZ)
-
QDox block added, parses Java source code and javadoc tags, includes samples.
(BD) Thanks to Bart Guijt. Fixes 16523.
-
Hello World sample added for the SWF block (although page2swf.xsl contains incomplete font definition).
(BD) Thanks to Joerg Heinicke. Fixes 19619.
-
Added 304 support to cacheable pipelines
(GR) Thanks to Miles Elam. Fixes 19206.
-
standalone-demo build target added
(BD)
-
Throw InvalidContinuationException when flow continuation is not found or not valid,
instead of forwarding to hard-coded 'invalidContinuation' page.
(VG) Thanks to Tony Collen. Fixes 19526.
-
Fixing NPE in JspEngineImpl.
(CZ) Fixes 14564.
-
Obtain handler and application name from parameters for internal requests if
handler could not be resolved from the request object.
(CZ) Fixes 14117.
-
Delaying getting of the output stream from the http response until it is really needed.
(CZ) Fixes 17612.
-
Fixing the problem with eating spaces in custom transformers.
(CZ) Fixes 19683.
-
DTD comment events are now dropped after parsing by default.
(BRD) Fixes 17763.
-
When an exception occured in a pipeline containing an XSL, the contents of
the pipeline was appended to the error page. Now this only happens anymore
when the incremental-processing of Xalan is enabled (which is unavoidable
for now).
(BRD) Fixes 13186.
-
Disabled incremental-processing of Xalan by default.
(BRD) Fixes 13186.
-
cacheable.xsp sample reworked, did not work in M1
(BD)
-
new FOP serializer samples, accessible from the "blocks with samples" page
(BD)
-
Fixed NPE if ESQL does not get a connection
(TC) Thanks to John R. Daily. Fixes 15820.
-
Fixed SQL injection vulnerability of DatabaseAuthenticatorAction
(TC) Thanks to Geoff Howard. Fixes 14286.
-
ESQL "Auto" support for sybase ASE. New database detection method.
(TC) Thanks to Neil Bacon. Fixes 18547.
-
Removing dependency from the Cocoon core to JTidy.
(CZ)
-
Sync XML:DB source with 2.0 branch: Conect to the XML:DB once, from the
XMLDBSourceFactory.
(VG) Fixes 18683.
-
Changed namespace for the RequestGenerator to 'http://apache.org/cocoon/request/2.0'.
(SMS)
-
Changed namespace for XMLForm components to 'http://apache.org/cocoon/xmlform/1.0'.
(SMS)
-
Extended the ExtendedXLinkPipe to be more extensible. Prepared is html and p3p.
(SMS) Thanks to Torsten Knodt. Fixes 19786.
-
Patch velocity generator, so that the scope of objects can be specified (request, session, sitemap).
(SMS) Thanks to Michael Homeijer. Fixes 14986.
-
Fixed namespace handling in XMLDBSource.
(GR) Thanks to Ciro Mondueri. Fixes 19978.
-
Enable the LDAPTransformer to obtain attribute values from LDAP using various encoding
schemes for stored values.
(SMS) Thanks to Yury Mikhienko. Fixes 18466.
-
Cleaned up MIMEUtils.
(SMS) Thanks to Torsten Knodt. Fixes 19885.
-
The DirectoryGenerator is now cacheable. A new "refreshDelay" parameter defines the delay between two checks
on the filesystem for modified files.
(SW)
-
Updated Xalan to a CVS snapshot (2003-05-06), fixes bug with incorrect
namespaces in endElement SAX events.
(BRD)
-
Redesign/modularizing the authentication and session framework.
(CZ)
Version 2.1-M1 (April 29 2003)
-
'handle-errors' sections in the sitemap now do not have an implicit
generator: any generator can now be used, whereas previously it was
implied and produced an XML representation of the error).
To ensure backwards compatibility, 'handle-errors' sections can have a
'type' attribute to continue the implicit-generator behaviour, but are
now to be considered as deprecated.
A new ExceptionSelector is also available to drive the error-handling
pipeline constuction depending on the error type.
(SW)
-
Enhancements to the CLI to reduce the number of times it
needs to render a page. Using the option to prevent checking of extensions, it
is now possible to generate a site generating each page only once.
Allow the configuration of the CLI using
an xconf file.
Switch cli to using the Jakarta Commons CLI package.
(NKB) Thanks to Upayavira. Fixes 17671.
-
Added support for the LogFactor5 graphical log event browser.
(MC)
-
Added support for Pervasive db to ESQL.
(TC)
-
Extended the HTMLGenerator so that it can handle HTML snippets
provided as request parameter or as POST data, passing them through
Tidy to ensure well-formedness.
(GR)
-
New caching cinclude transformer. The cinclude transformer can now cache
the aggregated content for a distinct period of time. In addition it can
fetch the content in parallel or pre-emptive.
(CZ)
-
Added proxy generator block for remote HTTP-base generation of XML
(will deprecate the WSProxyGenerator).
(PF)
-
Added subrequest processing via the sitemap to the Cocoon flow.
(PF)
-
The "expires" pipeline parameter is honored even by the internal Cocoon
cache, i.e. the caching algorithms are overridden if an expires
parameter is present and still fresh.
(GR)
-
Optional 'global' parameter on map:redirect-to when giving a URI.
(PAR)
-
Optional "depth" attribute on the cocoon log format to control how deep to go in stacktrace
reporting.
(PAR)
-
Add a NonStaticClassLoaderManager that does not keep internal static variables. Useful when
putting cocoon.jar outside the WEB-INF/lib directory and have multiple XSP pages of the same
name in multiple webapps
(PAR)
-
modular.DatabaseActions: added ability to store FileParts from uploads to
"ascii", "clob", "blob", and "binary" columns. Added getSize() method to FilePart.
(CH) Thanks to Geoff Howard.
-
SAP R/3 connectivity components added.
(CH) Thanks to Michael Gerzabek. Fixes 9075.
-
InputModule to access XMLForm instances.
(CH)
-
(modular) DatabaseAction: added ability to use arbitrary path separators
instead of "." (e.g. "/"), added ability to count rows from 1, added
documentation.
(CH)
-
Created additional isolation level for some OutputModules.
(CH)
-
Added LinkRewriterTransformer.
(CH) Thanks to Jeff Turner. Fixes 15611.
-
Added support for expiring continuations.
(OP) Thanks to Michael Melhem.
-
Added reader user documentation section, including readers documentation;
added BrowserSelector, and HostSelector documentation, plus template-selector
usable as template for writing more selector docs;
added WildcardURIMatcher, and WildcardHeaderMatcher, plus template-matcher
usable as template for writing more matcher docs.
(BH)
-
Integrated the validation targets into the build ("validate-config" and
"validate-xdocs") also still available at the command-line. Validation
happens automatically unless you switch it off. See document
XML Validation Facilities.
(DC)
-
New transformer extracts fragments to documents and stores them using an
OutputModule. Tags that start fragment are configurable.
(CH)
-
New output module puts everything in a map in a request attribute.
(CH)
-
XMLMetaModule returns DocumentWrapper instead of String.
(CH)
-
Wrapper for org.w3c.dom.Document that implements XMLizable and provides
a useful toString() method.
(CH)
-
SimpleMappingMetaModule: added feature to remove a prefix / suffix.
(CH)
-
New InputModule to access contents of
an XMLFile using JXPath, based on patch from Jeff Turner (jefft.at.apache.org).
(CH)
-
Added jetty webserver for fast and easy Cocoon test and evaluation.
To run launch "build run" and point the browser to http://localhost:8888/
Since it seems there is a bug somewhere, ATM point to
http://localhost:8888/documentation/index.html to see the page.
(NKB)
-
Enhanced the RELAX NG grammar for sitemap.xmap files and added embedded
Schematron rules.
(DC) Thanks to Colin Paul Adams.
-
New build target "validate-xdocs" to conduct build-time validation of core
xml documentation (call it manually with:
./build.sh validate-xdocs).
(DC)
-
Added SystemPropertyModule input module to enable environment variables
in sitemap attributes. E.g.:
<map:transform src="{system-property:user.home}/style.xsl">
(KP)
-
Added resource bundle component interfaces to allow different
implementations to be used for i18n.
(KP)
-
Added RELAX NG grammar for sitemap.xmap files and removed old draft sitemap
DTD.
(DC) Thanks to Colin Paul Adams.
-
Added a draft W3C XML Schema for sitemap.
(KP)
-
Added support for sitemap variable anchors {#name:variable}.
This introduces a new "name" attribute for matchers and actions
(TC)
-
Added support for direct access of root level sitemap variables {/1}
(TC)
-
New pipeline hint attribute to allow pipeline components (i.e. map:generate, map:transform
and map:serialize) to hold some pipeline-specific parameters. The first usage of this feature
is to drive manual cache points for the CachingPointProcessingPipeline.
(SW) Thanks to Michael Melhem. Fixes 12780.
-
Added initial support for compilation of Cocoon blocks, and migrated
Fop and Batik classes and configuration to the src/blocks dir.
Blocks that need Avalon components not yet supported.
(NKB)
-
Added support for Avalon Excalibur instrumentation.
(MC)
-
Added CascadingIOException to wrap other exceptions when an IOException is thrown.
(CZ)
-
Added configurable buffering of the output. This removes all the problems
with error handler and already committed responses etc. A new pipeline
parameter "outputBufferSize" controlls the behaviour.
(CZ)
-
Added AxisRPCReader to scratchpad. This reader essentially allows you
to serve SOAP requests from your Cocoon application. Sample webapp with
status page is also included.
(MC) Fixes 12304.
-
Added new ComposerReader class with various Reader refactorings.
(MC) Fixes 12122.
-
New user login and preferences sample to show the control flow
layer.
(OP)
-
Added the Chaperon components, examples and docs into the main tree.
(SMS)
-
Moved the SWF generator and serializer from the scratchpad into the main trunk.
Added a hello-world sample for SWF
(TC)
-
Added a new PDF serializer. iText seems to be good and fast alternative with many features
iText also provides support for RTF and HTML
(TC)
-
Extended pipeline handling for CachingPoint caching algorithm.
(CZ) Thanks to Michael Melhem. Fixes 10284.
-
Python language support for the XSP pages.
(VG)
-
Python programming language using jython interpreter.
(VG)
-
New SwitchSelector that uses a common context object for all map:when tests.
(SW) Thanks to Marcus Crafter.
-
New Cocoon Generator. Allows Embedding One Web Site in Another.
WebServiceProxyGenerator Demo.
(IAI)
-
XMLForm framework. Allows client independent form handling.
(IAI)
-
Added "userhomes" in the webapp, that automounts the sitemaps
found in *nix user homes.
To remove it, just delete the dir.
(NKB) Thanks to Tim Myers.
-
Added support for actions and In-/OutputModules to the JavaScript
Flow. Caveat: Modifications of the Redirector object are ignored.
(CH)
-
Support for writing xLOBs to database through modular.DatabaseActions. Does
not include a required InputModule that returns a JDBCxlobHelper to be
passed to the action.
(CH)
-
New DatabaseAction: DatabaseQueryAction. It works like the other modular
DatabaseActions but does not auto-generate the query. The query has to be
provided conforming to PreparedStatement syntax. Unlike the name might
suggest, it can be a select, update, or delete query.
(CH)
-
Encourage people to help with the refactoring of Cocoon samples.
Provide a
refactoring guidelines document.
(DC)
-
ESQL: Added support for reading BLOBs from database.
(CH) Thanks to Roger I Martin PhD.
-
Added custom component configuration to map:pipelines section.
(CZ)
-
Added global parameters to map:pipelines section.
(CZ)
-
Replaced event pipeline and stream pipeline with one single component,
the processing pipeline. Added configurable pipelines to sitemap.
(CZ)
-
Added an "expires" directive to map:pipeline in order to
manually set an "Expires:" HTTP header following Apache's
mod_expires syntax.
(GR)
-
Modified check-jars.xsl to dynamically create the jars.xml for
documentation.
Need to copy the generated file over the static placeholder...
Help - where to in the build.xml?
(JM)
-
ResourceReader gets the mime type from the source now,
instead of declaring the mime type in the sitemap.
(GF) Thanks to Stephan Michels.
-
Moved mod-db stuff from scratchpad to trunk.
(CH)
-
Util logicsheet: get-source and include-source tags. E.g. to include XHTML
generated by another pipeline as email.
(CH)
-
Added Jakarta Slide Source components and examples in scratchpad.
(NKB) Thanks to Stephan Michels.
-
Added continuations-based control flow support to Cocoon. It is
currently based on a modified Rhino JavaScript implementation with
continuations support, courtesy of Christopher Oliver:
ftp://ftp.primaryinterface.com/pub/rhino.
(OP)
-
changed the LanguageException and the JavaLanguage to expose more than
just the compilation error. Now it also shows the actual code from the
repository +/- a few lines around that error.
(TC)
-
restructured the ProgramGenerator and
added option "watchSource" (true/false). If turned on you can
make changes inside the generated source code (inside the repository)
and the ProgramGenerator will compile them for you. This eases XSP
debugging a lot! Turned off (same behaviour as before) by default.
(TC)
-
Integrated the new Avalon Excalibur Store and StoreJanitor components.
This deprecates the Cocoon version.
(CZ)
-
Added formula support for HSSF Serializer.
(GF) Thanks to Andy Oliver.
-
Integrated the new Avalon Excalibur XSLT Processor. This deprecates the
Cocoon version.
(CZ)
-
Integrated the new Avalon Excalibur Source Resolving architecture. This deprecates
the now obsolete Cocoon source resolving. Wrapper classes etc. have been provided
for an easy upgrading. In addition the Excalibur XMLizer is added.
(CZ)
-
Added the sunShine contribution from S&N AG, Germany (http://www.s-und-n.de). This
contribution consists of a session management framework, an authentication
framework and a portal engine.
(CZ)
-
RequestGenerator does optionally output request parameters.
(CZ) Thanks to Ilya A. Kriveshko.
-
Output extra locator info if included Throwable of ProcessingException is
SAXParseException or TransformerException.
(BH)
-
Added JXPath based input modules for Request and Session properties.
Demonstration sample is also added.
RequestContextPathModule and RequestURIModules are obsolete now and
will be removed.
(KP)
-
Added a more sophisticated example in samples/webserviceproxy/cocoonhive.
Demonstrates a small virtual portal which embeds functionality
from Amazon and OpenWiki.
(IAI)
-
TextSerializer now can handle absence of root element in the incoming XML.
(VG) Fixes 10242.
-
XMLFileModule: rename 'cachable' to 'cacheable' in configation.
(JT)
-
The CVS repository for Cocoon 2.1 is now called "cocoon-2.1" (no branches, just HEAD).
(PF)
-
Changed category for Log logicsheets.
(SMS) Thanks to Leszek Gawron. Fixes 16695.
-
Set "Last-Modified" header
(TC) Fixes 15401.
-
Fixed the ResourceExistAction to return null instead of EMPTYMAP on
not existing resources.
(TC) Thanks to Alfred Nathaniel. Fixes 17324.
-
Put the exceptions into esql namespace so the variable named "e" is still
available in XSP.
(TC) Fixes 17261.
-
Do not specify a default to the "class-loader" parameter in JavaLanguage
(PAR)
-
Improve default exception handling behavior in CocoonServlet: show exception stacktrace
only when log level is INFO or DEBUG, and add exception message to "Not Found" page.
(VG) Fixes 16267.
-
Use Environment.tryResetResponse() instead of HttpServletResponse.reset() in CocoonServlet
to avoid IllegalStateException if response was already committed.
(VG) Fixes 16264.
-
Add image dimensions to the ImageReader's cache key.
(VG) Thanks to Upayavira. Fixes 16490.
-
Fixed the esql:more-results tag for non-JDBC limit methods
(TC) Thanks to Antonio Gallardo.
-
XMLFileModule checks result of SitemapSource.getValidity() as it may return null
(BH) Thanks to Jeff Turner. Fixes 15609.
-
Postgresql 7.3: LIMIT x,y no longer supported. Added new class for
postgresql-old limit method that still uses LIMIT x,y while postgresql
uses the LIMIT x OFFSET y syntax which has been used by postgresql for
some time now.
(CH) Thanks to Michael Enke. Fixes 15064.
-
Extension to sendmail.xsp: lists for sendmail:cc
(CH) Thanks to Frank Ridderbusch. Fixes 15005.
-
Added container/form-encoding init-params to web.xml
(CH) Thanks to Artur Bialecki. Fixes 14835.
-
Fixing various inefficient logging calls.
(CH) Thanks to Stuart Roebuck. Fixes 15136.
-
Perform correct source resolution in XMLResourceBundle.
Now i18n transformer can obtain dictionaries using any supported source (e.g. 'cocoon:/').
(KP) Thanks to Michael Gerzabek. Fixes 15431.
-
"meta" input modules: configuring a different module locally did not
override the default one in all circumstances.
(CH)
-
input.xml: renaming mixed up called template names from logicsheet-util.xsl
(CH)
-
SimpleFormTransfomer: fixed error tags when no validation data available.
(CH)
-
Added useexternalfile="yes" attribute makes Ant collect all package names in a temporary
file and give that to Javadoc, thus going round the Wintel long command truncation issue.
(NKB) Fixes 14795.
-
Fix setOutputStream throwing IOExeption in XMLSerializer, and TextSerializer.
(BH)
-
Make the CLI report errors correctly to the screen when a page generation fails.
(NKB)
-
When a part of a pipeline aggregation fails, cocoon will no more silently return
without reporting an error.
Now, upon request of an erroneous page, the result is that I can see all parts, that have been processed so
far on the screen and I see the error infos positioned at the bottom of the page.
(NKB) Thanks to Hussayn Dabbous.
-
Fixed the use of roles in TraxTransformer which was incorrect. Now it sets
the factory explicitly in the XSLTProcessor component without using
any special avalon component management capacity.
(SM)
-
Uniformed the configurations used by the Avalon XSLTProcessor component
and the TraxTransformer to specify the TransformationFactory to use.
(SM)
-
Esql: multiple results can now have different result blocks, position
determines matching result position. Last one is default if more results
arrive. call-results now evaluated after other results to comply with JDBC
specs.
(CH)
-
Changed error behaviour in esql: all exceptions now result in error-results
being evaluated. If error-results is present, exceptions are caught,
otherwise a processing exception is thrown.
(CH)
-
Complete rewrite of grouping code in esql (footer still not supported),
group-on available through esql:param
(CH)
-
Esql fix for get-columns with PostgreSQL and getObject not working with all
datatypes
(CH)
-
CLOB support in esql logicsheet, esp. in get-xml
(CH)
-
Fixed esql getBytes() behaviour
(TC)
-
FIX NPE in org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline,
if content is malformed, and there exists an cached response the
validity[] contains null entries.
(BH)
-
Fix CocoonCrawlerImpl, check if contentType is not null, and always close the BufferedReader at the end.
(BH) Thanks to M. Kristian.
-
The resource reader now checks if for the same URI the same source is read
in order to test the if-last-modified header. This behaviour can be turned
of (for more performance) by the quick-modified-test.
(CZ) Fixes 12915.
-
Removed deprecated notification classes in org.apache.cocoon.* and in
org.apache.cocoon.sitemap.* and the deprecated methods in
org.apache.cocoon.components.notification.Notifier.
(NKB)
-
Removed (long time deprecated) matcher and selector factories. Use
appropriate matchers and selectors instead.
(VG)
-
Removed XT XSLT transformer.
(VG)
-
EsqlConnection no longer implements java.sql.Connection.
No jvm dependency any more.
(TC)
-
Refactored SitemapConfigurable. A sitemap configurable component can
now be ThreadSafe and has access to the sitemap configuration at any time
through a SitemapConfigurationHolder.
(CZ)
-
Correcting method names of new CacheableProcessingComponent interface.
It is now possible to write components that support the 2.0.x and the
2.1.x caching algorithm.
(CZ)
-
Setting minimum JDK version from 1.2 to 1.3.
(CZ)
-
Updating to the latest official Avalon and Excalibur releases.
(CZ)
-
FOP serializer's <user-config> relative path now resolves relative
to sitemap's directory. All Cocoon URIs are supported too.
(VG)
-
The repository for Cocoon 2.1 is now called "cocoon-2-historical" (the old
"xml-cocoon2" repository is deprecated).
(PF)
-
The "javadocs" build target now links offline to the appropriate JavaDOC
repositiories available on the web.
(PF)
-
Moved the asciiart stuff from the scratchpad into a block.
(SM)
-
Moved the SendmailAction and the mail-related stuff from the scratchpad
into the mail block.
(SM)
-
Removed the MaybeUploadRequestFactory since we have our own and the less
dependencies the better
(SM)
-
Moving core properties of the build system into a separate properties file.
(CZ)
-
Refactored the build system.
(SM)
-
Now i18n transformer has support for multiple catalogues and can now use
"input modules" in catalogue name and catalogue location. Fixed bug with
getting content for the translation key in certain circumstances. Fixed
bug with accidental removal of translation text in certain circumstances.
(DC) Thanks to Bruno Dumon. Fixes 17127.
-
Make getParentComponentManager in CocoonServlet protected so alternate methods to getting the
parent CM can be used.
(PAR)
-
Add support for Collection objects to the CastorTransformer.
Upgrade to the SAX2 API, improve logging, and use SourceResolver to load mappings.
(VG) Thanks to Michael Homeijer. Fixes 11861.
-
Refactor Main class into two classes, Main and CocoonBean. CocoonBean provides simple
programmatic interface to the Cocoon.
(VG) Thanks to Upayavira. Fixes 15748.
-
Moved block samples to own category, modified build system to merge
.xsample files to block-samples.xml.
(CH)
-
Renaming components section for pipeline implementations to "pipes" and "pipe".
(CZ)
-
Updated to latest versions of excalibur sourceresolve and xmlutil.
(CZ)
-
Patch IOUtils to recognize '..' in Path
(SMS) Thanks to Michael Enke. Fixes 14700.
-
The "mime-type" attribute on <map:read> and <map:serialize> is now
expanded if it contains sitemap variables.
(SW)
-
Fixed the way complex Java objects are passed from the control
flow to the XSP view layer.
(OP) Thanks to Ugo Cei.
-
Added ant-contrib library with some optional ant tasks and started cleaning
up the build system.
(CZ)
-
ZipArchiveSerializer now accepts inline content for entries of the zip archive
and not only source URLs.
(SW)
-
ImageReader extends now ResourceReader and therefor the
"expire-time" parameter is now "expires". Also removed the
setting of the byte range header for on-the-fly images.
(did not support it anyway)
(TC)
-
Moved the byte range support from the ByteRangeReader in scratchpad
into the ResourceReader. Added the optional parameters "buffer-size"
and "byte-range". Byte range support is enable by default.
(TC)
-
Move the image inspection into a ImageUtils class
(TC)
-
Major cleanup of the ImageDirectoryGenerator, removed the RuntimeExceptions,
added support for the JPEG comment marker
(TC)
-
Moved all classes marked @deprecated to the src/deprecated directory.
Since Many classes are still a dependency for the core, while this is fixed
the build process still copies them with the core during compilation.
To compile with the deprecation separation, do "build -Ddeprecate=true".
(NKB)
-
Moved code to new blocks: profiler, velocity.
(NKB)
-
Update XML Serializer, HTML Serializer , and Text Serializer documentation,
added XHTML Serializer documentation in the serializer user documentation section.
(BH)
-
Update SVG Serializer, SVG JPEG, and SVG PNG documentation, added
SVG TIFF documentation in the serializer user documentation section.
(BH)
-
Created .src/deprecated directory to contain all deprecated classes.
This will help in maintaining Cocoon free from deprecated classes.
Started by moving some deprecated caching stuff.
(NKB)
-
Moved code to new blocks: html, php, lucene, bsf
(NKB)
-
Now module.xml is named project.info.xml
(NKB)
-
Make all "meta" modules ThreadSafe
(CH)
-
Added Greek translation, thanks to Stavros Kounis (gounis.at.osmosis.gr).
Corrected Armenian translation to be real Unicode and be
readable without additional plug-ins (on Win).
(KP)
-
Updated the XML:DB Source. Now it will accept, in cocoon.xconf,
optional authentication attributes, called "user" and "password".
(GR)
-
AbstractJXPathModule / JXPathMetaModule default to lenient mode i.e. do not
throw an exception on unsupported attributes but return null instead. Made
this a configuration option.
(CH)
-
Moved the sample classes and confs to the samples block.
(NKB)
-
Cleaned up the esql logicsheet and helper classes.
Created classes for db specific stuff.
Improved the limit/paging features.
(TC)
-
Moved the jsp components to the jsp block, using hand-made-to-be-cleaned
mock objects for the weblogic specific imports.
Had also to move some definitions from the cocoon roles and xconf file.
This moving of the blocks is indeed cleaning the core! :-)
(NKB)
-
Updated block build system to compile and use mock objects in
the "mocks" subdir of the blocks if present.
(NKB)
-
Moved endorsed libs in ./lib/endorsed, so that they can be added in the build file
easily as java jvm args, or in the future copied to the webserver or Java endorsed dir.
Currently it enables Jetty to run easily in 1.4 JVMs without need to copy libs to
the endorsed dir.
(NKB)
-
Removed ./tools/build-i.xml and moved the interactive targets in main build.
Removed ./tools/build-s.xml and removed all references to scratchpad builds (not used).
(NKB)
-
Removed JTidyTask that was not used and switched to using the Ant input task from UserInputTask.
(NKB)
-
Moved LDAPTransformer to a block called "naming".
(NKB)
-
New build target "validate-schematron" to conduct build-time validation
(currently only the sitemaps) using RELAX NG grammars with embedded
Schematron rules.
This uses Schematron
stylesheets from Rick Jelliffe and Academia Sinica Computing Center, Taiwan.
(DC) Thanks to Colin Paul Adams. Fixes 14581.
-
Moved POI to a block. Applied patch without moving the core elementprocessor
classes in the block.
(NKB) Thanks to Philipp Schmidt. Fixes 12975.
-
Added 'query' sitemap parameter to SearchTransformer. Added configuration parameters to
SimpleLuceneXMLIndexerImpl for choosing the content-view and which tags you want stored
as fields by the indexer. Added field storage implementation to LuceneIndexContentHandler.
(JQ)
-
Extended implementation of i18n transformer to allow markup in translations,
inline translations (conditional processing) and named parameters.
Now i18n transformer is cachable, this will affect on dynamic markup,
e.g. i18n:date-time.
WARN: The namespace of i18n markup is changed to "http://apache.org/cocoon/i18n/2.1".
i18n samples are updated to demonstrate the new features.
(KP) Thanks to Matthieu Sozeau.
-
XMLForm Howto to reflect the fact that there is no
need for manual handling of unchecked check-boxes.
(IAI)
-
Updated Xalan to 2.4.1
(IAI)
-
Renamed the AbstractMethodAction into AbstractMultiAction and
moved it from scratchpad into the maintrunk. Using it helps
reducing the amount of custom actions for a webapp.
(TC)
-
Started moving database related stuff (actions, transformers, readers) as well as HSQLDB to a new blocks.
Samples have not yet moved to new block, datasource declaration has.
(CH)
-
Updated the draft DTD for sitemap.
(DC) Thanks to Colin Paul Adams.
-
Removed all references to Loggable in favor of LogEnabled (this includes
references to common abstract classes as AbstractLoggable and
AbstractDualLogEnabled)
(GP)
-
Added support for using Avalon components as Axis service objects
with the AxisRPCReader.
(MC)
-
Enhancing cinclude transformer with configuration possiblities, lie
POST requests and flexible parameter handling.
(CZ)
-
Enabled the RTF serializer and SWF serializer as block.
(SMS) Thanks to Philipp Schmidt. Fixes 12799.
-
Enabled the chaperon text parser as block.
(SMS)
-
Updated Jakarta Commons HTTP client jar. Fixes problems with SOAP XSP
taglib.
(MC) Fixes 12236.
-
Don't explicitly redirect to the cocoon:/ pipeline in
AbstractInterpreter.forwardTo(), do it instead in
system.js.
(OP) Thanks to Ramy Mamdouh.
-
Fixed code generation problem in the jpath.xsl. Patch from.
(OP) Thanks to Per-Olof Noren.
-
The control flow layer can now save the global JavaScript scope in
the servlet session object. This allows the value of global
variables to be saved between different top-level function
invocations.
(OP)
-
Profiler components extended to store intermediate SAX
fragments, and also the some informations about the
environment, thanks to Bruno Dumon.
(SMS)
-
Made Commandline Cocoon (Main.java) verbose output (-V option)
less cluttered and grouped the log and output methods.
(NKB)
-
Commandline Cocoon (Main.java) now doesn't stop anymore on broken links,
but inserts an error page instead and correctly notifies it in the
broken links file if requested.
(NKB)
-
Add the methods 'copy', 'move' and 'delete' to the WriteableSource
interface.
(SMS)
-
Replaced implementation from Loggable by LogEnabled to use
the Avalon Logger instead of the LogKit Logger.
(SMS)
-
Updated xerces, xalan, xml-apis jars to their latest CVS versions. Especially due to some xerces bugs in the 2.0 release
(TC)
-
Made docs target use logging to file via the logkit.xconf and added informative System.out messages for the
commandline cocoon (Main.java).
(NKB)
-
Allow parent component manager to be LogEnabled.
(CZ) Thanks to Leo Sutic.
-
New samples for HSSF Serializer.
(NKB) Thanks to Andrew C. Oliver.
-
This adds get-bigdecimal to ESQL (see java.math.BigDecimal for details as to why
you need BigDecimals).
(NKB) Thanks to Andrew C. Oliver. Fixes 8058.
-
The SQL Transformer does those nastly looking exponents for large values. By
calling "getBigDecimal()" instead of getObject we can call an overridden
toString and avoid those nasty things.
(NKB) Thanks to Andrew C. Oliver. Fixes 8056.
-
Applied patch to add javascript support for the mozilla browser for transforming xml
to html.
(SMS) Thanks to Andrew Timberlake. Fixes 9521.
-
The OASIS Catalog and the entities (DTDs, entity sets, etc.) have moved
to WEB-INF/entities and the CatalogManager.properties file has moved to
WEB-INF/classes
(CZ)
-
Updated SourceWritingTransformer. Changed the tag set so that source:write and source:insert each share the same way of taking parameters.
Added results from source:insert tag like source:write.
Changed the implementation of the source:write tag so it now buffers to DOM Fragment like source:insert.
Added new tests, updated slash-edit to use new tags.
(JQ)
-
Updated the profiler code, removed the need of SAXConnectors.
(CZ)
-
Moved the old sample for Catalog Entity Resolver in to the new
webapp/samples structure. Added new sample for Simplified DocBook DTDs
configuration. Added section for other miscellaneous samples.
(DC)
-
Moved linkstatus sample and LinkStatusGenerator to core from scratchpad;
added a link to test the documentation links on the Cocoon demo webapp frontpage.
(NKB)
-
DatabaseActions, changed behaviour: Tables are used in order of appearance
in tableset, before they were used in order of appearance in tables section.
(CH)
-
Changed modules to use objectModel instead of just the request object.
(CH)
-
Modular database actions now don't inherit from original database actions
anymore. Some custom datatypes got lost during this process as they should
be handled be specialized input modules instead.
(CH)
-
Added size attribute and sorting to directory-generator.
(JM) Thanks to Frank Ridderbusch. Fixes 8531.
-
Locale selection for I18nTransformer changed to use parameter set from sitemap.
The old behavior (implicit locale selection using LocaleAction) is not supported any more.
i18n samples are refactored, redesigned, new translations are added.
(KP)
-
Changed default persistence store to the JispFilesystemStore.
To switch back to FilesystemStore, remove jisp.jar and rebuild Cocoon
(or simply edit cocoon.xconf)
(VG) Fixes 10697.
-
Updated the Jisp store system to the new Jisp version and added the missing clear()
and keys() methods.
(GF)
-
XMLFormTransformer now saves a list of referenced model properties,
which is later used to automatically populate with default values
properties which were not addressed in the http request (like unchecked
checkboxes). This applies to session scope forms only.
(IAI)