home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Copyright 1999-2004 The Apache Software Foundation
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
- <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.0//EN" "document-v10.dtd">
-
- <document>
- <header>
- <title>HTML Generator</title>
- <version>0.9</version>
- <type>Technical document</type>
- <authors>
- <person name="Carsten Ziegeler" email="cziegeler@apache.org"/>
- <person name="Sylvain Wallez" email="sylvain@apache.org"/>
- <person name="Gianugo Rabellino " email="gianugo@apache.org"/>
- </authors>
- <abstract>This document describes the html generator of Cocoon.</abstract>
- </header>
- <body>
- <s1 title="HTML Generator">
- <p>The html generator reads an html document from the local file system or from any url.
- It acts similar to the file generator with the difference that it reads
- html documents and converts them using <link href="http://sourceforge.net/projects/jtidy">JTidy</link>
- to xhtml.</p>
- <p>This generator is optional and requires the jtidy package
- in the lib directory when building Cocoon. However,
- the distribution includes this package already.</p>
- <ul>
- <li>Name : html</li>
- <li>Class: org.apache.cocoon.generation.HTMLGenerator</li>
- <li>Cacheable: yes - uses the last modification date of the html document for validation.</li>
- </ul>
- <p>The location of the source html document is specified in
- the pipeline by the src attribute.</p>
- <source>
- <![CDATA[
- <map:generate src="document.html" type="html"/>
- ]]>
- </source>
- <p>The html generator, however, can operate also on a request
- attribute or on a XML POST request. This can be done also by the
- <link href="stream-generator.html">stream generator</link>, with whom
- it shares the syntax: the added bonus here is that you can
- "sanitize" a possibly non well-formed XML snippet for further
- reuse later. In order to use this feature for request attributes,
- just omit the "src" attribute and set a parameter like the following
- one in the sitemap:</p>
-
- <source>
- <![CDATA[
- <map:parameter name="form-name" value="my-request-attribute"/>
- ]]>
- </source>
-
- </s1>
- <s1 title="Configuring JTidy">
- <p>Without any configuration, the generator produces an XHTML document, with the proper namespace. However,
- JTidy offers a full range of options for converting the HTML document to XML.</p>
- <p>These options can be specified in a properties file (key=value pairs) whose location is given in the
- component configuration :</p>
- <source>
- <![CDATA[
- <map:generator name="html" src="org.apache.cocoon.generation.HTMLGenerator">
- <jtidy-config>jtidy.properties</jtidy-config>
- </map:generator>
- ]]>
- </source>
- <p>The <code>jtidy-config</code> URL can be either relative (to the application context), one of Cocoon's special
- protocols such as <code>resouce:</code> which searches the file in the classpath.</p>
- <p>For more information on the available configurations, please refer to the
- <link href="http://www.w3.org/People/Raggett/tidy/">original Tidy page</link>. Beware that configuration
- examples shown there use the ':' as a separator when JTidy requires a '=' as it is a standard Java properties file.
- </p>
- </s1>
-
- </body>
- </document>
-