Third Party Contributions





User Guide
Dynamic XML
How it works
XML Links

XSP Processor
ESQL Taglib
SQL Conn Pool
FP Taglib
LDAP Processor

SQL Processor
SQL Taglib

3rd Party
Patch Queue


Live Sites
Cocoon Hosting

Bug Database
Code Repository
Mail Lists
Mail Archives

Cocoon 2.0 Site
Cocoon 2.1 Site

How to Contribute

See How to contribute to Apache Cocoon.

Contributed Components

These are not necessarily deemed to be high enough quality to be included in the core distribution, but they have been tested under several key environments, they are provided under the same license as Cocoon, and they are included in the Cocoon distribution under the contrib/ directory.

None as yet! - although you can expect that some of the links listed below will eventually migrate to the "contributed components" level, and then maybe even into the main distribution.

Patch Queue

Submissions of modifications to Cocoon which are awaiting review. Anyone can comment on them on the cocoon-dev mailing list - code reviewers are needed! Use these at your own risk - although Cocoon has no guarantee either, these patches have not been reviewed, let alone accepted.

Other Extensions

The other extensions listed here are not endorsed by the Cocoon project either - they are provided as a convenience only. They may or may not work, they may or may not be open source, etc.

To have a link added to this table, see How to contribute to Apache Cocoon.

Name and Link  Type  Description  Status  Licensing  Contact 
CDK  "Ready to go" Cocoon distribution  Tomcat and Cocoon 1 and 2, pre-configured and ready to run on Windows  Beta  Same as Cocoon 
XSLT-process  Development Environment  A minor mode for (X)Emacs that allows you to invoke an XSLT processor, or Cocoon on a buffer, thus yielding a fast turnaround time.  Supports Xalan, Cocoon, Saxon  Ovidiu Predescu 
DB Prism  Servlet/CMS  "A Servlet which emulates Oracle Web Application Server plsql Cartridge or the newest Oracle IAS mod_plsql. DB Prism provides Java Stored Procedures, and it is 100% compatible with OWS 3.x/OAS 4.x and IAS 1.0. It supports UTF-8 database encoding, Oracle 7, 8, and Oracle Lite. It includes DB Producer for the Cocoon framework so that it can integrate with XML technology from . It also includes the DB Prism/Cocoon Content Management System (CMS), based on Oracle CMS."  Freeware  Marcelo F. Ochoa 
LDAP Taglib  Logicsheet  Performs LDAP queries and serializes their results as XML. Alternative to Cocoon's LDAP Processor.  Obsolete - see Cocoon 2 alternatives  Freeware  Jeff Turner 
Auth Taglib  Logicsheet  Protects XML/XSP pages, so that they can only be viewed/executed by authenticated users. Supports several authentication schemes using a database or encrypted files.  "Suitable for production use. Syntax/Concept finalized, i.e. future versions will be backwards-compatible"  Open Source  Ulrich Mayring 
SOAP Taglib  Logicsheet  Implements a generic SOAP client. Any SOAP server wanting to present its services to the world over a uniform HTTP-based interface can do so via an XML page using the SOAP taglib. Includes sample app and comprehensive docs.  "Suitable for production use. Syntax/Concept not finalized." Currently not Cocoon 2 compatible.  Open Source  Ulrich Mayring 
IMAP Processor  Processor  Sends emails via an IMAP server.  Not fully functional. Mail taglib(s) in Cocoon distribution are probably better.  GPL  Bavo De Ridder 
XSP Tutorial  Documentation  A "beginner's guide" to XSP.    N/A  David Parry 
UML Docs for Cocoon 1.8  Documentation  Complete UML diagrams for Cocoon 1.8. UML appears in top pane, javadoc in bottom right. Generated using Together 4.1.  N/A  David Parry 
Session toy and number-guessing game  Examples  Demonstrates use of session variables (but not session taglib)  Freeware  OD 
Emacs Editing Functions for XSL/XSP

Thanks to Ovidiu Predescu for these.

"For those of you that use Emacs/Xemacs to edit XSL/XSP pages, here are some handy functions you can use in your .emacs to speed up the editing. They insert the commonly used tags in the current buffer, indented and nicely formatted. They were developed and used on Xemacs 21.1, but they should work on GNU Emacs as well.

"I'd be curious to know what other little things people use in emacs to speed up development."

(require 'tempo)

   (defun get-value-from-minibuffer (display format-string)
     (let ((input (read-from-minibuffer display)))
       (if (string= input "")
         (format format-string input))))

   (tempo-define-template "xsl-template"
    '('&'o'> "<xsl:template"
      (get-value-from-minibuffer "Template name: " " match=\"%s\"")
      ">" 'n'>'n
      "</xsl:template>" '>
      (end-of-line 0)))

   (tempo-define-template "xsl-if"
    '('&'o'> "<xsl:if"
      (get-value-from-minibuffer "Test expression: " " test=\"%s\"")
      ">" 'n'>'n
      "</xsl:if>" '>
      (end-of-line 0)))

   (tempo-define-template "xsl-for-each"
    '('&'o'> "<xsl:for-each"
      (get-value-from-minibuffer "Select expression: " " select=\"%s\"")
      ">" 'n'>'n
      "</xsl:for-each>" '>
      (end-of-line 0)))

   (tempo-define-template "xsp-logic"
    '('&'o'> "<xsp:logic>" '>'n'>'n
      "</xsp:logic>" '>'n
      (end-of-line -1)))

   (tempo-define-template "xsp-expr"
    '('&'o'> "<xsp:expr>" '>'n'>'n
      "</xsp:expr>" '>'n
      (end-of-line -1)))

   (tempo-define-template "xsl-value-of"
    '('> "<xsl:value-of"
      (get-value-from-minibuffer "Value: " " select=\"%s\"")
      "/>" '>))

   (tempo-define-template "xsl-apply-templates"
    '('> "<xsl:apply-templates"
      (get-value-from-minibuffer "Select: " " select=\"%s\"")
      "/>" '>))

   (defun my-xml-templates-hook()
     (define-key xml-mode-map "\C-ct" 'tempo-template-xsl-template)
     (define-key xml-mode-map "\C-ci" 'tempo-template-xsl-if)
     (define-key xml-mode-map "\C-cf" 'tempo-template-xsl-for-each)
     (define-key xml-mode-map "\C-cv" 'tempo-template-xsl-value-of)
     (define-key xml-mode-map "\C-ca" 'tempo-template-xsl-apply-templates)
     (define-key xml-mode-map "\C-cl" 'tempo-template-xsp-logic)
     (define-key xml-mode-map "\C-ce" 'tempo-template-xsp-expr))

   (add-hook 'xml-mode-hook 'my-xml-templates-hook)

Copyright © 1999-2001 The Apache Software Foundation. All Rights Reserved.