You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by th...@apache.org on 2006/08/02 11:00:57 UTC
svn commit: r427933 [36/40] - in /lenya/site: ./ 1_2_x/ 1_2_x/components/
1_2_x/components/accesscontrol/ 1_2_x/components/asset-management/
1_2_x/components/authoring/ 1_2_x/components/deployment/
1_2_x/components/editors/ 1_2_x/components/layout/ 1_2...
Added: lenya/site/1_4/reference/modules/index.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/modules/index.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/modules/index.html (added)
+++ lenya/site/1_4/reference/modules/index.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,461 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Modules</title>
+<link type="text/css" href="../../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../../skin/profile.css" rel="stylesheet">
+<script src="../../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Modules</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a href="#Introduction">Introduction</a>
+</div>
+<div class="menupageitem">
+<a title="Implementing a module" href="#Implementing+a+module">Implementing a modu...</a>
+</div>
+<div class="menupageitem">
+<a title="Implementing Usecases in Modules" href="#Implementing+Usecases+in+Modules">Implementing Usecas...</a>
+</div>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.7', '../../../skin/')" id="menu_1.1.5.7Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.5.7" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit">
+<hr>
+<a href="http://forrest.apache.org/"><img border="0" title="Built with Apache Forrest" alt="Built with Apache Forrest - logo" src="../../../images/built-with-forrest-button.png" style="width: 88px;height: 31px;"></a>
+</div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="index.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>Modules</h1>
+
+
+<a name="N1000D"></a><a name="Introduction"></a>
+<h2 class="h3">Introduction</h2>
+<div class="section">
+<p>
+ Modules are packages providing a certain set of resources or functionality.
+ </p>
+<p>Examples:</p>
+<ul>
+
+<li>a resource type (e.g., docbook module)</li>
+
+<li>a repository implementation (e.g., jdbc module)</li>
+
+<li>a collection of XSLTs (e.g., content2svg module)</li>
+
+</ul>
+<p>
+ Some modules are included in the Lenya distribution:
+ </p>
+<ul>
+
+<li>
+<strong>lucene</strong> - search functionality</li>
+
+<li>
+<strong>sitetree</strong> - manage documents in a tree-like structure</li>
+
+<li>
+<strong>jcr</strong> - store content in a <a href="http://www.jcp.org/en/jsr/detail?id=170">JCR</a> repository</li>
+
+<li>
+<strong>xhtml</strong> - XHTML-based resource type</li>
+
+<li>
+<strong>links</strong> - resource type to manage link lists</li>
+
+<li>
+<strong>lenyadoc</strong> - adds the <span class="codefrag">lenyadoc://</span> protocol</li>
+
+</ul>
+</div>
+
+
+<a name="N10051"></a><a name="Implementing+a+module"></a>
+<h2 class="h3">Implementing a module</h2>
+<div class="section">
+<p>
+ All resources of a module are located in a single directory.
+ The following is an example directory structure, all files are optional
+ and depend on the nature of the module.
+ </p>
+<pre class="code">
+mymodule/
+ config/ configuration files
+ cocoon-xconf/ patches for cocoon.xconf
+ components.xconf
+ usecases/
+ mymodule.jx usecase view
+ java/
+ src/ Java source files
+ lib/ Java libraries
+ xslt/ XSLT stylesheets
+ sitemap.xmap main module sitemap
+</pre>
+<p>To add a module to your Lenya installation, declare it in <span class="codefrag">local.build.properties</span>:</p>
+<pre class="code">
+modules.root.dirs=src/modules:src/webapp/lenya/pubs/default/modules:/home/john/modules/mymodule
+</pre>
+<p>
+ When the module is deployed, the following steps are executed:
+ </p>
+<ul>
+
+<li>the module files are copied to <span class="codefrag">context://lenya/modules</span>
+</li>
+
+<li>Java sources are compiled, libraries are installed</li>
+
+<li>
+<span class="codefrag">cocoon.xconf</span> is patched</li>
+
+</ul>
+</div>
+
+
+<a name="N1007C"></a><a name="Implementing+Usecases+in+Modules"></a>
+<h2 class="h3">Implementing Usecases in Modules</h2>
+<div class="section">
+<a name="N10082"></a><a name="Declaring+the+Usecase"></a>
+<h3 class="h4">Declaring the Usecase</h3>
+<p>
+ For example, imagine you implement a <span class="codefrag">newsletter</span> module, containing a <span class="codefrag">send</span> usecase.
+ To declare usecases, add a patch file for <span class="codefrag">cocoon.xconf</span>, for instance <span class="codefrag">newsletter/config/cocoon-xconf/usecases.xconf</span>:
+ </p>
+<pre class="code"><xconf xpath="/cocoon/usecases"
+ unless="/cocoon/usecases/component-instance[@name = 'newsletter.send']">
+ <component-instance name="newsletter.send"
+ logger="lenya.usecases.newsletter.send"
+ class="org.myproject.lenya.newsletter.usecases.Send">
+ <view template="modules/newsletter/usecases/send.jx" menu="false"/>
+ </component-instance>
+</xconf></pre>
+<p>
+ As you can see in the view declaration, the JX templates are typically stored in the <span class="codefrag"><module>/usecases</span>
+ directory. The Java source files go into the <span class="codefrag"><module>/java/src</span> directory, they are compiled
+ automatically by the Lenya build process.
+ </p>
+<a name="N100A5"></a><a name="Calling+the+Module+Sitemap"></a>
+<h3 class="h4">Calling the Module Sitemap</h3>
+<p>
+ The following URL syntax is used to make a call to a module sitemap:
+ </p>
+<pre class="code">cocoon://modules/<module>/**</pre>
+<p>
+ The module sitemap is located at <span class="codefrag">newsletter/sitemap.xmap</span>. To request
+ the latest newsletter and display it on the confirmation screen using the CInclude approach
+ (for more information, see documentation about the usecase framework), you could for instance use
+ the URI <span class="codefrag">cocoon://modules/newsletter/latestNewsletter.xml</span>:
+ </p>
+<pre class="code"><page:page
+ xmlns:jx="http://apache.org/cocoon/templates/jx/1.0"
+ xmlns:page="http://apache.org/cocoon/lenya/cms-page/1.0"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:i18n="http://apache.org/cocoon/i18n/2.1"
+ xmlns:cinclude="http://apache.org/cocoon/include/1.0"
+ >
+
+ <page:body>
+ <h1><i18n:text>Send Newsletter</i18n:text></h1>
+ <form>
+ ...
+ <jx:import uri="templates/messages.jx"/>
+
+ <cinclude:includexml>
+ <cinclude:src>cocoon://modules/newsletter/latestNewsletter.xml</cinclude:src>
+ </cinclude:includexml>
+
+ <input name="submit" type="submit" value="Send Newsletter"/>
+ </form>
+ </page:body>
+</page:page></pre>
+<p>
+ Another useful option is to use a module URL as the usecase view, e.g. to export some XML.
+ Note that the attribute <span class="codefrag">uri</span> is used instead of <span class="codefrag">template</span>.
+ The usecase class <span class="codefrag">DummyUsecase</span> can be used because no Java code shall be
+ executed.
+ </p>
+<pre class="code"><xconf xpath="/cocoon/usecases"
+ unless="/cocoon/usecases/component-instance[@name = 'newsletter.download']">
+ <component-instance name="newsletter.send"
+ logger="lenya.usecases.newsletter.send"
+ class="org.apache.lenya.cms.usecase.DummyUsecase">
+ <view uri="cocoon://modules/newsletter/downloadNewsletter.xml"/>
+ </component-instance>
+</xconf></pre>
+<a name="N100D0"></a><a name="Adding+Menu+Items"></a>
+<h3 class="h4">Adding Menu Items</h3>
+<p>
+ A module can provide menu items which are added to the publication menu.
+ To insert the menu items of a module, you have to add the module declaration to <span class="codefrag">publication.xconf</span>:
+ </p>
+<pre class="code"><publication>
+ ...
+ <module name="newsletter"/>
+ ...
+</publication></pre>
+<p>
+ If there is a <span class="codefrag">menus.xmap</span> sitemap in the module's root directory, a
+ request of the form <span class="codefrag"><area>.xml</span> is sent into this sitemap.
+ The matching pipeline could look like this:
+ </p>
+<pre class="code"><map:match pattern="**">
+ <map:generate type="serverpages" src="config/menu.xsp"/>
+ <map:serialize type="xml"/>
+</map:match>
+</pre>
+<p>
+ The server page <span class="codefrag"><module>/config/menu.xsp</span> delivers a menu XML
+ which includes the items to be inserted:
+ </p>
+<pre class="code"><xsp:page ...>
+ <menu>
+ <menus>
+ <menu i18n:attr="name" name="File">
+ <block admin="false">
+ <item uc:usecase="newsletter.send" href="?">
+ <i18n:text>Send Newsletter</i18n:text>
+ </item>
+ </block>
+ </menu>
+ </menus>
+ </menu>
+</xsp:page></pre>
+</div>
+
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="logos"></div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/modules/index.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/modules/index.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/modules/index.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/modules/index.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/modules/index.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
Added: lenya/site/1_4/reference/notification.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/notification.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/notification.html (added)
+++ lenya/site/1_4/reference/notification.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,309 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Notification</title>
+<link type="text/css" href="../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../skin/profile.css" rel="stylesheet">
+<script src="../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.7', '../../skin/')" id="menu_1.1.5.7Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.5.7" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Notification</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a href="#Setup">Setup</a>
+</div>
+<div class="menupageitem">
+<a title="How to Send Notification Messages" href="#How+to+Send+Notification+Messages">How to Send Notific...</a>
+</div>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="notification.pdf"><img alt="PDF -icon" src="../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>Notification</h1>
+
+
+<a name="N1000D"></a><a name="Setup"></a>
+<h2 class="h3">Setup</h2>
+<div class="section">
+<p>
+ To enable notification by e-mail, you have to download the JavaMail and JavaBeans Activation
+ Framework libraries from the <a href="http://java.sun.com/products/javamail/">JavaMail website</a>
+ and place them in the <span class="codefrag"><lenya-webapp>/WEB-INF/lib</span> directory.
+ </p>
+<div class="note">
+<div class="label">Note</div>
+<div class="content">
+ Currently, you have to remove <span class="codefrag">geronimo-spec-*.jar</span> from
+ <span class="codefrag"><lenya-webapp>/WEB-INF/lib</span> to enable e-mail notification
+ (see <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=38587">bug 38587</a>).
+ </div>
+</div>
+</div>
+
+
+<a name="N1002B"></a><a name="How+to+Send+Notification+Messages"></a>
+<h2 class="h3">How to Send Notification Messages</h2>
+<div class="section">
+<p>To send notification messages, use the <span class="codefrag">Notifier</span> component which is provided by the
+ <span class="codefrag">notification</span> module. A shortcut to the <span class="codefrag">Notifier</span> functionality
+ is offered by the <span class="codefrag">NotificationUtil</span> utility class. Here's an example how to use it:</p>
+<pre class="code">
+protected void notify(User sender, User recipient, document) {
+
+ Identifiable[] recipients = { recipient };
+
+ // compose message, using parameters for i18n
+
+ String[] params = { document.getId() };
+ Message message = new Message("document-was-published", params);
+
+ // send message
+
+ NotificationUtil.notify(this.manager, recipients, sender, message);
+}
+</pre>
+<p>
+ The message is sent to each particular recipient, translated using the recipient's locale.
+ </p>
+<p>
+ The current implementation, <span class="codefrag">DefaultNotifier</span>, sends an email to each recipient.
+ Future implementations could include a message list which is managed by the CMS and is
+ presented to a user after she logs in.
+ </p>
+</div>
+
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/notification.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/notification.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/notification.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/notification.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/notification.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
Added: lenya/site/1_4/reference/protocols/index.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/index.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/protocols/index.html (added)
+++ lenya/site/1_4/reference/protocols/index.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,267 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Lenya Protocols</title>
+<link type="text/css" href="../../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../../skin/profile.css" rel="stylesheet">
+<script src="../../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5.7', '../../../skin/')" id="menu_selected_1.1.5.7Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Protocols</div>
+<div id="menu_selected_1.1.5.7" class="selectedmenuitemgroup" style="display: block;">
+<div class="menupage">
+<div class="menupagetitle">Overview</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit">
+<hr>
+<a href="http://forrest.apache.org/"><img border="0" title="Built with Apache Forrest" alt="Built with Apache Forrest - logo" src="../../../images/built-with-forrest-button.png" style="width: 88px;height: 31px;"></a>
+</div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="index.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>Lenya Protocols</h1>
+
+<p>Cocoon uses different protocols to access sources. The protocols are handled by a <span class="codefrag">SourceFactory</span> which resolves the
+ given URI to a source. There are two protocols specific to Lenya:
+ </p>
+
+<ul>
+
+<li>
+<a href="../../../1_4/reference/protocols/lenya.html"><span class="codefrag">lenya:</span></a> Get a <span class="codefrag">RepositorySource</span> in the context of Lenya.</li>
+
+<li>
+<a href="../../../1_4/reference/protocols/lenyadoc.html"><span class="codefrag">lenyadoc:</span></a> Get a <span class="codefrag">RepositorySource</span> of a specific document.</li>
+
+</ul>
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="logos"></div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/protocols/index.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/protocols/index.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/protocols/index.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/index.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/protocols/index.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
Added: lenya/site/1_4/reference/protocols/lenya.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/lenya.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/protocols/lenya.html (added)
+++ lenya/site/1_4/reference/protocols/lenya.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,256 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>lenya: Protocol</title>
+<link type="text/css" href="../../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../../skin/profile.css" rel="stylesheet">
+<script src="../../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5.7', '../../../skin/')" id="menu_selected_1.1.5.7Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Protocols</div>
+<div id="menu_selected_1.1.5.7" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">lenya:</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="lenya.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>lenya: Protocol</h1>
+
+<p>
+ The <span class="codefrag">lenya:</span> protocol creates a <a href="http://lenya.apache.org/apidocs/1.4/org/apache/lenya/cms/cocoon/source/RepositorySource.html">
+ <span class="codefrag">RepositorySource</span></a> which is a transactionable source
+ <a href="http://lenya.apache.org/apidocs/1.4/org/apache/lenya/cms/cocoon/source/TransactionableSource.html"><span class="codefrag">TransactionableSource</span></a>.
+ The resolution of the URI is based on the <span class="codefrag">context:</span> protocol handler.
+ </p>
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/protocols/lenya.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/protocols/lenya.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/protocols/lenya.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/lenya.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/protocols/lenya.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
Added: lenya/site/1_4/reference/protocols/lenyadoc.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/lenyadoc.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/protocols/lenyadoc.html (added)
+++ lenya/site/1_4/reference/protocols/lenyadoc.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,311 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>lenyadoc: Protocol</title>
+<link type="text/css" href="../../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../../skin/profile.css" rel="stylesheet">
+<script src="../../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5.7', '../../../skin/')" id="menu_selected_1.1.5.7Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Protocols</div>
+<div id="menu_selected_1.1.5.7" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">lenyadoc:</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a href="#Relative+Syntax">Relative Syntax</a>
+</div>
+<div class="menupageitem">
+<a href="#Absolute+Syntax">Absolute Syntax</a>
+</div>
+</div>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit"></div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="lenyadoc.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>lenyadoc: Protocol</h1>
+
+<p>
+ The <span class="codefrag">lenyadoc:</span> protocol allows to access the source of a Lenya document without knowing the
+ underlying storage structure. If the relative syntax is used, only the language and the document id
+ is needed. If the absolute syntax is used, the publication id and the area has to be specified additionally.
+ </p>
+
+<a name="N10013"></a><a name="Relative+Syntax"></a>
+<h2 class="h3">Relative Syntax</h2>
+<div class="section">
+<p>
+ The relative syntax is used to access Lenya documents in the current context, i.e. the
+ current publication and area is used to resolve the document's location.
+ </p>
+<p>
+
+<em>Syntax: </em><span class="codefrag">lenyadoc:/<language>/<document-id></span>
+
+</p>
+<p>
+
+<strong>Example</strong>
+
+</p>
+<pre class="code">
+<map:match pattern="*.xml">
+ <map:generate src="lenyadoc:/{page-envelope:document-language}/{page-envelope:document-id}"/>
+ ...
+</map:match>
+</pre>
+</div>
+
+<a name="N1002F"></a><a name="Absolute+Syntax"></a>
+<h2 class="h3">Absolute Syntax</h2>
+<div class="section">
+<p>
+ The absolute syntax allows to specify the document's publication and the area.
+ </p>
+<p>
+
+<em>Syntax: </em><span class="codefrag">lenyadoc://<publication>/<area>/<language>/<document-id></span>
+
+</p>
+<p>
+<strong>Example</strong>
+</p>
+<pre class="code">
+<map:match pattern="*.xml">
+ <map:generate src="lenyadoc://{page-envelope:publication-id}/{page-envelope:area}/
+ {page-envelope:document-language}/{page-envelope:document-id}"/>
+ ...
+</map:match>
+</pre>
+</div>
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/protocols/lenyadoc.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/protocols/lenyadoc.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/protocols/lenyadoc.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/protocols/lenyadoc.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/protocols/lenyadoc.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
Added: lenya/site/1_4/reference/publication-templating/index.html
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/publication-templating/index.html?rev=427933&view=auto
==============================================================================
--- lenya/site/1_4/reference/publication-templating/index.html (added)
+++ lenya/site/1_4/reference/publication-templating/index.html Wed Aug 2 02:00:47 2006
@@ -0,0 +1,528 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta content="Apache Forrest" name="Generator">
+<meta name="Forrest-version" content="0.8-dev">
+<meta name="Forrest-skin-name" content="pelt">
+<title>Publication Templating</title>
+<link type="text/css" href="../../../skin/basic.css" rel="stylesheet">
+<link media="screen" type="text/css" href="../../../skin/screen.css" rel="stylesheet">
+<link media="print" type="text/css" href="../../../skin/print.css" rel="stylesheet">
+<link type="text/css" href="../../../skin/profile.css" rel="stylesheet">
+<script src="../../../skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="../../../skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="../../../skin/fontsize.js" language="javascript" type="text/javascript"></script>
+<link rel="shortcut icon" href="../../../favicon.ico">
+</head>
+<body onload="init()">
+<script type="text/javascript">ndeSetTextSize();</script>
+<div id="top">
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+<a href="http://www.apache.org/">apache</a> > <a href="http://lenya.apache.org/">lenya</a><script src="../../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
+</div>
+<!--+
+ |header
+ +-->
+<div class="header">
+<!--+
+ |start group logo
+ +-->
+<div class="grouplogo">
+<a href=""><img class="logoImage" alt="Lenya" src="../../../images/apache-lenya-light.png" title=""></a>
+</div>
+<!--+
+ |end group logo
+ +-->
+<!--+
+ |start Project Logo
+ +-->
+<div class="projectlogo">
+<a href=""></a>
+</div>
+<!--+
+ |end Project Logo
+ +-->
+<!--+
+ |start Search
+ +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="lenya.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with ');" size="25" name="q" id="query" type="text" value="Search the site with ">
+ <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+ |end search
+ +-->
+<!--+
+ |start Tabs
+ +-->
+<ul id="tabs">
+<li>
+<a class="base-not-selected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="base-selected" href="../../../1_4/index.html">Version 1.4</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../modules/index.html">Modules</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../1_2_x/index.html">Version 1.2</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+ |end Tabs
+ +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+ |start Subtabs
+ +-->
+<div id="level2tabs"></div>
+<!--+
+ |end Endtabs
+ +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<!--+
+ |breadtrail
+ +-->
+<div class="breadtrail">
+
+
+ </div>
+<!--+
+ |start Menu, mainarea
+ +-->
+<!--+
+ |start Menu
+ +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/faq.html">FAQs</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.3', '../../../skin/')" id="menu_1.1.3Title" class="menutitle">Installation</div>
+<div id="menu_1.1.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.4', '../../../skin/')" id="menu_1.1.4Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.4" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.5', '../../../skin/')" id="menu_selected_1.1.5Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Technical Reference</div>
+<div id="menu_selected_1.1.5" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.2', '../../../skin/')" id="menu_1.1.5.2Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.5.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Publication Templating</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a title="What is Publication Templating?" href="#What+is+Publication+Templating%3F">What is Publication...</a>
+</div>
+<div class="menupageitem">
+<a title="The Concept of Publication Templating" href="#The+Concept+of+Publication+Templating">The Concept of Publ...</a>
+</div>
+<div class="menupageitem">
+<a title="Declaration of a Template" href="#Declaration+of+a+Template">Declaration of a Te...</a>
+</div>
+<div class="menupageitem">
+<a href="#Usage">Usage</a>
+</div>
+<div class="menupageitem">
+<a title="XSLT Include and Import" href="#XSLT+Include+and+Import">XSLT Include and Im...</a>
+</div>
+<div class="menupageitem">
+<a href="#Sitemaps">Sitemaps</a>
+</div>
+<div class="menupageitem">
+<a href="#Usecases">Usecases</a>
+</div>
+<div class="menupageitem">
+<a title="Setting Up a Publication To Support Templating" href="#Setting+Up+a+Publication+To+Support+Templating">Setting Up a Public...</a>
+</div>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5.7', '../../../skin/')" id="menu_1.1.5.7Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.5.7" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">1.4 API (Javadoc)</a>
+</div>
+</div>
+<div id="credit">
+<hr>
+<a href="http://forrest.apache.org/"><img border="0" title="Built with Apache Forrest" alt="Built with Apache Forrest - logo" src="../../../images/built-with-forrest-button.png" style="width: 88px;height: 31px;"></a>
+</div>
+<div id="roundbottom">
+<img style="display: none" class="corner" height="15" width="15" alt="" src="../../../skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
+<!--+
+ |alternative credits
+ +-->
+<div id="credit2">
+<a href="http://apachecon.com/"><img border="0" title="ApacheCon EU 2006" alt="ApacheCon EU 2006 - logo" src="http://www.eu.apachecon.com/konferenzen/apachecon06/images/header-left.gif" style="width: 150px;height: 50px;"></a>
+</div>
+</div>
+<!--+
+ |end Menu
+ +-->
+<!--+
+ |start content
+ +-->
+<div id="content">
+<div title="Portable Document Format" class="pdflink">
+<a class="dida" href="index.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+ PDF</a>
+</div>
+<h1>Publication Templating</h1>
+
+
+<a name="N1000D"></a><a name="What+is+Publication+Templating%3F"></a>
+<h2 class="h3">What is Publication Templating?</h2>
+<div class="section">
+<p>
+ Imagine you are a company or organisation with some departments which want to edit
+ their content using a Lenya-based CMS. All departments use similar publications,
+ sharing lots of functionality. The layout is based on a common corporate identity,
+ but some departments want to use their own logo or tweak the navigation menu style.
+ </p>
+<p>
+ If all departments develop their own publications, it will be very hard to keep them
+ consistent, to add changes to all publications or to update them to a newer Lenya version.
+ This can be simplified using publication templates. You define a base (template) publication
+ which all others are derived from.
+ </p>
+<pre class="code">
+ +----------------------+
+ | Template Publication |
+ +----------------------+
+ |
+ +-----------------+------+---------------------+
+ | | |
+ +--------------+ +--------------+ +--------------+
+ | Department A | | Department B | ... | Department X |
+ +--------------+ +--------------+ +--------------+
+</pre>
+<p>Multiple layers of templates are supported.</p>
+<pre class="code">
+ +--------------------------------+
+ | University Website Publication |
+ +--------------------------------+
+ |
+ +-----------------+------+------------------------+
+ | | |
+ +------------+ +--------------------+ +-------------+
+ | Uni Zurich | | Harvard University | ... | UC Berkeley |
+ +------------+ +--------------------+ +-------------+
+ |
+ +----------+---+-----------+
+ | | |
+ +----------+ +-----+ +---------+
+ | Business | | Law | ... | Medical |
+ +----------+ +-----+ +---------+
+</pre>
+</div>
+
+
+<a name="N10025"></a><a name="The+Concept+of+Publication+Templating"></a>
+<h2 class="h3">The Concept of Publication Templating</h2>
+<div class="section">
+<ul>
+
+<li>There is a publication <em>my-pub</em>.</li>
+
+<li>It depends on a template which is called <em>template(my-pub)</em>.</li>
+
+<li>When a file is requested using the templating mechanism (<span class="codefrag">fallback://xslt/page2xhtml.xsl</span>),
+ it is searched in a certain traversing order:
+ <ol>
+
+<li>
+<span class="codefrag">context://lenya/pubs/my-pub/xslt/page2xhtml.xsl</span>
+</li>
+
+<li>
+<span class="codefrag">context://lenya/pubs/template(my-pub)/xslt/page2xhtml.xsl</span>
+</li>
+
+<li>
+<span class="codefrag">context://lenya/pubs/template(template(my-pub))/xslt/page2xhtml.xsl</span>
+</li>
+
+<li>...</li>
+
+<li>
+<span class="codefrag">context://xslt/page2xhtml.xsl</span>
+</li>
+
+</ol>
+
+</li>
+
+</ul>
+<p>
+ The publication <em>my-pub</em> is called an <strong>instance</strong> of the publication <em>template(my-pub)</em>.
+ Note that, in contrast to the fallback mechanism in Lenya 1.2, the prefix <span class="codefrag">lenya</span> is not used,
+ but the path is resolved relatively to the <span class="codefrag">context://</span> root.
+ </p>
+</div>
+
+
+<a name="N10069"></a><a name="Declaration+of+a+Template"></a>
+<h2 class="h3">Declaration of a Template</h2>
+<div class="section">
+<p>The template of a publication is declared in <span class="codefrag">my-pub/config/publication.xconf</span>:</p>
+<pre class="code"><publication>
+ ...
+ <templates>
+ <template id="my-template"/>
+ </templates>
+ ...
+</publication></pre>
+</div>
+
+
+<a name="N1007A"></a><a name="Usage"></a>
+<h2 class="h3">Usage</h2>
+<div class="section">
+<p>To invoke publication templating, it is necessary to use the <span class="codefrag">fallback://</span>
+ protocol for all relevant files. For an XSLT stylesheet, the according pipeline looks as follows:</p>
+<pre class="code"><map:transform src="fallback://xslt/doctypes/doctype2xhtml.xsl"></pre>
+</div>
+
+
+<a name="N1008B"></a><a name="XSLT+Include+and+Import"></a>
+<h2 class="h3">XSLT Include and Import</h2>
+<div class="section">
+<p>
+ To leverage the publication templating concept, it is necessary to apply it to included
+ or imported stylesheets as well. Fortunately, we can make use of the <span class="codefrag">fallback://</span>
+ protocol in XSLT stylesheets. At the moment, this only works with Xalan which means you
+ have to use this one as the default transformer.
+ </p>
+<pre class="code"><xsl:include href="fallback://header.xsl"/></pre>
+<p>
+ To simplify overriding of XSLT stylesheets, it would be useful to import the template
+ stylesheet. For this purpose, an additional template source factory could be used, which
+ skips the current publication when resolving the file:
+ </p>
+<pre class="code"><xsl:import href="template://template/xslt/common/header.xsl"/></pre>
+</div>
+
+
+<a name="N100A3"></a><a name="Sitemaps"></a>
+<h2 class="h3">Sitemaps</h2>
+<div class="section">
+<p>
+ If a sitemap is loaded from a template publication, it is very important that the sitemap
+ is completely fallback-enabled. Otherwise, the source resolver will resolve sources relatively
+ to the template sitemap instead of using the overridden ones.
+ </p>
+<p>
+ In <span class="codefrag">lenya/global-sitemap.xmap</span>, all publication sitemaps are mounted
+ using the fallback module, for instance
+ </p>
+<pre class="code"><!-- Enter the actual publication -->
+<map:match pattern="*/**">
+ <map:mount uri-prefix="{1}" src="{fallback:sitemap.xmap}"/>
+</map:match></pre>
+</div>
+
+
+<a name="N100B7"></a><a name="Usecases"></a>
+<h2 class="h3">Usecases</h2>
+<div class="section">
+<p>
+ The <a href="../usecase-framework/index.html">usecase framework</a>
+ supports publication templating by default.
+ </p>
+<p>
+ If you can't (or don't want to) use the usecase framework, you have to implement
+ your own usecase sitemap. The traversing order for usecase sitemaps is
+ </p>
+<ol>
+
+<li>
+<span class="codefrag">context://lenya/pubs/my-pub/usecase.xmap</span>
+</li>
+
+<li>
+<span class="codefrag">context://lenya/pubs/template(my-pub)/usecase.xmap</span>
+</li>
+
+<li>
+<span class="codefrag">context://lenya/pubs/template(template(my-pub))/usecase.xmap</span>
+</li>
+
+<li>...</li>
+
+<li>
+<span class="codefrag">context://lenya/usecase.xmap</span>
+</li>
+
+</ol>
+<p>
+ This behaviour is achieved by the usecase fallback module which is called in <span class="codefrag">global-sitemap.xmap</span>:
+ </p>
+<pre class="code"><map:match type="usecase" pattern="*">
+ <map:mount src="{usecase-fallback:{1}}" uri-prefix=""/>
+</map:match></pre>
+<p>
+ The decision which <span class="codefrag">usecase.xmap</span> to choose is based on the usecase configuration
+ in <span class="codefrag">publication.xconf</span>. To declare a usecase to be implemented by a publication,
+ add the corresponding entry:
+ </p>
+<pre class="code"><publication>
+ ...
+ <usecases>
+ <usecase name="create"/>
+ </usecases>
+ ...
+</publication></pre>
+</div>
+
+
+<a name="N100F5"></a><a name="Setting+Up+a+Publication+To+Support+Templating"></a>
+<h2 class="h3">Setting Up a Publication To Support Templating</h2>
+<div class="section">
+<p>
+ The service <span class="codefrag">org.apache.lenya.cms.publication.templating.Instantiator</span> is responsible for
+ creating instances of publications which support templating. If your publication shall support
+ templating, you have to follow these steps:
+ </p>
+<a name="N10101"></a><a name="Implement+an"></a>
+<h3 class="h4">Implement an Instantiator Class</h3>
+<pre class="code">package org.myproject.lenya;
+
+public class MyInstantiator extends AbstractLogEnabled implements Instantiator {
+
+ public void instantiate(Publication template, String newPublicationId, String name)
+ throws Exception {
+ ...
+ }
+
+}</pre>
+<a name="N1010F"></a><a name="Add+it+to"></a>
+<h3 class="h4">Add it to cocoon.xconf Using a Patch File</h3>
+<p>
+ For instance <span class="codefrag">my-pub/config/cocoon-xconf/instantiator.xconf</span>:
+ </p>
+<pre class="code"><xconf xpath="/cocoon/template-instantiators"
+ unless="/cocoon/template-instantiators/component-instance[@name = 'default']">
+
+ <component-instance name="mypub"
+ logger="myproject.publication"
+ class="org.myproject.lenya.MyInstantiator"/>
+
+</xconf></pre>
+<a name="N10123"></a><a name="Declare+the+Instantiator+in"></a>
+<h3 class="h4">Declare the Instantiator in publication.xconf</h3>
+<pre class="code"><publication>
+ ...
+ <template-instantiator name="mypub"/>
+ ...
+</publication></pre>
+</div>
+
+
+</div>
+<!--+
+ |end content
+ +-->
+<div class="clearboth"> </div>
+</div>
+<div id="footer">
+<!--+
+ |start bottomstrip
+ +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+// --></script>
+</div>
+<div class="copyright">
+ Copyright ©
+ 2002-2005 <a href="http://www.apache.org/licenses/LICENSE-2.0">The Apache Software Foundation.</a>
+</div>
+<div id="logos"></div>
+<div id="feedback">
+ Send feedback about the website to:
+ <a id="feedbackto" href="mailto:dev@lenya.apache.org?subject=Feedback%C2%A0for%C2%A01_4/reference/publication-templating/index.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+ |end bottomstrip
+ +-->
+</div>
+</body>
+</html>
Propchange: lenya/site/1_4/reference/publication-templating/index.html
------------------------------------------------------------------------------
svn:eol-style = native
Added: lenya/site/1_4/reference/publication-templating/index.pdf
URL: http://svn.apache.org/viewvc/lenya/site/1_4/reference/publication-templating/index.pdf?rev=427933&view=auto
==============================================================================
Binary file - no diff available.
Propchange: lenya/site/1_4/reference/publication-templating/index.pdf
------------------------------------------------------------------------------
svn:mime-type = application/pdf
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org