You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2006/12/06 22:40:11 UTC

svn commit: r483246 - in /lenya/site/docs/1_4/tutorials: ./ bestpractises.html bestpractises.pdf setupide/ setupide/index.html setupide/index.pdf tests.html tests.pdf

Author: andreas
Date: Wed Dec  6 13:40:09 2006
New Revision: 483246

URL: http://svn.apache.org/viewvc?view=rev&rev=483246
Log:
Added tutorials to 1.4 documentation

Added:
    lenya/site/docs/1_4/tutorials/
    lenya/site/docs/1_4/tutorials/bestpractises.html
    lenya/site/docs/1_4/tutorials/bestpractises.pdf
    lenya/site/docs/1_4/tutorials/setupide/
    lenya/site/docs/1_4/tutorials/setupide/index.html
    lenya/site/docs/1_4/tutorials/setupide/index.pdf
    lenya/site/docs/1_4/tutorials/tests.html
    lenya/site/docs/1_4/tutorials/tests.pdf

Added: lenya/site/docs/1_4/tutorials/bestpractises.html
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/bestpractises.html?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/bestpractises.html (added)
+++ lenya/site/docs/1_4/tutorials/bestpractises.html Wed Dec  6 13:40:09 2006
@@ -0,0 +1,476 @@
+<!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>Best Practises when Developing with Lenya 1.4</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> &gt; <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 ">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="unselected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="selected" href="../../../docs/index.html">Documentation</a>
+</li>
+<li>
+<a class="unselected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs">
+<a class="selected" href="../../../docs/1_4/index.html">Version 1.4</a><a class="unselected" href="../../../docs/modules/index.html">Modules</a><a class="unselected" href="../../../docs/1_2_x/index.html">Version 1.2</a>
+</div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../docs/1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/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="../../../docs/1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.4', '../../../skin/')" id="menu_selected_1.1.4Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Tutorials</div>
+<div id="menu_selected_1.1.4" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../docs/1_4/tutorials/setupide/index.html">Setting up Eclipse</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/tutorials/tests.html">Writing Tests</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Best Practises</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a title="Speeding Up Development" href="#Speeding+Up+Development">Speeding Up Develop...</a>
+</div>
+<div class="menupageitem">
+<a title="Building Maintainable Applications" href="#Building+Maintainable+Applications">Building Maintainab...</a>
+</div>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5', '../../../skin/')" id="menu_1.1.5Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.5" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/documents.html">Working with Documents</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6', '../../../skin/')" id="menu_1.1.6Title" class="menutitle">Technical Reference</div>
+<div id="menu_1.1.6" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/ac.html">Access Control Specification</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.3', '../../../skin/')" id="menu_1.1.6.3Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.6.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.8', '../../../skin/')" id="menu_1.1.6.8Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.6.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/site.html">error:site:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/index.html">Core API</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.8', '../../../skin/')" id="menu_1.1.8Title" class="menutitle">Module APIs</div>
+<div id="menu_1.1.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/ac-impl/index.html">ac-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/administration/index.html">administration</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/cache/index.html">cache</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/cforms/index.html">cforms</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/contacform/index.html">contactform</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/defaultusecases/index.html">defaultusecases</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/editors/index.html">editors</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/export/index.html">export</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/fckeditor/index.html">fckeditor</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/jackrabbit/index.html">jackrabbit</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/janitor/index.html">janitor</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/jcr/index.html">jcr</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/kupu/index.html">kupu</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/ldap/index.html">ldap</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/lenyadoc/index.html">lenyadoc</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/linkcheck/index.html">linkcheck</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/linking/index.html">linking</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/lucene/index.html">lucene</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/notification/index.html">notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/observation-impl/index.html">observation-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/opendocument/index.html">opendocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/properties/index.html">properties</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/repository/index.html">repository</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/resource/index.html">resource</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sitemanagement/index.html">sitemanagement</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sitetree/index.html">sitetree</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sourcerepository/index.html">sourcerepository</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/templating-impl/index.html">templating-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/tinymce/index.html">tinymce</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecase/index.html">usecase</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecase-impl/index.html">usecase-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecasedocument/index.html">usecasedocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/webdav/index.html">webdav</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/workflow-impl/index.html">workflow-impl</a>
+</div>
+</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="bestpractises.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<h1>Best Practises when Developing with Lenya 1.4</h1>
+    
+<a name="N1000E"></a><a name="Speeding+Up+Development"></a>
+<h2 class="h3">Speeding Up Development</h2>
+<div class="section">
+<p>
+        Following these tips can increase your development productivity:
+      </p>
+<ul>
+        
+<li>
+          Set up your development environment correctly. The time you invest in this will
+          pay off very quickly.
+        </li>
+        
+<li>
+          Practise <a href="http://en.wikipedia.org/wiki/Test_driven_development">test-driven
+          development</a>. Since you can execute the tests with a single click in Eclipse,
+          you don't need to build and restart the application to check if something works.
+        </li>
+        
+<li>
+          During development, set <span class="codefrag">modules.copy=false</span> in <span class="codefrag">local.build.properties</span>.
+          This way, you don't have to execute the build process when you change something in a module
+          (except Java files and patches for <span class="codefrag">cocoon.xconf</span>).
+        </li>
+        
+<li>
+          Put all your non-Java files - XSLTs, CSS files, JX templates and complex sitemaps - in modules.
+          This allows you to change them without rebuilding (see preceding tip).
+          Using modules for anything which is not specific for a publication is a
+          good practise anyway - it encourages generic design and reuse.
+        </li>
+      
+</ul>
+</div>
+    
+<a name="N10034"></a><a name="Building+Maintainable+Applications"></a>
+<h2 class="h3">Building Maintainable Applications</h2>
+<div class="section">
+<p>
+        To ensure the simplicity and maintainability of your Lenya-based applications,
+        try the following tips:
+      </p>
+<ul>
+        
+<li>
+          Use resource types sparingly. A new resource type adds complexity to your
+          application. It requires to patch <span class="codefrag">cocoon.xconf</span> and is therefore
+          a static element of your application. Most differences between pages can be
+          implemented by using different XSLTs or templates in the presentation layer,
+          or even using distinct samples to provide a starting point for a certain type of
+          page.
+        </li>
+        
+<li>
+          Make extensive use of resource type formats. This way, you create orthogonality -
+          if you implement a certain format in each of your resource types, it is very
+          easy to include arbitrary resources in different locations. Typical examples
+          of formats are print views, teasers, summaries, icons, and RSS feeds.
+        </li>
+        
+<li>
+          Modularize your application. You can put each resource type in a separate
+          module. Service implementations are good module candidates as well - by
+          adding or removing them from your build path you can easily switch between
+          several implementions. A complex application is likely to feature a
+          <span class="codefrag">shared</span> module which contains utility XSLTs and other resources
+          which are used across multiple modules.
+        </li>
+        
+<li>
+          Use templates instead of XSLTs for layout purposes. This is an example of the
+          <a href="http://en.wikipedia.org/wiki/Separation_of_concerns">Separation of Concerns</a>
+          paradigm. XHTML templates can be edited without XSLT skills and without influencing
+          your presentation logic. For more information, check out the article
+          <a href="http://www.cocooncenter.org/articles/stylefree.html">Style-free Stylesheets with Cocoon</a>
+          on cocooncenter.org.
+        </li>
+        
+<li>
+          Keep your sitemaps simple. It is very hard to write tests for sitemaps, and complex ones
+          are difficult to read. Instead of building huge nested pipelines (e.g. for error handling),
+          it often makes sense to implement a specific selector or action to handle the
+          complicated aspects of the page flow. As soon as the functionality is implemented
+          in Java, it can be tested using unit tests and refactored using your favorite IDE.
+        </li>
+        
+<li>
+          Don't overload your usecase handler classes with view-specific details. The handler
+          is occupied with business logic, it shouldn't have to deal with the view as well.
+          If the JX templates become too complex, consider writing utility classes and
+          call them from the template. Modularizing JX templates is another promising approach
+          to reduce their complexity.
+        </li>
+      
+</ul>
+</div>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+        Copyright &copy;
+         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%A0docs/1_4/tutorials/bestpractises.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Added: lenya/site/docs/1_4/tutorials/bestpractises.pdf
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/bestpractises.pdf?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/bestpractises.pdf (added)
+++ lenya/site/docs/1_4/tutorials/bestpractises.pdf Wed Dec  6 13:40:09 2006
@@ -0,0 +1,245 @@
+%PDF-1.3
+%ª«¬­
+4 0 obj
+<< /Type /Info
+/Producer (FOP 0.20.5) >>
+endobj
+5 0 obj
+<< /Length 460 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gb!#WZ#51J&Dd/>)p&ZC5&d0)BUb]1V,j9ggOTtN/.k7c8X-un+fI;%ZGm11G<R,;T(S8r]3>Gh+eau5*pl2&7q(^<T]Ru8#t57oY_XIY_5Eo]:=!=.;/CFR[l2F;lpPJRa&4=D*lUEEFX,GfacO*@kXDFKAg&DX%)*m52U!@Q,;Y\3,)cd8(2#[Bp/?hI2".pO]!1M5<a$p-rKlQ[kd6jobgaO\K[I=MF-CU4N:\<>h$C8'4$3K5UTs-io:;R/)gM8@-AQ$RmPtUM!BsgiMfOEE!-hKq-TTl'C9#j#-C$LXoEppZ;oq/NZ<#e@$.hfb`0X@bV;C\!R@\308]5$lW'L`1BE]+,]9i.b_gb6,M(o@J@l,5<('?>/8%fu/k1%Ojl+$*g3O8u?`OVDH%Afo*@+f)$Mq<*FO'1d:<qTd9#,R/tXK!fg#WUsa746fAfFZg7+'0fVOT~>
+endstream
+endobj
+6 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 5 0 R
+/Annots 7 0 R
+>>
+endobj
+7 0 obj
+[
+8 0 R
+10 0 R
+]
+endobj
+8 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 12.0 631.666 149.984 619.666 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 9 0 R
+/H /I
+>>
+endobj
+10 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 12.0 613.466 192.668 601.466 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 11 0 R
+/H /I
+>>
+endobj
+12 0 obj
+<< /Length 3540 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gat%&l]7Pq')t.F"lCqpFr2:FUK>#;H#31t09L9:ZVjOWVhbB&D%2J-%,L1Fl`U^RXo_;C.*AK*E4MuRorEjns)<&R.C.`gm8snpNFV?n>g%\Jn/%rG2m?RPZlT_.J)7^/>O0iJeGPg5MQr,,4$E1JV13u*7okH2^rkfAoj@%DpR>M2DZ0^[MYaM8*G$V*j"Ri,f7VJQl[*eke]`?Nq:El<`Dg5f:Ojn<:q62c:"8e+8JHk<&LNr0P7.nG-1rZ\8j2*D>-e@HHkpS$7i<*$10N-OCX\"[H#rt1OR2D!]?Ft'fQ#8ZqWN4@q"e5L2t#N5D/YO&StSm5l;]sPo#PTDd`GJ<2+sFuN/mC9:Gd3eWkb&a1>1S?ei-)+54P@4b"Bs*+S&bJNiY^2rb?`Tgi9d*cd9#9fB>$_D.h5Yf/eI];hqK7Z%(=#j&bOnM!aT\K,(O08(PLs?,uZpn1mkVrc&KP-gSK*c=(G#Zc4Re&pi"2[!%qhr5_LJ^6<up`r>8CEru>o!#V9q`'sg'L;nq9he_G^(_,7K*[p=hO)O_d;uM)fa%H6IT6UU%OP$;ah5SfX""<)SYCQ(tpu>S,p)$ZB,>BLU4I?"SC"k?$oOn5ob(5%W&"B\!8]UU_2g`4`d6AqM8V*h:"k_tCl2Lh2.`m,pYagR@DocWbJ4mhVd(c2V?D'e[M$>gCPLPRXe>0*p]qjV]>UH$0);uXITG.V8cASt!,jK#feI-djWRlA<]H7Ves4Gn56Y$j$MioqBdI!I&^U8KNO?ERj(JNP^W6Tn=P@AY*-)S>r[C:6@03@l=iXNsJOp-P1PJZb5c%_$NZ+AmfY&(]&.-RBn#S7X\:!PE!WI8eto\^OehUD"8h/Ocb#_JmH@_VQ;2"6duPB+]EN=1(Co!eVbo_9#c9Nd(&r&m'7pN'XpBlK@fBu&ZSdp1BQ-Q>$aZ<g3]P_rFrdf,Ad11*&f@-cJ(AEi./X01K!?^D<hFLWS!?X'=
 h"@lU`&X9$&?.IT0rqYs\o7KH.p>Q""Z4&nor>ULD6WGCknK:^1ce/hfWj!bJQJ''>EH,QRD^6gkP6NOBG(<s>NU^auVdTN0S@pb+Jb<9Sc6nDg56="l$5I)OP<9\&cH[3F]NC?;K8:0keTs>R;0gJd'W\Gr8qE@p'h`ht;\NTXF8Id))aql-HAqeWI-uY189%5(O;'(4r8H*OR;*)KS*[@;G-#43Q6Kh%mkB"5pt/39rD(s!f^FF-[6;Rr=ng:b]Utb_Q\:\7r(in<.)")L<gq1!!$H`k!`NIOphjVt0.:H7DefTEqW^@Sh8m#_6+,bY`=We-#/)!G3I!jH&h!pVaRP[`kN)=C.O(CA+NY341cTn2SE1,)).Z=jC8J_"W9f6la2S*krJTP3`3on"'?Gk`alZi:$^4SbdL]:`]u,]\ko):PT.InQAWM1+iA_jQ$:hZrSGYkG#>1a0o8]emiGL5G;L7&5\%7$<@<?R]aPP:/`4.L#^u<lRJ-P<BWO`-#O>!qldB_8<Nm$/P,&e]onN;ToTklt64gF.fE2HN1J0Cc-'3g("9cS[:&#(RUlaXr`nUsZIV>,LJ$LudQ=sPp;F!6drns[Q:$$7Q1>pO&`s0PIj*O-f#N62>s/f[1j-*,/CC2r;P4m*"!7@kN*<7fYQAC!keX;Flh8g0s)L`VB(@B38'HS+dA"CTBU5o6q:7--)D1YS>sBE4J]::seFi9_G/JG=nq0kWQuQ%8.*iCmS-OLsjIR8CE6JN#NL)@cUU8's+ec#pi42PJ-'QJ`1km.1GF7QS?<"4e0'.'Z/Y&/acIBSd>Q:V<Y?]_]L!_'Koq>Le@3Lr:ZdXoQ14T$DdY]h@FERe(re]7YfFIL.,.D`Vo^,#MOO2etN#gVX&D+'!#I@lo8<5=eA]=E_):Y]7L%?KGt,?j,4;.QI\Cs(?/k0#rZq)k082:?\Z#??8n0aXS/R&B+D@PTI<>=FK7tnE=AK,]`E;qm:
 [c,b.\`lEk")Beu>TW\Fo+$s/>m&9&&14GMe$+C9<njI\9^;;%2cia=gLBhongD7>c??QscHfTT.#iKKbMGR9M8<o,`9T"jqUQB12_nQ(nSc&1,l/fP"eJj6TY!'!!SFB^Cdc)$BDG9H@16HZUhK8jCl?K;?_m7p_WX^k<uK$PrH7maT-Uf*R*/HciB9)BBh*BP25(P$VE#-n/n<ZYs,E;/VD(/RO91U"Ct8:Ciio,9mb_ajk`.4l=!2$ksp<KeA%8?s7,gISNAC?nL5Q.?0hcq-1/M^usjFSXtVeUtVrm;:d4[!f*(J>>]CS&01--+=qa$I[UU&!3?s/FG[W8aYoKml`&W:J$4S`\WeqS$D!O`:Fh(B,aRdWf=mgNTMM'#mjW"#29l47pa64Lt<.=.\:s&7?C02c@A3r0qr!bU=!WH?0'nlJMOs5;9q&44!;H=p5at^T3'iX<b.3@RW24rc$F9MB+V41o:f@"c1*`QNemn/AgDYi(G/UC,_j]+ALO\!Ni,G9:Y:4/V!*Lq\l9-iUKhPSs$F5i2`X\^V1m#m2kei-XP]?j?pG5"g3Vf'971lXJi.c0S-sM0f?AIs3n`cE[9co.SroBk!"r\jX!G\Sqdo#NB=VZVOX?qQo[St''K.<nPC)WJ>;(F+e!Hnul2J\Bq%gKHB<NtU@%RFJGiOJQ$Fa@Xl(J'MlgHC?64aYQdE<agS5(HDmgQ%mb>EKA0GpUuP=jNN54!]=-nm>_:RSB#)O+P-Fo=M]h<;f:T8XXPM3qX-FNm^RScADX+qi<V_hIKWk2[/W^MmM<neZ1;p!kVH'I>P8#HI:S.AT8Q>h+pj?m1jLP6DeG>THr/[iP>]?^Cb2"M?7@-3Yb:5JCS"c8K?geMSE95o$VOp\<<9iJY@b8cBlY-@K-"P2m%<q5Z*,q+Z]V"\TfY)ei!Bo,ID6-G;Ce;7@4`e@k;\>u_Rahc3o=PO?6GEn0\H$807'(G])Y!cs?:6J
 A_`b>,iEl\OVn90H*V*ige]_]]psJS&@c6[Ni>ZdD8&BNns*'Ao;7%HWF-e:g&OTd*?nK"CYo++LhUA7"K6Y.(>FN$/%\?K_cITL*%iV&VgYP`ehnH94K4UdZIRWOU$9/uh?^41G6K5rDckg1+t9C`=QmgPSdJ3csFTkN#!^0!1REbJL5s@ZC-q1:e[Ao'q?u#5?q%2oP9P2O5@O2,,clRXFYJXnWP3?RK+<O)oX6a6B<H--rfi<N%&V4"Jcm#N#9lJi\>P+_OE]+BWFB9KoTD,pX9^6c4q'Gss<lPT?2!3Y`G9:>Ib+@$7nbB].(fP[Z5JB5.XIBik#0f\V]#F?ho_jB>Ch>4T,8QJN-Z4[tS!b';M4'qlnZQg\D'M;dLH5m7/C@#3i2GN2;->^JhZ`*ISr%*V/VE3no0YHM\Qjd1=*G:H5c1AJ+mH(H$HK.()^Qne$i+^MTQ%o\R&!n7E6DtIm*<\WZ^mNoiRc8FMHHc<p/aS,a;O$(JQDW+BaVZn^:#Oa-%82S&9+Fb=#S:9UaBZj(.G_]kD_=iMA!K"fm][]N<fii\$#7fY<A,~>
+endstream
+endobj
+13 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 12 0 R
+/Annots 14 0 R
+>>
+endobj
+14 0 obj
+[
+15 0 R
+16 0 R
+17 0 R
+18 0 R
+]
+endobj
+15 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 58.992 671.266 175.308 659.266 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://en.wikipedia.org/wiki/Test_driven_development)
+/S /URI >>
+/H /I
+>>
+endobj
+16 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 398.952 375.332 511.596 363.332 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://en.wikipedia.org/wiki/Separation_of_concerns)
+/S /URI >>
+/H /I
+>>
+endobj
+17 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 462.276 348.932 590.928 336.932 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://www.cocooncenter.org/articles/stylefree.html)
+/S /URI >>
+/H /I
+>>
+endobj
+18 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 18.0 335.732 55.332 323.732 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://www.cocooncenter.org/articles/stylefree.html)
+/S /URI >>
+/H /I
+>>
+endobj
+20 0 obj
+<<
+ /Title (\376\377\0\61\0\40\0\123\0\160\0\145\0\145\0\144\0\151\0\156\0\147\0\40\0\125\0\160\0\40\0\104\0\145\0\166\0\145\0\154\0\157\0\160\0\155\0\145\0\156\0\164)
+ /Parent 19 0 R
+ /Next 21 0 R
+ /A 9 0 R
+>> endobj
+21 0 obj
+<<
+ /Title (\376\377\0\62\0\40\0\102\0\165\0\151\0\154\0\144\0\151\0\156\0\147\0\40\0\115\0\141\0\151\0\156\0\164\0\141\0\151\0\156\0\141\0\142\0\154\0\145\0\40\0\101\0\160\0\160\0\154\0\151\0\143\0\141\0\164\0\151\0\157\0\156\0\163)
+ /Parent 19 0 R
+ /Prev 20 0 R
+ /A 11 0 R
+>> endobj
+22 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F3
+/BaseFont /Helvetica-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+23 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F5
+/BaseFont /Times-Roman
+/Encoding /WinAnsiEncoding >>
+endobj
+24 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F1
+/BaseFont /Helvetica
+/Encoding /WinAnsiEncoding >>
+endobj
+25 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F9
+/BaseFont /Courier
+/Encoding /WinAnsiEncoding >>
+endobj
+26 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F2
+/BaseFont /Helvetica-Oblique
+/Encoding /WinAnsiEncoding >>
+endobj
+27 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F7
+/BaseFont /Times-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+1 0 obj
+<< /Type /Pages
+/Count 2
+/Kids [6 0 R 13 0 R ] >>
+endobj
+2 0 obj
+<< /Type /Catalog
+/Pages 1 0 R
+ /Outlines 19 0 R
+ /PageMode /UseOutlines
+ >>
+endobj
+3 0 obj
+<< 
+/Font << /F3 22 0 R /F5 23 0 R /F1 24 0 R /F9 25 0 R /F2 26 0 R /F7 27 0 R >> 
+/ProcSet [ /PDF /ImageC /Text ] >> 
+endobj
+9 0 obj
+<<
+/S /GoTo
+/D [13 0 R /XYZ -5.0 731.0 null]
+>>
+endobj
+11 0 obj
+<<
+/S /GoTo
+/D [13 0 R /XYZ -5.0 567.066 null]
+>>
+endobj
+19 0 obj
+<<
+ /First 20 0 R
+ /Last 21 0 R
+>> endobj
+xref
+0 28
+0000000000 65535 f 
+0000006847 00000 n 
+0000006912 00000 n 
+0000007004 00000 n 
+0000000015 00000 n 
+0000000071 00000 n 
+0000000622 00000 n 
+0000000742 00000 n 
+0000000774 00000 n 
+0000007138 00000 n 
+0000000908 00000 n 
+0000007201 00000 n 
+0000001044 00000 n 
+0000004677 00000 n 
+0000004800 00000 n 
+0000004848 00000 n 
+0000005053 00000 n 
+0000005258 00000 n 
+0000005463 00000 n 
+0000007267 00000 n 
+0000005664 00000 n 
+0000005891 00000 n 
+0000006185 00000 n 
+0000006298 00000 n 
+0000006408 00000 n 
+0000006516 00000 n 
+0000006622 00000 n 
+0000006738 00000 n 
+trailer
+<<
+/Size 28
+/Root 2 0 R
+/Info 4 0 R
+>>
+startxref
+7318
+%%EOF

Added: lenya/site/docs/1_4/tutorials/setupide/index.html
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/setupide/index.html?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/setupide/index.html (added)
+++ lenya/site/docs/1_4/tutorials/setupide/index.html Wed Dec  6 13:40:09 2006
@@ -0,0 +1,470 @@
+<!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>Setting up Your Development Environment</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> &gt; <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 ">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="unselected" href="../../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="selected" href="../../../../docs/index.html">Documentation</a>
+</li>
+<li>
+<a class="unselected" href="../../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs">
+<a class="selected" href="../../../../docs/1_4/index.html">Version 1.4</a><a class="unselected" href="../../../../docs/modules/index.html">Modules</a><a class="unselected" href="../../../../docs/1_2_x/index.html">Version 1.2</a>
+</div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../../docs/1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/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="../../../../docs/1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.4', '../../../../skin/')" id="menu_selected_1.1.4Title" class="menutitle" style="background-image: url('../../../../skin/images/chapter_open.gif');">Tutorials</div>
+<div id="menu_selected_1.1.4" class="selectedmenuitemgroup" style="display: block;">
+<div class="menupage">
+<div class="menupagetitle">Setting up Eclipse</div>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/tutorials/tests.html">Writing Tests</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/tutorials/bestpractises.html">Best Practises</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5', '../../../../skin/')" id="menu_1.1.5Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.5" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../../docs/1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/concepts/documents.html">Working with Documents</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6', '../../../../skin/')" id="menu_1.1.6Title" class="menutitle">Technical Reference</div>
+<div id="menu_1.1.6" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/ac.html">Access Control Specification</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.3', '../../../../skin/')" id="menu_1.1.6.3Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.6.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.8', '../../../../skin/')" id="menu_1.1.6.8Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.6.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/protocols/site.html">error:site:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../../docs/1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/index.html">Core API</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.8', '../../../../skin/')" id="menu_1.1.8Title" class="menutitle">Module APIs</div>
+<div id="menu_1.1.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/ac-impl/index.html">ac-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/administration/index.html">administration</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/cache/index.html">cache</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/cforms/index.html">cforms</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/contacform/index.html">contactform</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/defaultusecases/index.html">defaultusecases</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/editors/index.html">editors</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/export/index.html">export</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/fckeditor/index.html">fckeditor</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/jackrabbit/index.html">jackrabbit</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/janitor/index.html">janitor</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/jcr/index.html">jcr</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/kupu/index.html">kupu</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/ldap/index.html">ldap</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/lenyadoc/index.html">lenyadoc</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/linkcheck/index.html">linkcheck</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/linking/index.html">linking</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/lucene/index.html">lucene</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/notification/index.html">notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/observation-impl/index.html">observation-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/opendocument/index.html">opendocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/properties/index.html">properties</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/repository/index.html">repository</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/resource/index.html">resource</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/sitemanagement/index.html">sitemanagement</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/sitetree/index.html">sitetree</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/sourcerepository/index.html">sourcerepository</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/templating-impl/index.html">templating-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/tinymce/index.html">tinymce</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/usecase/index.html">usecase</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/usecase-impl/index.html">usecase-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/usecasedocument/index.html">usecasedocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/webdav/index.html">webdav</a>
+</div>
+<div class="menuitem">
+<a href="../../../../apidocs/1.4/modules/workflow-impl/index.html">workflow-impl</a>
+</div>
+</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>Setting up Your Development Environment</h1>
+    
+<p>
+      To ensure a good productivity when building Lenya applications, it is essential
+      that you have a well-configured development environment.
+    </p>
+    
+<p>
+      The following steps guide you through the process of setting up the Eclipse IDE for Lenya.
+      The paths apply to a Unix-like operating system, for Windows you have to change
+      the paths accordingly and replace all shell script names with the names of the corresponding
+      batch files.
+    </p>
+    
+<ul>
+      
+<li>
+        
+<p>
+        Check out the Lenya trunk and the Cocoon branch 2.1 from the Subversion
+        repository (see <a href="../../../../docs/1_4/installation/source_version.html">Installation Instructions</a>).
+        I suggest to use the following directory layout:
+        </p>
+
+<pre class="code">src/
+  apache/
+    lenya/
+      trunk/             -&gt; LENYA_HOME
+    cocoon/
+      branches/
+        BRANCH_2_1_X/    -&gt; COCOON_HOME
+</pre>
+        
+<p>
+          You don't need to set these environment variables, I only use them in
+          this tutorial.
+        </p>
+        
+<p>
+          Note that we don't use the Cocoon version which ships with Lenya, but
+          a separate working copy of Cocoon. This is necessary because Eclipse
+          doesn't support nested projects. 
+        </p>
+        
+<p>
+        The <span class="codefrag">apache</span> directory will come in handy when you start serious
+        development, because you're likely to peek into the source code of other
+        ASF projects like Excalibur or Xalan.
+        </p>
+      
+</li>
+      
+<li>
+        Edit <span class="codefrag">$LENYA_HOME/local.build.properties</span> and set the property
+        <span class="codefrag">cocoon.src.dir</span> to the path of your <span class="codefrag">$COCOON_HOME</span>
+        directory. When you use the suggested directory structure, this would be
+        <span class="codefrag">../../cocoon/branches/BRANCH_2_1_X</span>.
+      </li>
+      
+<li>
+        Go to the <span class="codefrag">$COCOON_HOME</span> directory and execute
+        <pre class="code">./build.sh eclipse-project</pre>
+        This creates the Cocoon project files for Eclipse.
+      </li>
+      
+<li>
+        Go to the <span class="codefrag">$LENYA_HOME</span> directory and execute
+        <pre class="code">./build.sh eclipse-project</pre>
+        This creates the Lenya project files for Eclipse.
+      </li>
+      
+<li>
+        You can now import both projects in Eclipse.
+      </li>
+      
+<li>
+        If your Lenya project complains that various packages are not
+        found, it is probably necessary to edit the <em>Java Build Path</em> properties
+        of your Cocoon project and select all libraries on the <em>Order and Export</em> tab.
+      </li>
+      
+<li>
+        In the <em>Preferences</em> pane, you have to configure the Java compiler to
+        use the 1.4 compliance level.
+      </li>
+      
+<li>
+        A decent XML and XSLT editor is recommended, you can for instance install the
+        web tools platform from the Eclipse project. 
+      </li>
+      
+<li>
+        Have fun!
+      </li>
+    
+</ul>
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+        Copyright &copy;
+         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%A0docs/1_4/tutorials/setupide/index.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Added: lenya/site/docs/1_4/tutorials/setupide/index.pdf
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/setupide/index.pdf?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/setupide/index.pdf (added)
+++ lenya/site/docs/1_4/tutorials/setupide/index.pdf Wed Dec  6 13:40:09 2006
@@ -0,0 +1,121 @@
+%PDF-1.3
+%ª«¬­
+4 0 obj
+<< /Type /Info
+/Producer (FOP 0.20.5) >>
+endobj
+5 0 obj
+<< /Length 2550 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+GauHMgMYb8&:N/3YX!^aJA'rJ<$)H,NmfsYi\Yfj#BaIVaHa7m`FX6bbPqAK0+qnH;O8SE&if$2H^U9XB?mU8gl08A*5crVC#$p&B),dn16'8o1/.HN5@J57fu3C_j(<$'n`lS)3DUHpNDk0:^k]+NXSr+0-tN5IQ9DNAA4r6NmGLG0aJDGn_*<pK%r_TrJ/tX'i,*md8po*i\%NC8&mdTtMP[>7XF6u5Y6uMJp*l1L.`.]?o)-$=?,\@3T4S7&U;ijPj<I<id?6?0&g#JkMc?7S_`UH(.s*bI^befMFsrD#HML\Xm6aPhq[H]5,WQ<&3p-mT("j:0VcNfGI-14B?2KSgXsSSc=rsq-rf,;cjs!C88oom4=ba"_'Kfh,2W_1X`?N;(9T)IJ5&(>@*:;1+Wue4Ue[*IgR.*eCJ]kM=fDsT]-Y]21;_sl_8e3h38hPFBo6\WP:)!WBqRgPEPh04V)3\%/83MSUQR;lJrPm;WXOKOL_1rD.RP*6Sb<%V:To^S]Z)'9G(m?LDBS_5-+?6EhBoetK)8^SiQON8iiqX-"3cC<LfQ*l+"=.*];k"4c8>\/)lIe7oH&+AKo7SQu@2c25BtT9kXJ"8-cF1D,b[^n%KFKf0a"2U'Aeb&k]cCS(AW].b6pR5c/j^^8AP&>")f9%-K;DZ[XE.[k*gotIY6CU8MW[;M/DNN4Y+^8`1\uGt>AeieeJPig8#CG0*\]+==W3kleOC0jC#D^EQ#St`D=lt&4^0OtN>(&HO<6,SPloA_VB+=&],0fDn_(JMee4M[Y_54ehUETQ@X[NbC?O*P/2C$CRT&8C=i82d>#r@a7EB`F0+srs>PIQQ,O<AWl=e9,RqRpD?RC!#;1Mst3kIeZ==b4]@JD"'.+Aemo[&$),n"ip,S[a:s1&d\W$(TM-p:Z2?U_M<\Fb1/$Bt7>2_>cb.6-1k%EXQ3mHF)PWF;3Cq;s`VZ"j:f)3-dHiD`D835kLTGA'I
 `QuubWb>e1O#GPM=QBV^/IEO.%k#i1^3">2<Gm\J\:'.cm`9ArEi7G_n]_MF'm/Ht6Vi0EV9SWb7HC;"[iniMHdN+<mF`K:gIF7f4(B^"+NK%kjSp`ePIrF4KpUB8KCj5buk?$hJ=.f$Q"t@giK9cVSj/NcLoHiXDL?/\1(fYD_@2NqlbJ*Z-,F+eEJ=o\ai@Il3Tt:"f/B:]e$!(P]!?_S$f%!!maf\F:CQgu@>[&:C[M9bR`c+t$=aQ'Q=#%`HY%!t3f$14:+>:uYOeF`;)$S!1Nj05f5tgTAAB:fRIFT^rPS3[9=1q@^[%".fR'KWE;+qob(/iCK>KSN19PH[j7@"7Z5n5`8Y3Z)hH;a]="aG@pQF.1kVd$r\TY^-j#rQej8=%%96"`q'=fs`M8>0.kI^F]CM[!B!:&@5!^b/JXE`&LnTYB>pL\G6%Qah5h<U>h,bntfCa2Xb5EEE'=c?H-aiiN)V=#'%GgbW@!$!7\:i3V`ngVMIeN:?HRdY,pR1`n75>FNo\T)`s7MbO$n"J?F\/R)OL4Pt]Ff;]_jD9@dFDN#50#*>hq-"&:2$oqs8`sM*%'5K+5o!-BVRQ&D!Sp+a7i)^eu/RMR4!l^K+gija`SXNPjBX>10K3OOg83BsT$%n#7UB!/e6f9U-/9^0/\GFEDrZ^Y)2OoWAPi([XX^0iHL0?5s=+>gg_+_HR72"Q)hWkHodi/q&Kk2Jf2KAlBKjE@%D%^sAgQt#FFf_@$a$o(bX6:q'Hma"4*\b((YB2/m^c&M\[jOjQ6EqmR(4!A<3`c/>:&o0;X5@Vo8.H3GNai[1;64;5o7W!*OiQa=HJ/ql?LM+Fmb"$*LiF5'#22?PTXu^f2Z%4%2Jt#V%6%::0:#:F%*`:dAGX6LIgDA08h[VpII@Kt$,j&(om_RV$0\dXKp"UlM!b*o.+s/=D#[j-WH/aD?QdIFk0eI75`uTD^ZkJM5TrRp:W3ZTU89JAB*+F+D<6
 AGhk>4<5&lXh""".d4"dullCf@$c'frCVcj@?Vg6`*-n+6`]"i<\=D=W6#?V[SFMM`S*,>a!,0HaR('CHqMg/>"2"'qDguX+%9!Zi,p45CO\%F.gUj`/=ad#$gGFaUeWn">F)ces(1MfSB-2ND,jT%_#+[Fbql(O+</gL).f1if=&_?1";(eI*4;_+Q<ll&,^1'iMHdQ2,m2Uh/R,Dl/J$?n0:j.HEj=c\@R:L$A;i=j,?ta$8;_skOEHgUerqbB@!RfJ[=lq*9V!MH(=JLJ6kTi.nKnqh-ZB<o](CO.'W45rn[T&dU[PcR;KPj#&*5L4oouA"7cZ)t#U]L-i/>3Z9=>U]qNRG6*;Vf6*%V]fm#Q2,A1E6IY@.m3+%Z@*OWZAS?RsU:bY1bei[PTk;YV/<YoO18?NH2mj"lF)DSJUNd\mAN=h\A6"-$Y/O/I,1m.j`8a/OA`_"G(^_M<gj>ER03m&26D_k&U*!AC$Dl@e<+ZSaBSI'BgS9'Rk;o;"HhVrG^?CgT7$N`B7KboqrjV=-fBAHC^^CF^46fl2V/S1WAE"Mb%X\56],2N;~>
+endstream
+endobj
+6 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 5 0 R
+/Annots 7 0 R
+>>
+endobj
+7 0 obj
+[
+8 0 R
+]
+endobj
+8 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 455.928 579.8 569.592 567.8 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (../../../../docs/1_4/installation/source_version.html)
+/S /URI >>
+/H /I
+>>
+endobj
+9 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F3
+/BaseFont /Helvetica-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+10 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F5
+/BaseFont /Times-Roman
+/Encoding /WinAnsiEncoding >>
+endobj
+11 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F6
+/BaseFont /Times-Italic
+/Encoding /WinAnsiEncoding >>
+endobj
+12 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F1
+/BaseFont /Helvetica
+/Encoding /WinAnsiEncoding >>
+endobj
+13 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F9
+/BaseFont /Courier
+/Encoding /WinAnsiEncoding >>
+endobj
+14 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F2
+/BaseFont /Helvetica-Oblique
+/Encoding /WinAnsiEncoding >>
+endobj
+1 0 obj
+<< /Type /Pages
+/Count 1
+/Kids [6 0 R ] >>
+endobj
+2 0 obj
+<< /Type /Catalog
+/Pages 1 0 R
+ >>
+endobj
+3 0 obj
+<< 
+/Font << /F3 9 0 R /F5 10 0 R /F1 12 0 R /F6 11 0 R /F9 13 0 R /F2 14 0 R >> 
+/ProcSet [ /PDF /ImageC /Text ] >> 
+endobj
+xref
+0 15
+0000000000 65535 f 
+0000003723 00000 n 
+0000003781 00000 n 
+0000003831 00000 n 
+0000000015 00000 n 
+0000000071 00000 n 
+0000002713 00000 n 
+0000002833 00000 n 
+0000002858 00000 n 
+0000003060 00000 n 
+0000003172 00000 n 
+0000003282 00000 n 
+0000003393 00000 n 
+0000003501 00000 n 
+0000003607 00000 n 
+trailer
+<<
+/Size 15
+/Root 2 0 R
+/Info 4 0 R
+>>
+startxref
+3964
+%%EOF

Added: lenya/site/docs/1_4/tutorials/tests.html
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/tests.html?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/tests.html (added)
+++ lenya/site/docs/1_4/tutorials/tests.html Wed Dec  6 13:40:09 2006
@@ -0,0 +1,567 @@
+<!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>Writing Tests</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> &gt; <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 ">&nbsp; 
+                    <input name="Search" value="Search" type="submit">
+</form>
+</div>
+<!--+
+    |end search
+    +-->
+<!--+
+    |start Tabs
+    +-->
+<ul id="tabs">
+<li>
+<a class="unselected" href="../../../index.html">Project</a>
+</li>
+<li class="current">
+<a class="selected" href="../../../docs/index.html">Documentation</a>
+</li>
+<li>
+<a class="unselected" href="../../../community/index.html">Community</a>
+</li>
+</ul>
+<!--+
+    |end Tabs
+    +-->
+</div>
+</div>
+<div id="main">
+<div id="publishedStrip">
+<!--+
+    |start Subtabs
+    +-->
+<div id="level2tabs">
+<a class="selected" href="../../../docs/1_4/index.html">Version 1.4</a><a class="unselected" href="../../../docs/modules/index.html">Modules</a><a class="unselected" href="../../../docs/1_2_x/index.html">Version 1.2</a>
+</div>
+<!--+
+    |end Endtabs
+    +-->
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<!--+
+    |breadtrail
+    +-->
+<div class="breadtrail">
+             
+             &nbsp;
+           </div>
+<!--+
+    |start Menu, mainarea
+    +-->
+<!--+
+    |start Menu
+    +-->
+<div id="menu">
+<div onclick="SwitchMenu('menu_selected_1.1', '../../../skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Version 1.4</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../docs/1_4/index.html">Index</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/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="../../../docs/1_4/installation/index.html">Download</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/installation/subversion.html">Subversion Access</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/installation/source_version.html">Install Instructions</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.4', '../../../skin/')" id="menu_selected_1.1.4Title" class="menutitle" style="background-image: url('../../../skin/images/chapter_open.gif');">Tutorials</div>
+<div id="menu_selected_1.1.4" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../../docs/1_4/tutorials/setupide/index.html">Setting up Eclipse</a>
+</div>
+<div class="menupage">
+<div class="menupagetitle">Writing Tests</div>
+<div class="menupageitemgroup">
+<div class="menupageitem">
+<a href="#Running+Tests">Running Tests</a>
+</div>
+<div class="menupageitem">
+<a title="Adding Tests to Modules" href="#Adding+Tests+to+Modules">Adding Tests to Mod...</a>
+</div>
+<div class="menupageitem">
+<a title="Testing Usecases" href="#Testing+Usecases">Testing Usecases...</a>
+</div>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/tutorials/bestpractises.html">Best Practises</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.5', '../../../skin/')" id="menu_1.1.5Title" class="menutitle">Concepts</div>
+<div id="menu_1.1.5" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/publication.html">Publication</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/documents.html">Working with Documents</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/urlMapping.html">URL Mapping</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/authoring_live.html">Authoring and Live mode</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/concepts/wysiwyg.html">WYSIWYG</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6', '../../../skin/')" id="menu_1.1.6Title" class="menutitle">Technical Reference</div>
+<div id="menu_1.1.6" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/lenya-sitemaps.html">Overview of Lenya Sitemaps</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/ac.html">Access Control Specification</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.3', '../../../skin/')" id="menu_1.1.6.3Title" class="menutitle">Usecase Framework</div>
+<div id="menu_1.1.6.3" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/usecase-framework/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/usecase-framework/abstractusecase.html">AbstractUsecase</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/publication-templating/index.html">Publication Templating</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/resource-types.html">Resource Types</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/modules/index.html">Modules</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/metadata.html">Meta data</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.6.8', '../../../skin/')" id="menu_1.1.6.8Title" class="menutitle">Protocols</div>
+<div id="menu_1.1.6.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/lenya.html">lenya:</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/lenyadoc.html">lenyadoc:</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/protocols/site.html">error:site:</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/link-management.html">Link Management</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/notification.html">Notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../docs/1_4/reference/repository/index.html">Repository</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/index.html">Core API</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.8', '../../../skin/')" id="menu_1.1.8Title" class="menutitle">Module APIs</div>
+<div id="menu_1.1.8" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/ac-impl/index.html">ac-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/administration/index.html">administration</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/cache/index.html">cache</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/cforms/index.html">cforms</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/contacform/index.html">contactform</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/defaultusecases/index.html">defaultusecases</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/editors/index.html">editors</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/export/index.html">export</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/fckeditor/index.html">fckeditor</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/jackrabbit/index.html">jackrabbit</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/janitor/index.html">janitor</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/jcr/index.html">jcr</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/kupu/index.html">kupu</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/ldap/index.html">ldap</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/lenyadoc/index.html">lenyadoc</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/linkcheck/index.html">linkcheck</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/linking/index.html">linking</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/lucene/index.html">lucene</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/notification/index.html">notification</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/observation-impl/index.html">observation-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/opendocument/index.html">opendocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/properties/index.html">properties</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/repository/index.html">repository</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/resource/index.html">resource</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sitemanagement/index.html">sitemanagement</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sitetree/index.html">sitetree</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/sourcerepository/index.html">sourcerepository</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/templating-impl/index.html">templating-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/tinymce/index.html">tinymce</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecase/index.html">usecase</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecase-impl/index.html">usecase-impl</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/usecasedocument/index.html">usecasedocument</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/webdav/index.html">webdav</a>
+</div>
+<div class="menuitem">
+<a href="../../../apidocs/1.4/modules/workflow-impl/index.html">workflow-impl</a>
+</div>
+</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="tests.pdf"><img alt="PDF -icon" src="../../../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<h1>Writing Tests</h1>
+    
+    
+<a name="N1000E"></a><a name="Running+Tests"></a>
+<h2 class="h3">Running Tests</h2>
+<div class="section">
+<ul>
+        
+<li>
+<p>To run all tests:</p>
+          
+<span class="codefrag">./build.sh test</span>
+          
+<br>
+<br>
+        
+</li>
+        
+<li>
+<p>To run all module tests:</p>
+          
+<span class="codefrag">./build.sh modules.test</span>
+          
+<br>
+<br>
+        
+</li>
+        
+<li>
+<p>To run the tests of a single module:</p>
+          
+<span class="codefrag">./build.sh module.test -Dmodule=org.myproject.lenya.modules.MyModule</span>
+          
+<br>
+<br>
+        
+</li>
+        
+<li>
+          
+<p>To run a test in the Eclipse debugger:</p>
+          
+<ul>
+            
+<li>You have to run the tests once on the command line to generate the
+              <span class="codefrag">LenyaTestCase.xtest</span> configuration file.</li>
+            
+<li>To debug a single test, right-click on the test class in the package explorer and select <em>Debug as -&gt; JUnit test</em>.</li>
+          
+</ul>
+          
+<div class="note">
+<div class="label">Note</div>
+<div class="content">Make sure you added all classes and libs from the build dir (
+            <span class="codefrag">build/lenya/webapp/WEB-INF/lib/</span>) to the junit classpath in
+            the eclipse debugger, otherwise you propably get a file not found exception.
+            Further if you are looking into a way to debug htmlunit test then see the article on
+            the <a href="http://www.baccoubonneville.com/blogs/index.php/eclipse/2005/12/04/htmlunit-tests-with-eclipse-and-ant">
+              Eclipse Blog - HtmlUnit tests with Eclipse and Ant</a> 
+</div>
+</div>
+        
+</li>
+      
+</ul>
+</div>
+    
+    
+<a name="N10058"></a><a name="Adding+Tests+to+Modules"></a>
+<h2 class="h3">Adding Tests to Modules</h2>
+<div class="section">
+<p>
+        Adding unit tests to a module is very simple - you just have to put
+        a Java file in the <span class="codefrag">{yourmodule}/java/test</span>. The most
+        convenient way to get started is to extend <span class="codefrag">AbstractAccessControlTest</span>.
+        This class provides the infrastructure to create a session and invoke
+        operations on documents.
+      </p>
+<p>
+        Here's an example:
+      </p>
+<pre class="code">mymodule/java/test/MyModuleTest.java</pre>
+<p>The source code:</p>
+<pre class="code">package org.myproject.lenya;
+
+import org.apache.lenya.ac.impl.AbstractAccessControlTest;
+import org.apache.lenya.cms.publication.Document;
+import org.apache.lenya.cms.publication.DocumentFactory;
+import org.apache.lenya.cms.publication.DocumentUtil;
+import org.apache.lenya.cms.publication.Publication;
+import org.apache.lenya.cms.publication.PublicationUtil;
+import org.apache.lenya.cms.repository.RepositoryUtil;
+import org.apache.lenya.cms.repository.Session;
+
+public class MetaDataTest extends AbstractAccessControlTest {
+
+    /**
+     * Tests my module.
+     */
+    public void testMyModule() throws Exception {
+        Session session = RepositoryUtil.getSession(getManager(), getRequest());
+        DocumentFactory factory = DocumentUtil.createDocumentIdentityMap(getManager(), session);
+
+        Publication publication = PublicationUtil.getPublication(getManager(), "test");
+        Document doc = factory.get(publication, Publication.AUTHORING_AREA, "/index", "en");
+
+        assertNotNull(doc);
+        ...        
+    }
+}</pre>
+</div>
+    
+    
+<a name="N10076"></a><a name="Testing+Usecases"></a>
+<h2 class="h3">Testing Usecases</h2>
+<div class="section">
+<p>To implement a unit test for a usecase, you can extend the class
+        <span class="codefrag">AbstractUsecaseTest</span> and override the following methods:
+      </p>
+<ul>
+        
+<li>
+<span class="codefrag">String getUsecaseName()</span> - return the name of the usecase to test</li>
+        
+<li>
+<span class="codefrag">void prepareUsecase()</span> - setup the initial envorionment</li>
+        
+<li>
+<span class="codefrag">Map getParameters()</span> - return a map containing the usecase parameters</li>
+        
+<li>
+<span class="codefrag">void checkPostconditions()</span> - check the post conditions after the usecase was executed</li>
+      
+</ul>
+<p>  
+        Here's an example:
+      </p>
+<pre class="code">package org.apache.lenya.cms.ac.usecases;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.cocoon.environment.Session;
+import org.apache.lenya.ac.AccessControlException;
+import org.apache.lenya.ac.Identity;
+import org.apache.lenya.ac.User;
+import org.apache.lenya.cms.usecase.AbstractUsecaseTest;
+
+/**
+ * Login test.
+ */
+public class LoginTest extends AbstractUsecaseTest {
+
+    protected static final String USER_ID = "lenya";
+    protected static final String PASSWORD = "levi";
+
+    protected Map getRequestParameters() {
+        return getParameters();
+    }
+    
+    protected Map getParameters() {
+        Map params = new HashMap();
+        params.put(Login.USERNAME, USER_ID);
+        params.put(Login.PASSWORD, PASSWORD);
+        return params;
+    }
+
+    protected String getUsecaseName() {
+        return "ac.login";
+    }
+
+    protected void checkPostconditions() {
+        Session session = getRequest().getSession();
+        Identity identity = (Identity) session.getAttribute(Identity.class.getName());
+        User user = identity.getUser();
+        assertNotNull(user);
+        assertEquals(user.getId(), USER_ID);
+    }
+    
+    protected void login() throws AccessControlException {
+        getAccessController().setupIdentity(getRequest());
+    }
+
+}</pre>
+</div>
+    
+  
+</div>
+<!--+
+    |end content
+    +-->
+<div class="clearboth">&nbsp;</div>
+</div>
+<div id="footer">
+<!--+
+    |start bottomstrip
+    +-->
+<div class="lastmodified">
+<script type="text/javascript"><!--
+document.write("Last Published: " + document.lastModified);
+//  --></script>
+</div>
+<div class="copyright">
+        Copyright &copy;
+         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%A0docs/1_4/tutorials/tests.html">dev@lenya.apache.org</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Added: lenya/site/docs/1_4/tutorials/tests.pdf
URL: http://svn.apache.org/viewvc/lenya/site/docs/1_4/tutorials/tests.pdf?view=auto&rev=483246
==============================================================================
--- lenya/site/docs/1_4/tutorials/tests.pdf (added)
+++ lenya/site/docs/1_4/tutorials/tests.pdf Wed Dec  6 13:40:09 2006
@@ -0,0 +1,259 @@
+%PDF-1.3
+%ª«¬­
+4 0 obj
+<< /Type /Info
+/Producer (FOP 0.20.5) >>
+endobj
+5 0 obj
+<< /Length 451 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gb!<K_+oY;&;KX9`>mRKeojY7f3RDX9K]6j&*a1hYTub@?o>[3/W7%SPP)Eq8XX:j5LV8senK*3iIDN6OHopTY<8IS"Uq>Tb\3k!6c.jddMI-6n%3nEgM-a^P_iNO;q2EW!hLOJ1h%*M,j$VqOX,n+#DG!]DNrs1lr'cTkNBDs<9qX4@!"#6C,(%U8L+gebYQ6(1=@8d2uC%SW]tlNWdaT^^G/qW1;]#>&E6Pl<"PQ*i)*`cnu=*eU\,?3gA+g]fJi*V;4<(S:I]C&&*-,&$(YJnA*!Pu9594LY#fo"T0Ap9=^(O^[h_&1(MWA"FpWL0/r12QO$kB^!M+ft\.7)u\)92G8eRANn61b.KI($/Z'^oLleP'4=51PKQU_b677\j[boj[eZW/V[mBYN.Dfn(QB:UufdJLAnL0D()gX\26(^oQ@=S8\@;[%/Rrrhg.'M8~>
+endstream
+endobj
+6 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 5 0 R
+/Annots 7 0 R
+>>
+endobj
+7 0 obj
+[
+8 0 R
+10 0 R
+12 0 R
+]
+endobj
+8 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 12.0 631.666 89.672 619.666 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 9 0 R
+/H /I
+>>
+endobj
+10 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 12.0 613.466 141.668 601.466 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 11 0 R
+/H /I
+>>
+endobj
+12 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 12.0 595.266 102.98 583.266 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A 13 0 R
+/H /I
+>>
+endobj
+14 0 obj
+<< /Length 2870 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+GatU6=`<%c&q9SY+S)gX&2i.c4,[7W3Lg1]n#W9lYZNOo'\/B2:aCgOARR:mIB.Wo2b@.I'#YPi>ub7`?-U#fT';TE7P/(_bKZHKD9o.m^gHjC9.mUY2'$PEe,Js%P&kKVCpF!1VFm""fa\B_?BiF>p0V\4jm9nUljmJK=FE<4fbb4h*(P&uK;Skd^SmH>D0>QUZaTu;e`s=<!Z(8"/hu]^qCQ3#b?r#k8)(#pm^Lt`s"YV1j]+&u"E?OdPQLQJT!(Arf/!\Jq%A*U7Icf\GJM0PH7h@ARA2_OELq4c#EJebU[6EO(%Z&[c16^8jCf"SJt-jLdin'<7tgid;b&D-e0>E`km"+rpfN&V@RW+DGZkd1n"")t'<NIi`Pq^dq3NqqP2.;)dsE.%,j*2l+J%r'%TfcLNpG#qM>&"g5ub*:>t!9#n.a+rq*Puh=b.@>HrY$m4RY*TJZq;PpX9?=K$oDAhe=r%\I0I_+b.Sg8]^GN$rr\_G!WDT(?-a1&\[94c\%B2S7_`<F=?Z2902^K_UKe,]aG0B*i1h6)pU>iE>8slRV\^8"[F8ZW(dEO2Q:`KmR(#P3Hg&/CaTCB_#,)g,hh+?$h/c;q[)PR]detnU,^!2Z69&dCs`<6bi1JB3<G.V=R[0eW`Q8X;QOG4`+PC3SG.mF&?s,<L<j5@,uLW_B\n?L%E45sJd<uVY`2`hr.3a#rEIISg=5]<8+!C_W8J!Td<6O-+/qOg>TSs2SY2nM%u<.l&A*N21rjF1-DRr5HigS?>>J)ISV>IjDl\,fjV$$U>DqgSlk=Ic'B4sK=6k=a<f,ku6&@1V<f&.Jeu:^3eKD6U*lKlSg=*J!A&JiEQ?LDq_?%>iCW=:FgB<T3=eid5i&_:CU<:m4!U&EL^#g`GU^j+/?=(j/?lZ;q=.;>.c,=d23`-rU:f-&`7-W6c,E#D(4Mm6l<\r4jHE-H0.`aCDpCD0YT<Bnj!2QAT<OeG,[&tmfg[jY
 r+Q:)=UjQ!S,n%l-'@IekX.:ZPVEg:4UI)AMPis%o1Pa<e3...@rfPB>WJe.6Z!,Ad(1*^#3i.e;Y2_7jc!>%.LXQa&Sb+!^g89l</pc%B_T`b+b2=HAoDd>^Yb5T&;Fo,8s=om6nqAB0M:U\aF/a`-#<KNZF`eK9>&OY_q$9c%86.>eY3P;L%)fF]57RPK7B_24PEPA\8B.$^ZEn;9jstA?`_jX(N!(S[(0b8]nNf.VClB7/Y"7F[jU"KNMi>9%_/"0mF5,qisIpO%Wqd:9iZj;*dE_!K-K#\GirP5'tLMeB/"heOB'a]e!K!$[Xf>SHaD<+((BpaF_$4)#se+E`..%G+@gp%_"<JaE^:2?`6HOZm<M8MK1nWog+Z5BGS9NLSUIpQPFBXgK]WT%$djoQq.%PDoJ!*[#-.3!-3Lk^'kJG>j[C$WU3N"OAY-obj4Z6$#tC)$0Lk.b!da'cBT4AZWDeb=9ca;1.P.Cs$D00!H$s*X<]MsmhZ:T\/T<Q2?:Pp6U?!K:P?XLGjrR()pHh#`)HJr(A>.igeIW/:A@)n3nXTVRRcUca!YJLPe8#HCNi87kD4rM=HnF!<^:84Jo8-7*8'3/B)ZBu'VWST4C_P
 XmcpYkb(j^C/.f=hPf5Wh:$oL7?S;u&>>)J:@!Y=0*L?\Q4NsmJeF8@+;8>2],'+Sk@:qXA2Y.sjK09IXMNrM:O?IO"PB=CPW0rB4Fo*Bm<*H...@NUmbbi8koNl>W`p7'4mH^3rMn5>ccX5-q\Sj-rS!?WdboQEmgFZS"WhXj<!>OacK-*8G20tJ\IktJ0eG~>
+endstream
+endobj
+15 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 14 0 R
+/Annots 16 0 R
+>>
+endobj
+16 0 obj
+[
+17 0 R
+]
+endobj
+17 0 obj
+<< /Type /Annot
+/Subtype /Link
+/Rect [ 424.952 531.656 588.952 523.656 ]
+/C [ 0 0 0 ]
+/Border [ 0 0 0 ]
+/A << /URI (http://www.baccoubonneville.com/blogs/index.php/eclipse/2005/12/04/htmlunit-tests-with-eclipse-and-ant)
+/S /URI >>
+/H /I
+>>
+endobj
+18 0 obj
+<< /Length 1755 /Filter [ /ASCII85Decode /FlateDecode ]
+ >>
+stream
+Gatm<gMZ%0&:O:S#lE$qfM"]u6E*BpZJ4`Bkb`(R`BH+I_8s!cXt4<:3SC(h^NZW776-V"!)4$XUrY>JB8/4[]U;MIViu$4i[jTfrPSlk@:"W5OAL=r#)ki9*@76QamYEPe&g:T^o:[8k7b>]jl.pWohOd>kk`SHjns*TQ,h0!%J9Qq\gfJ?&p`#'nc%i8:Q60U.#lVZ.f5f8,eOhpqjAhBmKX'EqgnNKM0ro+=:/PL`lmr*q9tc2K!rW;gH)r/QU1!86ea6]b=_<#qV5a=X]96^JnGY/c[]k"E)S"W+I#K2@RS8IbVK!]k)39]J9+&mmm'sK>0:"Dj$jpW9GtMkN'1QG]B>4&@#+]V%YiU@g'P<l<3=;WkgnH>7*!1[?\uCi]Ajo:O=5d$Lj.PlW^O6qq$7?gU)T?A8!^QF@D%l[_6oc&aG&P@j?s.+cBnj)c?a44,mpeC9@#e:(^2rg1T2abRUX4r'G"$_1F(oN#H:Uh2b.bp\KM(D7HWTaW)N1!0*ZuHbnYQ(&us`"Ck*p$X;u:g*;gO1=@ct/EO<Fia+Ju;fI47jQbWjs,$k?2F:Z83=c2;+[4EiXGD<8`q*',')sLHY+Ura4]Fg&0Br93_TL%][bs.Gr7rIZ-haOiR`6=C!6I/1i++t7kQkBYGR-S5.V5V!%+:P+Lr4u1DrcHZ,Yta,gGNp(];GX3QVFLBT#QCqsToWH::Itg5BlknNns(jrmj+kJ^i=NH+;=PaLLaBd:S=P[r5iDj&;Lh8%3X4]WN%$.DuRO\?)8Edi8kR^MA6-?+nPC.N,?S`itD6$_jWt?;W`Ki+]V6/J6Pm:(_g"I4I@DH$eeF1oNWXJK"]-UW+:)I4V:+?L5]]*Nf[g>r]!8Fe*>&4jY?6pGdCge#$+bEark'sioko+UB)ndJ/'0<LT"eUm,V\m7>NJl)#K5WQ'5PLYB#cfrD;)tYjIGp+>"*OB,1YuL5D]`YZTdqBk!m7VY(g_Cg*6
 EWp-%42:fdFHhl!RHu+"'JKTQ;AY;l*&kSWZ\ijWD.oW?kRb*7p*H(TiT5QB$rqcD25B5P0I8tXYe[?D8/c5mkq#Ae%qVq5BbAT>7C-8::>0mOa2QF`>0te1Vek#:R9c^"`f2]m>0p":@CoZ]$IC:Zj`^!a`rG,Wq754r%_,e3>I?2>Y1.uO_fBq!YGV1'76(;Y,ehmNG(ns_2d$RY2X1K_R6&4(B`M^o2cQ[68/r1Y\`o+EfH2TjI7e(FtCj06=DtTO]A#8g@q2Ac]91F>Q85$_PDcgnp^omD^beKS._gX!r>fG\C\l7DsO.VjC>HOI];au;GoX)$R8.OAfkI+<hV#V"[m@s\Q6NUT;<*/%)]_'m9+ma*Q_)/)j:WpJNd#[qRU%Kq0:@e6mkK,Hl!c6du2s>#0$Wmp/kKfEI-=#'1bs$]_%8YJCW9QuU=6hELX22i"@8"_0\a/h@RV-3<8IPJVdio;_XA'g7!\r@CBeBQE?6t>g<ep<$[]60eO(Pf,p-sC<Oi.sHQ7VE%'-h9`LAE[8$&5Q1*3l)''RXN%?>Dnp$>_6]T=q!p"TEQdc(Y2/f?/M=Gg)Ta(rKC/L"&-2I6i(nC-2>^h7%`^QI5?lXtDN_[*Q@]S_.IM$;m-2Y+(0ZQfAs0Fq)1o&S6E!r+deOn0Y':=JS%=De8I7d`&N+.C#g8>^-8F&RIQ_.6`?4C>.I,R__GK(\Zln3NjLoVVf_4PO!V9[D0Q1Q=^#f<hM:h!lOk#bb-?O5Iup/ci~>
+endstream
+endobj
+19 0 obj
+<< /Type /Page
+/Parent 1 0 R
+/MediaBox [ 0 0 612 792 ]
+/Resources 3 0 R
+/Contents 18 0 R
+>>
+endobj
+21 0 obj
+<<
+ /Title (\376\377\0\61\0\40\0\122\0\165\0\156\0\156\0\151\0\156\0\147\0\40\0\124\0\145\0\163\0\164\0\163)
+ /Parent 20 0 R
+ /Next 22 0 R
+ /A 9 0 R
+>> endobj
+22 0 obj
+<<
+ /Title (\376\377\0\62\0\40\0\101\0\144\0\144\0\151\0\156\0\147\0\40\0\124\0\145\0\163\0\164\0\163\0\40\0\164\0\157\0\40\0\115\0\157\0\144\0\165\0\154\0\145\0\163)
+ /Parent 20 0 R
+ /Prev 21 0 R
+ /Next 23 0 R
+ /A 11 0 R
+>> endobj
+23 0 obj
+<<
+ /Title (\376\377\0\63\0\40\0\124\0\145\0\163\0\164\0\151\0\156\0\147\0\40\0\125\0\163\0\145\0\143\0\141\0\163\0\145\0\163)
+ /Parent 20 0 R
+ /Prev 22 0 R
+ /A 13 0 R
+>> endobj
+24 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F3
+/BaseFont /Helvetica-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+25 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F5
+/BaseFont /Times-Roman
+/Encoding /WinAnsiEncoding >>
+endobj
+26 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F6
+/BaseFont /Times-Italic
+/Encoding /WinAnsiEncoding >>
+endobj
+27 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F1
+/BaseFont /Helvetica
+/Encoding /WinAnsiEncoding >>
+endobj
+28 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F9
+/BaseFont /Courier
+/Encoding /WinAnsiEncoding >>
+endobj
+29 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F2
+/BaseFont /Helvetica-Oblique
+/Encoding /WinAnsiEncoding >>
+endobj
+30 0 obj
+<< /Type /Font
+/Subtype /Type1
+/Name /F7
+/BaseFont /Times-Bold
+/Encoding /WinAnsiEncoding >>
+endobj
+1 0 obj
+<< /Type /Pages
+/Count 3
+/Kids [6 0 R 15 0 R 19 0 R ] >>
+endobj
+2 0 obj
+<< /Type /Catalog
+/Pages 1 0 R
+ /Outlines 20 0 R
+ /PageMode /UseOutlines
+ >>
+endobj
+3 0 obj
+<< 
+/Font << /F3 24 0 R /F5 25 0 R /F1 27 0 R /F6 26 0 R /F9 28 0 R /F2 29 0 R /F7 30 0 R >> 
+/ProcSet [ /PDF /ImageC /Text ] >> 
+endobj
+9 0 obj
+<<
+/S /GoTo
+/D [15 0 R /XYZ -5.0 731.0 null]
+>>
+endobj
+11 0 obj
+<<
+/S /GoTo
+/D [15 0 R /XYZ -5.0 487.856 null]
+>>
+endobj
+13 0 obj
+<<
+/S /GoTo
+/D [15 0 R /XYZ -5.0 90.642 null]
+>>
+endobj
+20 0 obj
+<<
+ /First 21 0 R
+ /Last 23 0 R
+>> endobj
+xref
+0 31
+0000000000 65535 f 
+0000007870 00000 n 
+0000007942 00000 n 
+0000008034 00000 n 
+0000000015 00000 n 
+0000000071 00000 n 
+0000000613 00000 n 
+0000000733 00000 n 
+0000000772 00000 n 
+0000008179 00000 n 
+0000000905 00000 n 
+0000008242 00000 n 
+0000001041 00000 n 
+0000008308 00000 n 
+0000001176 00000 n 
+0000004139 00000 n 
+0000004262 00000 n 
+0000004289 00000 n 
+0000004545 00000 n 
+0000006393 00000 n 
+0000008373 00000 n 
+0000006501 00000 n 
+0000006669 00000 n 
+0000006910 00000 n 
+0000007097 00000 n 
+0000007210 00000 n 
+0000007320 00000 n 
+0000007431 00000 n 
+0000007539 00000 n 
+0000007645 00000 n 
+0000007761 00000 n 
+trailer
+<<
+/Size 31
+/Root 2 0 R
+/Info 4 0 R
+>>
+startxref
+8424
+%%EOF



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org