You are viewing a plain text version of this content. The canonical link for it is here.
Posted to svn@forrest.apache.org by cr...@apache.org on 2006/04/01 08:47:41 UTC

svn commit: r390605 - in /forrest/site: ./ docs_0_80/howto/

Author: crossley
Date: Fri Mar 31 22:47:40 2006
New Revision: 390605

URL: http://svn.apache.org/viewcvs?rev=390605&view=rev
Log:
Automatic publish from forrestbot

Added:
    forrest/site/docs_0_80/howto/howto-structurer-install.html   (with props)
    forrest/site/docs_0_80/howto/howto-structurer-install.pdf   (with props)
Modified:
    forrest/site/abs-linkmap
    forrest/site/abs-menulinks
    forrest/site/committed.html
    forrest/site/committed.pdf
    forrest/site/docs_0_80/howto/howto-dev.html
    forrest/site/docs_0_80/howto/howto-dev.pdf
    forrest/site/linkmap.html

Modified: forrest/site/abs-linkmap
URL: http://svn.apache.org/viewcvs/forrest/site/abs-linkmap?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
--- forrest/site/abs-linkmap (original)
+++ forrest/site/abs-linkmap Fri Mar 31 22:47:40 2006
@@ -41,7 +41,9 @@
     <bugs label="Bugs and Issues" href="issues.html"/>
     <forrest-issues label="Open Issues" href="forrest-issues.html"/>
     <gump-forrest label="Gump Integration" href="gump.html"/>
-    <guidelines label="Project guidelines" href="guidelines.html"/>
+    <guidelines label="Project guidelines" href="guidelines.html">
+      <way href="guidelines.html#way"/>
+    </guidelines>
     <committed label="Being committed" href="committed.html"/>
     <thanks label="Thanks" href="thanks.html"/>
     <forrest-friday label="ForrestFriday" description="ForrestFriday monthly get-together" href="forrest-friday.html"/>
@@ -83,6 +85,8 @@
       <features href="http://cocoon.apache.org/2.1/features.html"/>
       <concepts href="http://cocoon.apache.org/2.1/userdocs/concepts/"/>
       <sitemap href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html"/>
+      <protocols href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#Protocols"/>
+      <file-url href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#file-url"/>
       <input-modules href="http://cocoon.apache.org/2.1/userdocs/concepts/modules.html"/>
       <views href="http://cocoon.apache.org/2.1/userdocs/concepts/views.html"/>
     </cocoon>

Modified: forrest/site/abs-menulinks
URL: http://svn.apache.org/viewcvs/forrest/site/abs-menulinks?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
--- forrest/site/abs-menulinks (original)
+++ forrest/site/abs-menulinks Fri Mar 31 22:47:40 2006
@@ -41,7 +41,9 @@
     <bugs tab="project" label="Bugs and Issues" href="issues.html"/>
     <forrest-issues tab="project" label="Open Issues" href="forrest-issues.html"/>
     <gump-forrest tab="project" label="Gump Integration" href="gump.html"/>
-    <guidelines tab="project" label="Project guidelines" href="guidelines.html"/>
+    <guidelines tab="project" label="Project guidelines" href="guidelines.html">
+      <way tab="project" href="guidelines.html#way"/>
+    </guidelines>
     <committed tab="project" label="Being committed" href="committed.html"/>
     <thanks tab="project" label="Thanks" href="thanks.html"/>
     <forrest-friday tab="project" label="ForrestFriday" description="ForrestFriday monthly get-together" href="forrest-friday.html"/>
@@ -83,6 +85,8 @@
       <features tab="home" href="http://cocoon.apache.org/2.1/features.html"/>
       <concepts tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/"/>
       <sitemap tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html"/>
+      <protocols tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#Protocols"/>
+      <file-url tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#file-url"/>
       <input-modules tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/modules.html"/>
       <views tab="home" href="http://cocoon.apache.org/2.1/userdocs/concepts/views.html"/>
     </cocoon>

Modified: forrest/site/committed.html
URL: http://svn.apache.org/viewcvs/forrest/site/committed.html?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
--- forrest/site/committed.html (original)
+++ forrest/site/committed.html Fri Mar 31 22:47:40 2006
@@ -229,15 +229,15 @@
       Further editing of this page is needed and would 
       be greatly appreciated.</div>
 </div>
-<p>Committer is an Apache term used to signify someone who is 
+<p>Committer is an term used at the ASF to signify someone who is 
       committed to a particular project and who is invited to be part of 
       the core group within the project that ensures the project's vitality 
       (represented by the PMC, Project Management Committee).</p>
 <p>One thing 
       that is sometimes hard to understand when you are new to the
-      Apache Way<sup>1</sup>
-      is that we don't really care about code, it is the 
-      community we care about. This is because a strong and healthy 
+      open development<sup>1</sup> process used at the ASF,
+      is that we care more about the community than the code.
+      This is because a strong and healthy 
       community will usually generate strong and healthy code.  As a result 
       of the Apache focus on community it is more important for people here 
       to discuss and explore within the community.</p>
@@ -347,8 +347,8 @@
 <h2 class="underlined_10">References</h2>
 <div class="section">
 <p>
-<sup>1</sup> See more information about "the Apache Way" in the
-      <a href="http://www.apache.org/foundation/how-it-works.html">ASF How it works</a>.</p>
+<sup>1</sup> <a href="guidelines.html#way">Open development</a> at Apache Forrest.
+      </p>
 <p>
 <sup>2</sup>
         Apache Forrest

Modified: forrest/site/committed.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/committed.pdf?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
Binary files - no diff available.

Modified: forrest/site/docs_0_80/howto/howto-dev.html
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-dev.html?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
--- forrest/site/docs_0_80/howto/howto-dev.html (original)
+++ forrest/site/docs_0_80/howto/howto-dev.html Fri Mar 31 22:47:40 2006
@@ -340,6 +340,9 @@
 <a href="#Development techniques and scenarios">Development techniques and scenarios</a>
 <ul class="minitoc">
 <li>
+<a href="#dev-environment">Development environment</a>
+</li>
+<li>
 <a href="#svn">Using Subversion</a>
 <ul class="minitoc">
 <li>
@@ -349,6 +352,9 @@
 <a href="#svn-email">Watch email notifications for svn differences</a>
 </li>
 <li>
+<a href="#svn-patch">Creating patches</a>
+</li>
+<li>
 <a href="#tips-svn">Tips</a>
 </li>
 </ul>
@@ -374,9 +380,18 @@
 </ul>
 </li>
 <li>
+<a href="#sitemap">Understanding the Cocoon sitemap</a>
+</li>
+<li>
 <a href="#debug">Debugging and profiling techniques</a>
 <ul class="minitoc">
 <li>
+<a href="#debug-logfiles">View logfiles</a>
+</li>
+<li>
+<a href="#debug-intermediate">View intermediate processing</a>
+</li>
+<li>
 <a href="#debug-cocoon-profiler">Using Cocoon sitemap profiler</a>
 </li>
 <li>
@@ -386,6 +401,9 @@
 <a href="#debug-logtransformer">Using Cocoon LogTransformer</a>
 </li>
 <li>
+<a href="#debug-java">Java code</a>
+</li>
+<li>
 <a href="#debug-links">Finding broken internal links</a>
 </li>
 <li>
@@ -461,11 +479,8 @@
       useful. For example, the section about debugging and the section about
       editing content.
     </p>
-<p>
-      See also the companion document "How to be a committer".
-    </p>
 </div>
-<a name="N10021"></a><a name="Purpose"></a>
+<a name="N1001E"></a><a name="Purpose"></a>
 <h2 class="underlined_10">Purpose</h2>
 <div class="section">
 <p>
@@ -474,6 +489,14 @@
       also contribute back to the project, so these notes assume that.
       Various key development tasks are used as worked examples.
     </p>
+<p>
+      This document is intended to be an introduction to developing in Forrest, specifically,
+      for those developers without a strong Cocoon background.  Some key concepts in Forrest 
+      like sitemaps, pipelines, and locationmaps can be challenging enough to understand without
+      also struggling with the fundamental development chores of debugging, extension methods, etc.
+      The goal of this document is to reduce the steep learning curve by providing answers to 
+      some really practical Forrest development questions.
+    </p>
 </div>
 <a name="N10029"></a><a name="Prerequisites"></a>
 <h2 class="underlined_10">Prerequisites</h2>
@@ -512,7 +535,31 @@
       your work back to the project. Techniques for network-based collaborative
       development are encouraged.
     </p>
-<a name="N1004A"></a><a name="svn"></a>
+<a name="N1004A"></a><a name="dev-environment"></a>
+<h3 class="underlined_5">Development environment</h3>
+<p>
+        There is no *proper* dev environment. It really depends on your personal
+        preferences. In an opensource project there is huge variety of environments.
+        This makes it quite a challenge to keep sources consistent (see discussion below).
+      </p>
+<p>
+        Some people use vi or emacs, others use graphical editors, others use
+        integrated development environments such as Eclipse or IDEA.
+      </p>
+<p>
+        Ensure to <a href="../../docs_0_70/catalog.html">configure</a> your xml editor to take
+        advantage of the local sets of DTDs provided by Forrest. This also explains how
+        to use xml validators such as 'xmllint'. If your editor of choice doesn't
+        validate XML, then most XML validation issues can be discovered using
+        <span class="codefrag">forrest validate-xdocs</span>
+      
+</p>
+<p>
+        There really isn't much Java code in Forrest, but a Java Development Environment
+        such as Eclipse or any text editor of your choice will work just fine.
+        If you point Eclipse at the Forrest build file it will make life easy for you.
+      </p>
+<a name="N10064"></a><a name="svn"></a>
 <h3 class="underlined_5">Using Subversion</h3>
 <p>
         The Subversion source control system is used for all ASF projects.
@@ -537,7 +584,13 @@
         <a href="../../docs_0_80/build.html">instructions</a>
         for obtaining the Apache Forrest sources via SVN.
       </p>
-<a name="N10063"></a><a name="multiple"></a>
+<p>
+        Whether you use the svn command-line client or a fancy client,
+        then you still need to make sure you know how to operate SVN properly.
+        <a href="http://svnbook.red-bean.com/">http://svnbook.red-bean.com</a>
+        is a must.
+      </p>
+<a name="N10084"></a><a name="multiple"></a>
 <h4>Multiple working copies</h4>
 <p>
           Most developers would have a number of separate SVN working copies.
@@ -557,7 +610,7 @@
 forrest_07_branch
 forrest-trunk
         </pre>
-<a name="N10074"></a><a name="svn-email"></a>
+<a name="N10095"></a><a name="svn-email"></a>
 <h4>Watch email notifications for svn differences</h4>
 <p>
           Either subscribe to the project's
@@ -567,7 +620,23 @@
           The svn differences (diffs) are automatically sent whenever
           a committer makes some changes.
         </p>
-<a name="N10082"></a><a name="tips-svn"></a>
+<a name="N100A3"></a><a name="svn-patch"></a>
+<h4>Creating patches</h4>
+<p>See 
+        <a href="../../contrib.html#patch">instructions</a> for creating and contributing patches.
+        Make sure to do three things before creating the patch:</p>
+<ul>
+          
+<li>Do 'svn update' to be in sync with the repository in case someone else changed your files in SVN.</li>
+          
+<li>Do 'svn status' to ensure that you are not including unnecessary changes.</li>
+          
+<li>Do 'svn diff' to ensure that changes are what you expect.</li>
+        
+</ul>
+<p>After creating the patch, open it with a text editor and review it.
+        </p>
+<a name="N100C0"></a><a name="tips-svn"></a>
 <h4>Tips</h4>
 <ul>
           
@@ -596,7 +665,7 @@
           </li>
         
 </ul>
-<a name="N100A5"></a><a name="edit"></a>
+<a name="N100E3"></a><a name="edit"></a>
 <h3 class="underlined_5">Editing content</h3>
 <p>
         See the 
@@ -605,18 +674,24 @@
         be used, because Forrest treats the editing of content as a separate
         concern. Be sure to configure the editor to find local copies of DTDs.
       </p>
-<a name="N100B2"></a><a name="code-style"></a>
+<a name="N100F0"></a><a name="code-style"></a>
 <h4>Code style guidelines</h4>
 <p>
           Consistent code makes everyone's life easier.
           See the 
           <a href="http://cocoon.apache.org/community/committer.html">Apache Cocoon tips</a>.
-          We don't get too hung up on style, but a few basic things are important.
+          We don't get too hung up on style, but those few basic things are important.
+          However we know that coding style is mixed, so just follow the same style
+          as that which exists in the file you are editing. We can occasionally clean up later.
+        </p>
+<p>
+          Don't change anything that is not necessary. Remember that people need to be
+          able to read the differences on the svn@forrest mailing list.
         </p>
-<a name="N100C0"></a><a name="whitespace"></a>
+<a name="N10101"></a><a name="whitespace"></a>
 <h4>Whitespace</h4>
 <p>
-          For new file, use spaces instead of tabs (java files have four-space indentation,
+          For new files, use spaces instead of tabs (java files have four-space indentation,
           xml files and other text files have two-space indentation).
         </p>
 <p>
@@ -640,7 +715,7 @@
           references.
         </div>
 </div>
-<a name="N100D8"></a><a name="line-length"></a>
+<a name="N10119"></a><a name="line-length"></a>
 <h4>Line length</h4>
 <p>
           If each paragraph of an xml source document is one enourmous long
@@ -649,10 +724,10 @@
           efficiently review the changes. Fold long lines to a sensible
           line-length (normally 80-characters wide but not more than 120 characters).
         </p>
-<a name="N100E2"></a><a name="review"></a>
+<a name="N10123"></a><a name="review"></a>
 <h4>Use 'forrest run' for immediate gratification</h4>
 <p>
-          Edit content and immediately view it in the browser.
+          Edit documentation content and immediately view it in the browser.
           When you are satisifed, then do 'forrest site' to ensure that the
           whole documentation set hangs together and there are no broken
           references.
@@ -664,7 +739,7 @@
           tools such as "xmllint". As a last resort, you can use
           'forrest validate-xdocs'.
         </p>
-<a name="N100EF"></a><a name="tips-edit"></a>
+<a name="N10130"></a><a name="tips-edit"></a>
 <h4>Tips</h4>
 <ul>
           
@@ -673,14 +748,64 @@
           </li>
         
 </ul>
-<a name="N100FD"></a><a name="debug"></a>
+<a name="N1013E"></a><a name="sitemap"></a>
+<h3 class="underlined_5">Understanding the Cocoon sitemap</h3>
+<p>
+        The Cocoon sitemap is essential for Forrest developers. See some introductions ....
+      </p>
+<ul>
+        
+<li>
+<a href="../../docs_0_80/sitemap-ref.html">Forrest sitemap reference</a>.</li>
+        
+<li>Introduction to Pipelines in this
+          <a href="../../docs_0_80/howto/howto-custom-html-source.html">How-to</a>.</li>
+        
+<li>About
+          <a href="../../docs_0_80/project-sitemap.html">Forrest project sitemaps</a>.</li>
+        
+<li>
+<a href="http://cocoon.apache.org/2.1/userdocs/concepts/">Cocoon concepts</a>.</li>
+        
+<li>
+<a href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html">Cocoon sitemap</a>.</li>
+        
+<li>
+<a href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#Protocols">Cocoon protocols</a>, i.e. cocoon:/ and
+          cocoon:// and context:// and resource:// etc. and the
+          <a href="http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html#file-url">file://</a>
+        
+</li>
+      
+</ul>
+<a name="N10175"></a><a name="debug"></a>
 <h3 class="underlined_5">Debugging and profiling techniques</h3>
+<a name="N1017B"></a><a name="debug-logfiles"></a>
+<h4>View logfiles</h4>
 <p>
-        This <a href="../../docs_0_80/faq.html#logs">FAQ</a>
-        describes the location of the Cocoon logfiles and their
-        configuration.
+          The log files in WEB-INF/logs are indispensible when it comes
+          to debugging sitemaps. While ERRORs will generally always print in the log files, 
+          while you're debugging something you may find it useful to also customize log output in
+          the "logkit.xconf" in webapp/WEB-INF and raise the level of some loggers to WARN.
       </p>
-<a name="N1010A"></a><a name="debug-cocoon-profiler"></a>
+<p>
+          This <a href="../../docs_0_80/faq.html#logs">FAQ</a>
+          describes the location of the Cocoon logfiles and their
+          configuration.
+        </p>
+<a name="N1018C"></a><a name="debug-intermediate"></a>
+<h4>View intermediate processing</h4>
+<p>
+          Perhaps the easiest way to "debug" Forrest is to be aware of all the
+          processing steps between taking in the source and outputting the end
+          result. When you know these you can do 'forrest run' and request the
+          intermediate documents, such as "http://localhost:8888/body-index.xml"
+          which will return the intermediate processing of the body of the document.
+        </p>
+<p>
+          The techniques described below help you to be aware of the intermediate processing steps.
+        </p>
+<a name="N10199"></a><a name="debug-cocoon-profiler"></a>
 <h4>Using Cocoon sitemap profiler</h4>
 <p>
           Cocoon provides a simple profiler to analyse itself.
@@ -711,7 +836,7 @@
           NOTE: Do not forget to turn off the profiler in 
           <span class="codefrag">main/webapp/sitemap.xmap</span> when finished.
         </p>
-<a name="N10126"></a><a name="debug-sitemap-exec"></a>
+<a name="N101B5"></a><a name="debug-sitemap-exec"></a>
 <h4>Using Cocoon sitemap execution logger</h4>
 <p>
           In main/webapp/WEB-INF/xconf/forrest-core.xconf
@@ -719,7 +844,7 @@
           For each sitemap component that is executed, a message will go to
           WEB-INF/logs/debug.log
         </p>
-<a name="N10130"></a><a name="debug-logtransformer"></a>
+<a name="N101BF"></a><a name="debug-logtransformer"></a>
 <h4>Using Cocoon LogTransformer</h4>
 <p>
           LogTransformers can be inserted in the sitemaps. This will write
@@ -749,7 +874,21 @@
           path is being taken through the sitemap. Add various LogTransformers
           with different filenames and see which one gets triggered.
         </p>
-<a name="N10147"></a><a name="debug-links"></a>
+<a name="N101D6"></a><a name="debug-java"></a>
+<h4>Java code</h4>
+<p>
+          Since there's really no way to "trace" the java code through the
+          pipeline process, you may find <span class="codefrag">getLogger().debug()</span> useful for
+          understanding the processing that goes on. You can then open the page that will
+          use the selected code and use the log files mentioned above to look for
+          the information message.
+        </p>
+<p>
+          If you need to debug actual Cocoon components, then you would need to add such debug
+          statements to the Cocoon sources and rebuild Forrest's packaged Cocoon
+          (as described in $FORREST_HOME/etc/cocoon_upgrade/).
+        </p>
+<a name="N101E6"></a><a name="debug-links"></a>
 <h4>Finding broken internal links</h4>
 <p>
           Do 'forrest site' to produce the whole documentation set.
@@ -770,7 +909,7 @@
           configuration file or the link in your source document is not
           using the correct name for the "site:..." value.
         </p>
-<a name="N1015B"></a><a name="tips-debug"></a>
+<a name="N101FA"></a><a name="tips-debug"></a>
 <h4>Tips</h4>
 <ul>
           
@@ -780,13 +919,13 @@
           </li>
         
 </ul>
-<a name="N10169"></a><a name="find"></a>
+<a name="N10208"></a><a name="find"></a>
 <h3 class="underlined_5">Finding the relevant sources</h3>
 <p>
         You will need to be able to find which sources, sitemaps, stylesheets
         are responsible for certain processing.
       </p>
-<a name="N10172"></a><a name="find-scenario-1"></a>
+<a name="N10211"></a><a name="find-scenario-1"></a>
 <h4>Scenario: How does i18n work</h4>
 <p>
           We will do a search for "i18n" to start with, then refine that after
@@ -829,7 +968,7 @@
           is declared to use i18n, then further down the page the "skinit"
           pipeline uses the i18n transformer only if i18n is switched on.
         </p>
-<a name="N10194"></a><a name="tips-find"></a>
+<a name="N10233"></a><a name="tips-find"></a>
 <h4>Tips</h4>
 <ul>
           
@@ -839,31 +978,31 @@
         
 </ul>
 </div>
-<a name="N101A4"></a><a name="Frequently Asked Questions"></a>
+<a name="N10243"></a><a name="Frequently Asked Questions"></a>
 <h2 class="underlined_10">Frequently Asked Questions</h2>
 <div class="section">
-<a name="N101A8"></a><a name="1+General+issues"></a>
+<a name="N10247"></a><a name="1+General+issues"></a>
 <h3 class="underlined_5">1 General issues</h3>
-<a name="N101AC"></a><a name="1.1+FAQ+1"></a>
+<a name="N1024B"></a><a name="1.1+FAQ+1"></a>
 <h4>1.1 FAQ 1</h4>
 <p>
 ####
           </p>
-<a name="N101B4"></a><a name="2+Other+issues"></a>
+<a name="N10253"></a><a name="2+Other+issues"></a>
 <h3 class="underlined_5">2 Other issues</h3>
-<a name="N101B8"></a><a name="2.1+FAQ+2.1"></a>
+<a name="N10257"></a><a name="2.1+FAQ+2.1"></a>
 <h4>2.1 FAQ 2.1</h4>
 <p>
 ###
           </p>
 </div>
-<a name="N101C0"></a><a name="Tips"></a>
+<a name="N1025F"></a><a name="Tips"></a>
 <h2 class="underlined_10">Tips</h2>
 <div class="section">
 <p>
       This is a collection of general tips that do not fit in the sections above. 
     </p>
-<a name="N101C8"></a><a name="tip-howto"></a>
+<a name="N10267"></a><a name="tip-howto"></a>
 <h3 class="underlined_5">Explanations about howto topics on the mailing lists</h3>
 <p>
         Often there are useful discussions on the mailing lists which explain
@@ -872,7 +1011,7 @@
         which links to the email discussion. Later someone else can summarise.
       </p>
 </div>
-<a name="N101D2"></a><a name="References"></a>
+<a name="N10271"></a><a name="References"></a>
 <h2 class="underlined_10">References</h2>
 <div class="section">
 <p>

Modified: forrest/site/docs_0_80/howto/howto-dev.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-dev.pdf?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
Binary files - no diff available.

Added: forrest/site/docs_0_80/howto/howto-structurer-install.html
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-structurer-install.html?rev=390605&view=auto
==============================================================================
--- forrest/site/docs_0_80/howto/howto-structurer-install.html (added)
+++ forrest/site/docs_0_80/howto/howto-structurer-install.html Fri Mar 31 22:47:40 2006
@@ -0,0 +1,511 @@
+<!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>How to install the "dispatcher" (v0.8-dev)</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://forrest.apache.org/">forrest</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="http://www.apache.org/"><img class="logoImage" alt="Apache" src="../../images/apache-forrest.png" title="The Apache Software Foundation"></a>
+</div>
+<!--+
+    |end group logo
+    +-->
+<!--+
+    |start Project Logo
+    +-->
+<div class="projectlogo">
+<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="../../images/project-logo.gif" title="Apache Forrest"></a>
+</div>
+<!--+
+    |end Project Logo
+    +-->
+<!--+
+    |start Search
+    +-->
+<div class="searchbox">
+<form action="http://www.google.com/search" method="get" class="roundtopsmall">
+<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
+                    <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">Welcome</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../contrib.html">Project</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../versions/index.html">Versioned Docs</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../pluginDocs/index.html">Plugins</a>
+</li>
+<li>
+<a class="base-not-selected" href="../../tools/index.html">Tools</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">
+             
+             &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');">0.80-dev</div>
+<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../docs_0_80/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/faq.html">FAQs</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/changes.html">Changes</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/todo.html">Todo</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/your-project.html">Using Forrest</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/locationmap.html">Locationmap</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/validation.html">XML Validation</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/linking.html">Menus and Linking</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/searching.html">Searching</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/skins.html">Default Skins</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/skin-package.html">Skin Packages</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/dispatcher.html">Dispatcher development</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/forrest-contract.html">Our Contract</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/compliance.html">Standards Compliance</a>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.15', '../../skin/')" id="menu_selected_1.1.15Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">How-To</div>
+<div id="menu_selected_1.1.15" class="selectedmenuitemgroup" style="display: block;">
+<div class="menuitem">
+<a href="../../docs_0_80/howto/index.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-howto.html">Write a How-to</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-dev.html">Be a developer</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-asf-mirror.html">Download mirror</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-pdf-tab.html">Create tab PDF</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-editcss.html">Edit CSS (WYSIWYG)</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-corner-images.html">CSS corner SVG</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-forrest-from-maven.html">Maven Integration</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-buildPlugin.html">Build a Plugin</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-custom-html-source.html">Custom html source</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.15.11', '../../skin/')" id="menu_1.1.15.11Title" class="menutitle">Multipage HowTo</div>
+<div id="menu_1.1.15.11" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../docs_0_80/howto/multi/howto-multi.html">Introduction</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/multi/step1.html">Step 1</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/multi/step2.html">Step 2</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/multi/step3.html">Step 3</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_selected_1.1.15.12', '../../skin/')" id="menu_selected_1.1.15.12Title" class="menutitle" style="background-image: url('../../skin/images/chapter_open.gif');">Dispatcher</div>
+<div id="menu_selected_1.1.15.12" class="selectedmenuitemgroup" style="display: block;">
+<div class="menupage">
+<div class="menupagetitle">Install</div>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-structurer-dsl.html">Structurer</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-dispatcher-quickstart.html">Quickstart</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/howto-structurer-contracts.html">Contracts</a>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.16', '../../skin/')" id="menu_1.1.16Title" class="menutitle">Advanced Topics</div>
+<div id="menu_1.1.16" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../docs_0_80/build.html">Building Forrest</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/catalog.html">Using DTD Catalogs</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/sitemap-ref.html">Sitemap Reference</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/project-sitemap.html">Project sitemap</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/cap.html">Sourcetype Action</a>
+</div>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/upgrading_08.html">Upgrading to 0.8</a>
+</div>
+<div onclick="SwitchMenu('menu_1.1.18', '../../skin/')" id="menu_1.1.18Title" class="menutitle">Reference docs</div>
+<div id="menu_1.1.18" class="menuitemgroup">
+<div onclick="SwitchMenu('menu_1.1.18.1', '../../skin/')" id="menu_1.1.18.1Title" class="menutitle">DTD documentation</div>
+<div id="menu_1.1.18.1" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../dtdx/dtd-docs.html">Overview</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/document-v20.dtdx.html">document-v20</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/howto-v20.dtdx.html">howto-v20</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/faq-v20.dtdx.html">faq-v20</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/document-v13.dtdx.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/howto-v13.dtdx.html">howto-v13</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/faq-v13.dtdx.html">faq-v13</a>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.18.2', '../../skin/')" id="menu_1.1.18.2Title" class="menutitle">Doc samples</div>
+<div id="menu_1.1.18.2" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../dtdx/document-v13.html">document-v13</a>
+</div>
+<div class="menuitem">
+<a href="../../dtdx/document-v20.html">document-v20</a>
+</div>
+</div>
+</div>
+<div onclick="SwitchMenu('menu_1.1.19', '../../skin/')" id="menu_1.1.19Title" class="menutitle">Older Docs</div>
+<div id="menu_1.1.19" class="menuitemgroup">
+<div class="menuitem">
+<a href="../../docs_0_80/primer.html">Forrest Primer</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/libre-intro.html">Libre</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/dreams.html">Dream list</a>
+</div>
+<div class="menuitem">
+<a href="../../docs_0_80/howto/cvs-ssh/howto-cvs-ssh.html">CVS over SSH</a>
+</div>
+</div>
+</div>
+<div id="credit">
+<hr>
+        This is documentation for development version v0.8
+       (<a href="http://forrest.apache.org/versions/">More</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="howto-structurer-install.pdf"><img alt="PDF -icon" src="../../skin/images/pdfdoc.gif" class="skin"><br>
+        PDF</a>
+</div>
+<div class="trail">Font size: 
+	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
+	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
+	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
+</div>
+<h1>How to install the "dispatcher"</h1>
+<div class="abstract">
+    This How-To describes the setup of the plugins (needed to work with forrest:views and forrest:contracts) and a fresh v2 seed site.
+  </div>
+<div id="motd-area">
+        This is documentation for development version v0.8
+       (<a href="http://forrest.apache.org/versions/">More</a>)</div>
+<div id="minitoc-area">
+<ul class="minitoc">
+<li>
+<a href="#Intended Audience">Intended Audience</a>
+</li>
+<li>
+<a href="#Purpose">Purpose</a>
+</li>
+<li>
+<a href="#Prerequisites">Prerequisites</a>
+</li>
+<li>
+<a href="#Steps">Steps</a>
+<ul class="minitoc">
+<li>
+<a href="#localBuild">Build the internal.dispatcher and the themes.core plugins</a>
+</li>
+<li>
+<a href="#newSeed">Seed a new project</a>
+</li>
+<li>
+<a href="#forrestProperties">Modify forrest.properties</a>
+</li>
+<li>
+<a href="#testing">Test your new "dispatcher" based project</a>
+</li>
+<li>
+<a href="#availableContracts">Available contracts</a>
+</li>
+</ul>
+</li>
+<li>
+<a href="#Further Reading">Further Reading</a>
+</li>
+<li>
+<a href="#Feedback">Feedback</a>
+</li>
+</ul>
+</div>
+<a name="N10010"></a><a name="Intended Audience"></a>
+<h2 class="underlined_10">Intended Audience</h2>
+<div class="section">
+<div class="warning">
+<div class="label">Warning</div>
+<div class="content">
+The "Dispatcher" (aka "Views") is new functionality which is still in development phase. That is why it is in the
+"whiteboard" section of the Forrest distribution. This HowTo is a good start but still needs more work.
+</div>
+</div>
+<p>
+      Developers who want to get started with "dispatcher" development and want to help testing and developing the "dispatcher".
+    </p>
+</div>
+<a name="N1001B"></a><a name="Purpose"></a>
+<h2 class="underlined_10">Purpose</h2>
+<div class="section">
+<p>
+      Quick guide installing the "dispatcher". This is the "getting started" setup guide.
+    </p>
+</div>
+<a name="N10023"></a><a name="Prerequisites"></a>
+<h2 class="underlined_10">Prerequisites</h2>
+<div class="section">
+<ul>
+      
+<li>Need the SVN trunk version of Forrest for using the "dispatcher" because it is in an early stage.</li>
+      
+<li>Read <a href="../../docs_0_80/howto/howto-buildPlugin.html">How to Build a Plugin</a>
+        especially the section about using Forrest's own Ant.</li>
+      
+<li>Installing a mozilla browser and the
+        <a href="../../tools/forrestbar.html">Forrestbar</a> helps a lot in developing.</li>
+    
+</ul>
+</div>
+<a name="N1003C"></a><a name="Steps"></a>
+<h2 class="underlined_10">Steps</h2>
+<div class="section">
+<p>
+      The process of setting up the plugin should be easy. Still it has too many stages and it
+       will become easier in the future.
+    </p>
+<a name="N10044"></a><a name="localBuild"></a>
+<h3 class="underlined_5">Build the internal.dispatcher and the themes.core plugins</h3>
+<p>
+        The first step is to build and deploy the internal.dispatcher and the themes.core plugins.
+      </p>
+<p>
+        Do your usual 'svn update' on forrest (build it clean and normal), then ...
+      </p>
+<pre class="code">
+cd whiteboard/plugins/org.apache.forrest.plugin.internal.dispatcher/
+$FORREST_HOME/tools/ant/bin/ant local-deploy
+cd ../org.apache.forrest.themes.core/
+$FORREST_HOME/tools/ant/bin/ant local-deploy
+      </pre>
+<a name="N10055"></a><a name="newSeed"></a>
+<h3 class="underlined_5">Seed a new project</h3>
+<p> Go to the directory where you want to seed a new project and seed it ...
+      </p>
+<pre class="code">cd ~/src/ 
+mkdir dispatcher
+cd dispatcher/ 
+forrest seed </pre>
+<a name="N10063"></a><a name="forrestProperties"></a>
+<h3 class="underlined_5">Modify forrest.properties</h3>
+<p>
+        Make sure to tell forrest to use the dispatcher plugins. <br>
+        Edit forrest.properties to add the required plugins:
+      </p>
+<pre class="code">
+project.required.plugins=org.apache.forrest.themes.core,org.apache.forrest.plugin.internal.dispatcher
+      </pre>
+<a name="N10073"></a><a name="testing"></a>
+<h3 class="underlined_5">Test your new "dispatcher" based project</h3>
+<p> 
+        Now you have finished the preparation and the setup to finally do
+        <span class="codefrag">'forrest run'</span> and
+        point your browser to <span class="codefrag">http://localhost:8888/</span> and you will see the default
+        dispatcher-based site.
+      </p>
+<a name="N10083"></a><a name="availableContracts"></a>
+<h3 class="underlined_5">Available contracts</h3>
+<p> 
+       To start working with the dispatcher, you need to know which contracts you can use. 
+       Forrestbar is a nice way to see available contracts. See the menu point "Devs"
+       (ls.contracts and/or ls.contracts.project)
+      </p>
+<p>
+        You can point your browser to e.g. <span class="codefrag">http://localhost:8888/ls.contracts.html</span> 
+        ... On this page you will find all contracts that you can use in your project provided by the core themes.
+      </p>
+</div>
+<a name="N10092"></a><a name="Further Reading"></a>
+<h2 class="underlined_10">Further Reading</h2>
+<div class="section">
+<p>
+      Congratulations you are now able to work with the dispatcher. 
+      From here we recommend to read the following How-To's (in this order):
+    </p>
+<ul>
+      
+<li>
+<a href="../../docs_0_80/howto/howto-structurer-dsl.html">Getting started with the "structurer"</a> 
+</li>
+      
+<li>
+<a href="../../docs_0_80/howto/howto-structurer-contracts.html">Create your own contract implementation</a> 
+</li>
+    
+</ul>
+</div>
+<a name="N100A9"></a><a name="Feedback"></a>
+<h2 class="underlined_10">Feedback</h2>
+<div class="section">
+<p>
+      Please provide feedback about this document via the "dev"
+      <a href="../../mail-lists.html">mailing list</a>.
+    </p>
+</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/">The Apache Software Foundation.</a>
+</div>
+<!--+
+    |end bottomstrip
+    +-->
+</div>
+</body>
+</html>

Propchange: forrest/site/docs_0_80/howto/howto-structurer-install.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: forrest/site/docs_0_80/howto/howto-structurer-install.pdf
URL: http://svn.apache.org/viewcvs/forrest/site/docs_0_80/howto/howto-structurer-install.pdf?rev=390605&view=auto
==============================================================================
Binary file - no diff available.

Propchange: forrest/site/docs_0_80/howto/howto-structurer-install.pdf
------------------------------------------------------------------------------
    svn:mime-type = application/pdf

Modified: forrest/site/linkmap.html
URL: http://svn.apache.org/viewcvs/forrest/site/linkmap.html?rev=390605&r1=390604&r2=390605&view=diff
==============================================================================
--- forrest/site/linkmap.html (original)
+++ forrest/site/linkmap.html Fri Mar 31 22:47:40 2006
@@ -302,6 +302,10 @@
 <li>
 <a href="guidelines.html">Project guidelines</a>&nbsp;&nbsp;&nbsp;_________________________&nbsp;&nbsp;<em>guidelines</em>
 </li>
+<ul>
+      
+    
+</ul>
 </ul>
     
 <ul>