Modified: cocoon/site/site/2.1/userdocs/actions/session-action.html URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/actions/session-action.html?view=diff&r1=159368&r2=159369 ============================================================================== --- cocoon/site/site/2.1/userdocs/actions/session-action.html (original) +++ cocoon/site/site/2.1/userdocs/actions/session-action.html Tue Mar 29 05:47:29 2005 @@ -2,14 +2,18 @@ <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.6"> +<meta name="Forrest-skin-name" content="forrest-site"> <title>Session Action</title> <link type="text/css" href="../../skin/page.css" rel="stylesheet"> +<link rel="shortcut icon" href="../../"> </head> <body text="#000000" bgcolor="#FFFFFF"> <!--================= start Navigation Path ==================--> <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> -<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> +<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><a href="http://www.apache.org/">apache</a> > <a href="http://cocoon.apache.org/">cocoon</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> </tr> <tr> <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> @@ -20,9 +24,9 @@ <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <!--================= start Group Logo ==================--> -<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> +<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> <!--================= end Group Logo ==================--> -<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif"></a></td> +<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif" title="Apache Cocoon"></a></td> <!--================= end Project Logo ==================--> <!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"> <form target="_blank" action="http://www.google.com/search" method="get"> @@ -31,13 +35,13 @@ <td colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> -<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="sitesearch" type="hidden"><input size="15" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> +<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="as_sitesearch" type="hidden"><input size="15" name="as_q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> <br> <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> - the Apache Cocoon site - - - </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> + the Apache Cocoon site + + + </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-left.gif"></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-right.gif"></td> @@ -45,7 +49,7 @@ </table> </form> </td> -<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<!--================= end Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td valign="bottom" bgcolor="#294563" colspan="2"> @@ -64,10 +68,10 @@ </table> </div> <!--================= end Tabs ==================--> -</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../../skin/images/spacer.gif" class="spacer"></td> +</td><td bgcolor="#294563"></td> </tr> <tr> -<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<td height="10" bgcolor="#4C6C8F" colspan="4"></td> </tr> </table> <!--================= end Banner ==================--> @@ -192,28 +196,8 @@ <tr> <td valign="middle"> <h1>Session Action</h1> -</td><script language="Javascript" type="text/javascript"> -function printit() { -if (window.print) { - window.print() ; -} else { - var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; -document.body.insertAdjacentHTML('beforeEnd', WebBrowser); - WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; -} -} -</script><script language="Javascript" type="text/javascript"> -var NS = (navigator.appName == "Netscape"); -var VERSION = parseInt(navigator.appVersion); -if (VERSION > 3) { - document.write('<td nowrap="nowrap" width="40" align="center">'); - document.write(' <a class="dida" href="javascript:printit()">'); - document.write(' <img alt="Print this Page" src="../../skin/images/printer.gif" class="skin"><br>'); - document.write(' print</a>'); - document.write('</td>'); -} -</script><td nowrap="nowrap" width="40" align="center"><a class="dida" href="session-action.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> - PDF</a></td> +</td><td nowrap="nowrap" width="40" align="center"><a class="dida" href="session-action.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> + PDF</a></td> </tr> </table> <p class="type">Type: Technical document</p> @@ -255,7 +239,7 @@ <pre class="code"> <map:act type="session"/> - + </pre> <p>This is the equivalent to specify the 'action' parameter with the value 'create':</p> @@ -264,10 +248,10 @@ <map:act type="session"> <map:parameter name="action" value="create"/> </map:act> - + </pre> </div> -<a name="N10042"></a><a name="Terminating+a+Session"></a> +<a name="N10040"></a><a name="Terminating+a+Session"></a> <h4>Terminating a Session</h4> <div style="margin-left: 0 ; border: 2px"> <p>Terminating a session is as easy as creating a session, simply @@ -278,7 +262,7 @@ <map:act type="session"> <map:parameter name="action" value="terminate"/> </map:act> - + </pre> <p>This terminates the session immediately.</p> <p>You can optionally specifiy the 'mode' parameter which controlls @@ -292,12 +276,12 @@ <map:parameter name="action" value="terminate"/> <map:parameter name="mode" value="if-unused"/> </map:act> - + </pre> </div> </div> -<a name="N1005C"></a><a name="Configuration"></a> +<a name="N10058"></a><a name="Configuration"></a> <h3>Configuration</h3> <div style="margin-left: 0 ; border: 2px"> <ul> @@ -323,11 +307,14 @@ <!--================= start Footer ==================--> <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> -<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a><a href="/favicon.ico"></a></td> +<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a></td> </tr> <tr> -<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © - 1999-2004 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- +<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif"><a href="http://www.apache.org/licenses/"> + Copyright © 1999-2005 + The Apache Software Foundation.</a> + All rights reserved. + <script type="text/javascript" language="JavaScript"><!-- document.write(" - "+"Last Published: " + document.lastModified); // --></script></font></td> </tr>
Modified: cocoon/site/site/2.1/userdocs/actions/session-action.pdf URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/actions/session-action.pdf?view=diff&r1=159368&r2=159369 ============================================================================== Binary files - no diff available. Modified: cocoon/site/site/2.1/userdocs/concepts/actions.html URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/actions.html?view=diff&r1=159368&r2=159369 ============================================================================== --- cocoon/site/site/2.1/userdocs/concepts/actions.html (original) +++ cocoon/site/site/2.1/userdocs/concepts/actions.html Tue Mar 29 05:47:29 2005 @@ -2,14 +2,18 @@ <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.6"> +<meta name="Forrest-skin-name" content="forrest-site"> <title>actions</title> <link type="text/css" href="../../skin/page.css" rel="stylesheet"> +<link rel="shortcut icon" href="../../"> </head> <body text="#000000" bgcolor="#FFFFFF"> <!--================= start Navigation Path ==================--> <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> -<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> +<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><a href="http://www.apache.org/">apache</a> > <a href="http://cocoon.apache.org/">cocoon</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> </tr> <tr> <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> @@ -20,9 +24,9 @@ <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <!--================= start Group Logo ==================--> -<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> +<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> <!--================= end Group Logo ==================--> -<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif"></a></td> +<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif" title="Apache Cocoon"></a></td> <!--================= end Project Logo ==================--> <!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"> <form target="_blank" action="http://www.google.com/search" method="get"> @@ -31,13 +35,13 @@ <td colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> -<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="sitesearch" type="hidden"><input size="15" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> +<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="as_sitesearch" type="hidden"><input size="15" name="as_q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> <br> <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> - the Apache Cocoon site - - - </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> + the Apache Cocoon site + + + </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-left.gif"></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-right.gif"></td> @@ -45,7 +49,7 @@ </table> </form> </td> -<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<!--================= end Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td valign="bottom" bgcolor="#294563" colspan="2"> @@ -64,10 +68,10 @@ </table> </div> <!--================= end Tabs ==================--> -</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../../skin/images/spacer.gif" class="spacer"></td> +</td><td bgcolor="#294563"></td> </tr> <tr> -<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<td height="10" bgcolor="#4C6C8F" colspan="4"></td> </tr> </table> <!--================= end Banner ==================--> @@ -98,71 +102,93 @@ <li> <font color="#CFDCED">Navigation</font> <ul> + <li> <a href="../../index.html">Main</a> </li> + <li> <a href="../index.html">User Documentation</a> </li> + </ul> </li> <li> <font color="#CFDCED">Concepts</font> <ul> + <li> <a href="index.html">Overview</a> </li> + <li> <a href="sitemap.html">Sitemap</a> </li> + <li> <a href="views.html">Views</a> </li> + <li> <a href="caching.html">Caching</a> </li> + <li> <span class="sel"><font color="#ffcc00">Actions</font></span> </li> + <li> <a href="matchers_selectors.html">Matchers and Selectors</a> </li> + <li> <a href="catalog.html">Entity Catalogs</a> </li> + <li> <a href="mrustore.html">MRUMemoryStore</a> </li> + <li> <a href="persistence.html">Persistence</a> </li> + <li> <a href="storejanitor.html">StoreJanitor</a> </li> + <li> <a href="xmlsearching.html">XMLSearching</a> </li> + <li> <a href="validation.html">XML Validation</a> </li> + <li> <a href="databases.html">Databases</a> </li> + <li> <a href="modules.html">Modules</a> </li> + <li> <a href="modules-ref.html">Modules Reference</a> </li> + <li> <a href="redirection.html">Redirection</a> </li> + <li> <a href="profiler.html">Profiler</a> </li> + <li> <a href="errorhandling.html">Error Handling</a> </li> + </ul> </li> </ul> @@ -204,28 +230,8 @@ <tr> <td valign="middle"> <h1>actions</h1> -</td><script language="Javascript" type="text/javascript"> -function printit() { -if (window.print) { - window.print() ; -} else { - var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; -document.body.insertAdjacentHTML('beforeEnd', WebBrowser); - WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; -} -} -</script><script language="Javascript" type="text/javascript"> -var NS = (navigator.appName == "Netscape"); -var VERSION = parseInt(navigator.appVersion); -if (VERSION > 3) { - document.write('<td nowrap="nowrap" width="40" align="center">'); - document.write(' <a class="dida" href="javascript:printit()">'); - document.write(' <img alt="Print this Page" src="../../skin/images/printer.gif" class="skin"><br>'); - document.write(' print</a>'); - document.write('</td>'); -} -</script><td nowrap="nowrap" width="40" align="center"><a class="dida" href="actions.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> - PDF</a></td> +</td><td nowrap="nowrap" width="40" align="center"><a class="dida" href="actions.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> + PDF</a></td> </tr> </table> <pre class="code">This is the proposal for a Action sitemap component. It shows the @@ -523,11 +529,14 @@ <!--================= start Footer ==================--> <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> -<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a><a href="/favicon.ico"></a></td> +<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a></td> </tr> <tr> -<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © - 1999-2004 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- +<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif"><a href="http://www.apache.org/licenses/"> + Copyright © 1999-2005 + The Apache Software Foundation.</a> + All rights reserved. + <script type="text/javascript" language="JavaScript"><!-- document.write(" - "+"Last Published: " + document.lastModified); // --></script></font></td> </tr> Modified: cocoon/site/site/2.1/userdocs/concepts/actions.pdf URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/actions.pdf?view=diff&r1=159368&r2=159369 ============================================================================== Binary files - no diff available. Modified: cocoon/site/site/2.1/userdocs/concepts/caching.html URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/caching.html?view=diff&r1=159368&r2=159369 ============================================================================== --- cocoon/site/site/2.1/userdocs/concepts/caching.html (original) +++ cocoon/site/site/2.1/userdocs/concepts/caching.html Tue Mar 29 05:47:29 2005 @@ -2,14 +2,18 @@ <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.6"> +<meta name="Forrest-skin-name" content="forrest-site"> <title>Caching</title> <link type="text/css" href="../../skin/page.css" rel="stylesheet"> +<link rel="shortcut icon" href="../../"> </head> <body text="#000000" bgcolor="#FFFFFF"> <!--================= start Navigation Path ==================--> <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> -<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> +<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><a href="http://www.apache.org/">apache</a> > <a href="http://cocoon.apache.org/">cocoon</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> </tr> <tr> <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> @@ -20,9 +24,9 @@ <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <!--================= start Group Logo ==================--> -<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> +<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> <!--================= end Group Logo ==================--> -<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif"></a></td> +<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif" title="Apache Cocoon"></a></td> <!--================= end Project Logo ==================--> <!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"> <form target="_blank" action="http://www.google.com/search" method="get"> @@ -31,13 +35,13 @@ <td colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> -<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="sitesearch" type="hidden"><input size="15" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> +<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="as_sitesearch" type="hidden"><input size="15" name="as_q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> <br> <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> - the Apache Cocoon site - - - </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> + the Apache Cocoon site + + + </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-left.gif"></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-right.gif"></td> @@ -45,7 +49,7 @@ </table> </form> </td> -<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<!--================= end Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td valign="bottom" bgcolor="#294563" colspan="2"> @@ -64,10 +68,10 @@ </table> </div> <!--================= end Tabs ==================--> -</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../../skin/images/spacer.gif" class="spacer"></td> +</td><td bgcolor="#294563"></td> </tr> <tr> -<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<td height="10" bgcolor="#4C6C8F" colspan="4"></td> </tr> </table> <!--================= end Banner ==================--> @@ -226,28 +230,8 @@ <tr> <td valign="middle"> <h1>Caching</h1> -</td><script language="Javascript" type="text/javascript"> -function printit() { -if (window.print) { - window.print() ; -} else { - var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; -document.body.insertAdjacentHTML('beforeEnd', WebBrowser); - WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; -} -} -</script><script language="Javascript" type="text/javascript"> -var NS = (navigator.appName == "Netscape"); -var VERSION = parseInt(navigator.appVersion); -if (VERSION > 3) { - document.write('<td nowrap="nowrap" width="40" align="center">'); - document.write(' <a class="dida" href="javascript:printit()">'); - document.write(' <img alt="Print this Page" src="../../skin/images/printer.gif" class="skin"><br>'); - document.write(' print</a>'); - document.write('</td>'); -} -</script><td nowrap="nowrap" width="40" align="center"><a class="dida" href="caching.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> - PDF</a></td> +</td><td nowrap="nowrap" width="40" align="center"><a class="dida" href="caching.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> + PDF</a></td> </tr> </table> <p class="type">Type: Technical document</p> @@ -281,6 +265,14 @@ <ul class="minitoc"> <li> <a href="#Configuration+of+Pipelines">Configuration of Pipelines</a> +<ul class="minitoc"> +<li> +<a href="#Expiration+of+Content">Expiration of Content</a> +</li> +<li> +<a href="#Response+Buffering">Response Buffering</a> +</li> +</ul> </li> <li> <a href="#Configuration+of+Caches">Configuration of Caches</a> @@ -298,17 +290,28 @@ </li> <li> <a href="#The+XMLSerializer%2FXMLDeserializer">The XMLSerializer/XMLDeserializer</a> +<ul class="minitoc"> +<li> +<a href="#org.apache.cocoon.components.sax.XMLByteStreamCompiler">org.apache.cocoon.components.sax.XMLByteStreamCompiler</a> +</li> +<li> +<a href="#org.apache.cocoon.components.sax.XMLByteStreamInterpreter">org.apache.cocoon.components.sax.XMLByteStreamInterpreter</a> +</li> +<li> +<a href="#Configuration-N10187">Configuration</a> </li> </ul> </li> </ul> - +</li> +</ul> + <a name="N1001C"></a><a name="Goal"></a> <h3>Goal</h3> <div style="margin-left: 0 ; border: 2px"> <p>This document explains the basic caching algorithm of Apache Cocoon.</p> </div> - + <a name="N10025"></a><a name="Overview"></a> <h3>Overview</h3> <div style="margin-left: 0 ; border: 2px"> @@ -319,13 +322,13 @@ how they can be configured and how to implement your own cacheable components. </p> </div> - + <a name="N10031"></a><a name="How+to+Configure+Caching"></a> <h3>How to Configure Caching</h3> <div style="margin-left: 0 ; border: 2px"> <p>The caching can be turned on and off on a per pipeline setting in the sitemap. - This means, for each <em>map:pipeline</em> section in a sitemap, it's possible to - turn on/off caching and configure the caching algorithm.</p> + This means, for each <em>map:pipeline</em> section in a sitemap, it's possible to + turn on/off caching and configure the caching algorithm.</p> <p>The following example shows how to turn on caching for a pipeline:</p> <pre class="code"> @@ -335,7 +338,7 @@ </pre> <p>If you know that it doesn't make sense to turn on caching for some of - your pipelines, put them together in their own section and use:</p> + your pipelines, put them together in their own section and use:</p> <pre class="code"> <map:pipeline type="noncaching"> @@ -361,8 +364,8 @@ that section. As with all components, you can define a default for all pipelines and override this whereever it makes sense.</p> </div> - -<a name="N1005B"></a><a name="The+Default+Caching+Algorithm"></a> + +<a name="N10058"></a><a name="The+Default+Caching+Algorithm"></a> <h3>The Default Caching Algorithm</h3> <div style="margin-left: 0 ; border: 2px"> <p>The default algorithm uses a very easy but effective approach @@ -372,7 +375,7 @@ supports caching. Several components, like the file generator or the xslt transformer support caching. However, dynamic components like the sql transformer or the cinclude transformer do not. Let's have a look at some examples:</p> -<a name="N10066"></a><a name="Simple+Examples"></a> +<a name="N10063"></a><a name="Simple+Examples"></a> <h4>Simple Examples</h4> <div style="margin-left: 0 ; border: 2px"> <p>If you have the following pipeline:</p> @@ -389,7 +392,7 @@ this pipeline is called, the cached content is get from the cache. If it is still valid, the cached content is directly send to the client.</p> </div> -<a name="N1007E"></a><a name="Complex+Example"></a> +<a name="N1007B"></a><a name="Complex+Example"></a> <h4>Complex Example</h4> <div style="margin-left: 0 ; border: 2px"> <p>Only part of the following pipeline is cached:</p> @@ -401,17 +404,17 @@ the filename to build the unique key. The cache validity object uses the last modification date of the xslt file.</p> <p>The sql transformer is not cacheable, so the caching algorithm stops - at this point although the last transformer is cacheable again.</p> + at this point although the last transformer is cacheable again.</p> <p>The cached response is the output of the first xslt transformer, so when the - next request comes in and the cached content is valid, the cached content is - directly feed into the sql transformer. The generator and the first - xslt transformer are not executed.</p> + next request comes in and the cached content is valid, the cached content is + directly feed into the sql transformer. The generator and the first + xslt transformer are not executed.</p> </div> -<a name="N10096"></a><a name="Making+Components+Cacheable"></a> +<a name="N10093"></a><a name="Making+Components+Cacheable"></a> <h4>Making Components Cacheable</h4> <div style="margin-left: 0 ; border: 2px"> <p>This chapter is only for developers of own sitemap components. It details what you have - to do when you want that your own sitemap components supports the caching.</p> + to do when you want that your own sitemap components supports the caching.</p> <p>Each sitemap component (generator or transformer) which might be cacheable must implement the CacheableProcessingComponent interface. When the pipeline is processed each sitemap component starting with @@ -454,28 +457,28 @@ the new validity objects in the cache.</p> </div> </div> - -<a name="N100CD"></a><a name="Configuration"></a> + +<a name="N100CA"></a><a name="Configuration"></a> <h3>Configuration</h3> <div style="margin-left: 0 ; border: 2px"> <p>The caching of Cocoon can be completely configured by different Avalon components. This chapter describes how the various components work together.</p> -<a name="N100D5"></a><a name="Configuration+of+Pipelines"></a> +<a name="N100D2"></a><a name="Configuration+of+Pipelines"></a> <h4>Configuration of Pipelines</h4> <div style="margin-left: 0 ; border: 2px"> <p>Each pipeline can be configured with a buffer size, and each - caching pipeline with the name of the Cache to use.</p> -<a name="N100DD"></a><a name="Expiration+of+Content"></a> + caching pipeline with the name of the Cache to use.</p> +<a name="N100DA"></a><a name="Expiration+of+Content"></a> <h5>Expiration of Content</h5> <div style="margin-left: 0 ; border: 2px"> <p> - Utilize the pipeline <span class="codefrag">expires</span> parameter to dramatically reduce - redundand requests. Even the most dynamic application pages have a - reasonable period of time during which they are static. - Even if a page doesn't change for just one minute, still use the - <span class="codefrag">expires</span> parameter. Here is an example: - </p> + Utilize the pipeline <span class="codefrag">expires</span> parameter to dramatically reduce + redundand requests. Even the most dynamic application pages have a + reasonable period of time during which they are static. + Even if a page doesn't change for just one minute, still use the + <span class="codefrag">expires</span> parameter. Here is an example: + </p> <pre class="code"> <map:pipeline> <map:parameter name="expires" value="access plus 1 minutes"/> @@ -483,9 +486,9 @@ </map:pipeline> </pre> <p> - The value of the parameter is in a format borrowed from the Apache HTTP module mod_expires. - Examples of other possible values are: - </p> + The value of the parameter is in a format borrowed from the Apache HTTP module mod_expires. + Examples of other possible values are: + </p> <pre class="code"> access plus 1 hours access plus 1 month @@ -494,28 +497,28 @@ access plus 1 month 15 days 2 hours </pre> <p> - Imagine 1'000 users hitting your web site at the same time. - Say that they are split into 5 groups, each of which has the same ISP. - Most ISPs use intermediate proxy servers to reduce traffic, hense - improving their end user experience and also reducing their operating costs. - In our case the 1'000 end user requests will result in just 5 requests to Cocoon. - </p> + Imagine 1'000 users hitting your web site at the same time. + Say that they are split into 5 groups, each of which has the same ISP. + Most ISPs use intermediate proxy servers to reduce traffic, hense + improving their end user experience and also reducing their operating costs. + In our case the 1'000 end user requests will result in just 5 requests to Cocoon. + </p> <p> - After the first request from each group reaches the server, the expires header will - be recognized by the proxy servers which will serve the following requests from their cache. - Keep in mind however that most proxies cache HTTP GET requests, but will not cache HTTP POST requests. - </p> + After the first request from each group reaches the server, the expires header will + be recognized by the proxy servers which will serve the following requests from their cache. + Keep in mind however that most proxies cache HTTP GET requests, but will not cache HTTP POST requests. + </p> <p> - To feel the difference, set an expires parameter on one of your pipelines and - load the page with the browser. Notice that after the first time, there are no - access records in the server logs until the specified time expires. - </p> + To feel the difference, set an expires parameter on one of your pipelines and + load the page with the browser. Notice that after the first time, there are no + access records in the server logs until the specified time expires. + </p> <p>This parameter has effect on all pipeline implementations, even on - the non caching ones. Remember, the caching does not take place in Cocoon, - it's either in a proxy inbetween Cocoon and the client or in the client - itself.</p> + the non caching ones. Remember, the caching does not take place in Cocoon, + it's either in a proxy inbetween Cocoon and the client or in the client + itself.</p> </div> -<a name="N10105"></a><a name="Response+Buffering"></a> +<a name="N10100"></a><a name="Response+Buffering"></a> <h5>Response Buffering</h5> <div style="margin-left: 0 ; border: 2px"> <p>Each pipeline can buffer the response, before it is send to the client. @@ -568,61 +571,61 @@ the sitemap namespace!</p> </div> </div> -<a name="N1013A"></a><a name="Configuration+of+Caches"></a> +<a name="N10133"></a><a name="Configuration+of+Caches"></a> <h4>Configuration of Caches</h4> <div style="margin-left: 0 ; border: 2px"> <p>Each cache can be configured with the store to use.</p> </div> -<a name="N10143"></a><a name="Configuration+of+Stores"></a> +<a name="N1013C"></a><a name="Configuration+of+Stores"></a> <h4>Configuration of Stores</h4> <div style="margin-left: 0 ; border: 2px"> <p>Have a look at the store configuration.</p> </div> </div> - -<a name="N1014D"></a><a name="Additional+Information+for+Developers"></a> + +<a name="N10146"></a><a name="Additional+Information+for+Developers"></a> <h3>Additional Information for Developers</h3> <div style="margin-left: 0 ; border: 2px"> -<a name="N10152"></a><a name="Java+APIs"></a> +<a name="N1014B"></a><a name="Java+APIs"></a> <h4>Java APIs</h4> <div style="margin-left: 0 ; border: 2px"> <p>For more information on the java apis refer directly to the javadocs of Cocoon.</p> <p>The most important packages are:</p> <ol> - + <li> <span class="codefrag">org.apache.cocoon.caching</span>: This package declares all interfaces for caching.</li> - + <li> <span class="codefrag">org.apache.cocoon.components.pipeline</span>: The interfaces and implementations of the pipelines.</li> - + </ol> </div> -<a name="N1016B"></a><a name="The+XMLSerializer%2FXMLDeserializer"></a> +<a name="N10164"></a><a name="The+XMLSerializer%2FXMLDeserializer"></a> <h4>The XMLSerializer/XMLDeserializer</h4> <div style="margin-left: 0 ; border: 2px"> <p>The caching of the sax events is implemented by two Avalon components: The XMLSerializer and the XMLDeserializer. The XMLSerializer gets sax events and creates an object which is used by the XMLDeserializer to recreate these sax events.</p> -<a name="N10173"></a><a name="org.apache.cocoon.components.sax.XMLByteStreamCompiler"></a> +<a name="N1016C"></a><a name="org.apache.cocoon.components.sax.XMLByteStreamCompiler"></a> <h5>org.apache.cocoon.components.sax.XMLByteStreamCompiler</h5> <div style="margin-left: 0 ; border: 2px"> <p>The <span class="codefrag">XMLByteStreamCompiler</span>compiles sax events into a byte stream.</p> </div> -<a name="N1017F"></a><a name="org.apache.cocoon.components.sax.XMLByteStreamInterpreter"></a> +<a name="N10178"></a><a name="org.apache.cocoon.components.sax.XMLByteStreamInterpreter"></a> <h5>org.apache.cocoon.components.sax.XMLByteStreamInterpreter</h5> <div style="margin-left: 0 ; border: 2px"> <p>The <span class="codefrag">XMLByteStreamInterpreter</span> is the counterpart of the - <span class="codefrag">XMLByteStreamCompiler</span>. It interprets the byte + <span class="codefrag">XMLByteStreamCompiler</span>. It interprets the byte stream and creates sax events.</p> </div> -<a name="N1018E"></a><a name="Configuration-N10187"></a> +<a name="N10187"></a><a name="Configuration-N10187"></a> <h5>Configuration</h5> <div style="margin-left: 0 ; border: 2px"> <p>The XMLSerializer and XMLDeserialzer are two Avalon components which - can be configured in the cocoon.xconf:</p> + can be configured in the cocoon.xconf:</p> <pre class="code"> <xml-serializer @@ -656,11 +659,14 @@ <!--================= start Footer ==================--> <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> -<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a><a href="/favicon.ico"></a></td> +<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a></td> </tr> <tr> -<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © - 1999-2004 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- +<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif"><a href="http://www.apache.org/licenses/"> + Copyright © 1999-2005 + The Apache Software Foundation.</a> + All rights reserved. + <script type="text/javascript" language="JavaScript"><!-- document.write(" - "+"Last Published: " + document.lastModified); // --></script></font></td> </tr> Modified: cocoon/site/site/2.1/userdocs/concepts/caching.pdf URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/caching.pdf?view=diff&r1=159368&r2=159369 ============================================================================== Binary files - no diff available. Modified: cocoon/site/site/2.1/userdocs/concepts/catalog.html URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/catalog.html?view=diff&r1=159368&r2=159369 ============================================================================== --- cocoon/site/site/2.1/userdocs/concepts/catalog.html (original) +++ cocoon/site/site/2.1/userdocs/concepts/catalog.html Tue Mar 29 05:47:29 2005 @@ -2,14 +2,18 @@ <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.6"> +<meta name="Forrest-skin-name" content="forrest-site"> <title>Entity resolution with catalogs</title> <link type="text/css" href="../../skin/page.css" rel="stylesheet"> +<link rel="shortcut icon" href="../../"> </head> <body text="#000000" bgcolor="#FFFFFF"> <!--================= start Navigation Path ==================--> <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> -<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> +<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><a href="http://www.apache.org/">apache</a> > <a href="http://cocoon.apache.org/">cocoon</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> </tr> <tr> <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> @@ -20,9 +24,9 @@ <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <!--================= start Group Logo ==================--> -<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> +<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> <!--================= end Group Logo ==================--> -<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif"></a></td> +<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif" title="Apache Cocoon"></a></td> <!--================= end Project Logo ==================--> <!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"> <form target="_blank" action="http://www.google.com/search" method="get"> @@ -31,13 +35,13 @@ <td colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> -<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="sitesearch" type="hidden"><input size="15" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> +<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="as_sitesearch" type="hidden"><input size="15" name="as_q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> <br> <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> - the Apache Cocoon site - - - </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> + the Apache Cocoon site + + + </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-left.gif"></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-right.gif"></td> @@ -45,7 +49,7 @@ </table> </form> </td> -<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<!--================= end Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td valign="bottom" bgcolor="#294563" colspan="2"> @@ -64,10 +68,10 @@ </table> </div> <!--================= end Tabs ==================--> -</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../../skin/images/spacer.gif" class="spacer"></td> +</td><td bgcolor="#294563"></td> </tr> <tr> -<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<td height="10" bgcolor="#4C6C8F" colspan="4"></td> </tr> </table> <!--================= end Banner ==================--> @@ -226,28 +230,8 @@ <tr> <td valign="middle"> <h1>Entity resolution with catalogs</h1> -</td><script language="Javascript" type="text/javascript"> -function printit() { -if (window.print) { - window.print() ; -} else { - var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; -document.body.insertAdjacentHTML('beforeEnd', WebBrowser); - WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; -} -} -</script><script language="Javascript" type="text/javascript"> -var NS = (navigator.appName == "Netscape"); -var VERSION = parseInt(navigator.appVersion); -if (VERSION > 3) { - document.write('<td nowrap="nowrap" width="40" align="center">'); - document.write(' <a class="dida" href="javascript:printit()">'); - document.write(' <img alt="Print this Page" src="../../skin/images/printer.gif" class="skin"><br>'); - document.write(' print</a>'); - document.write('</td>'); -} -</script><td nowrap="nowrap" width="40" align="center"><a class="dida" href="catalog.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> - PDF</a></td> +</td><td nowrap="nowrap" width="40" align="center"><a class="dida" href="catalog.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> + PDF</a></td> </tr> </table> <h3>Resolve external entities to local or other resources</h3> @@ -494,7 +478,7 @@ <a name="cat"></a> - <a name="N100BC"></a><a name="Catalogs+overview"></a> + <a name="N100BB"></a><a name="Catalogs+overview"></a> <h3>Catalogs overview</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -503,7 +487,7 @@ Here we provide an overview and show an example catalog which we will then use with the <a href="#demo2">Demonstration #2</a> below. </p> -<a name="N100C8"></a><a name="External+entity+declarations"></a> +<a name="N100C7"></a><a name="External+entity+declarations"></a> <h4>External entity declarations</h4> <div style="margin-left: 0 ; border: 2px"> <p> @@ -535,7 +519,7 @@ Use a catalog to make them so. </p> </div> -<a name="N100E8"></a><a name="Simple+example+catalog"></a> +<a name="N100E6"></a><a name="Simple+example+catalog"></a> <h4>Simple example catalog</h4> <div style="margin-left: 0 ; border: 2px"> <p> @@ -623,7 +607,7 @@ <a name="demo2"></a> - <a name="N1012A"></a><a name="Demonstration+%232"></a> + <a name="N10127"></a><a name="Demonstration+%232"></a> <h3>Demonstration #2</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -730,7 +714,7 @@ <a name="default"></a> - <a name="N10153"></a><a name="Default+configuration"></a> + <a name="N1014E"></a><a name="Default+configuration"></a> <h3>Default configuration</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -749,13 +733,13 @@ <a name="config"></a> - <a name="N10168"></a><a name="Local+configuration"></a> + <a name="N10163"></a><a name="Local+configuration"></a> <h3>Local configuration</h3> <div style="margin-left: 0 ; border: 2px"> <p>You can extend the default configuration to include local catalogs for site-specific requirements. This is achieved via various means. </p> -<a name="N10170"></a><a name="Using+cocoon.xconf"></a> +<a name="N1016B"></a><a name="Using+cocoon.xconf"></a> <h4>Using cocoon.xconf</h4> <div style="margin-left: 0 ; border: 2px"> <p>Parameters (properties) for the resolver component can be specified in the @@ -784,7 +768,7 @@ </ul> </div> -<a name="N1018E"></a><a name="Using+CatalogManager.properties"></a> +<a name="N10189"></a><a name="Using+CatalogManager.properties"></a> <h4>Using CatalogManager.properties</h4> <div style="margin-left: 0 ; border: 2px"> <p>An annotated <span class="codefrag">CatalogManager.properties</span> file is included @@ -813,7 +797,7 @@ configuration. </p> </div> -<a name="N101AF"></a><a name="Resolver+directives+inside+your+catalog+file"></a> +<a name="N101AA"></a><a name="Resolver+directives+inside+your+catalog+file"></a> <h4>Resolver directives inside your catalog file</h4> <div style="margin-left: 0 ; border: 2px"> <p> @@ -823,7 +807,7 @@ lead to <a href="#info">further information</a> about catalog usage. </p> </div> -<a name="N101BF"></a><a name="Example+local+configuration+for+Simplified+DocBook"></a> +<a name="N101BA"></a><a name="Example+local+configuration+for+Simplified+DocBook"></a> <h4>Example local configuration for Simplified DocBook</h4> <div style="margin-left: 0 ; border: 2px"> <p> @@ -881,7 +865,7 @@ <a name="imp"></a> - <a name="N101FD"></a><a name="Implementation+notes"></a> + <a name="N101F7"></a><a name="Implementation+notes"></a> <h3>Implementation notes</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -913,7 +897,7 @@ <a name="debug"></a> - <a name="N10239"></a><a name="Debugging+the+resolver+configuration"></a> + <a name="N10233"></a><a name="Debugging+the+resolver+configuration"></a> <h3>Debugging the resolver configuration</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -931,7 +915,7 @@ <a name="dev"></a> - <a name="N10248"></a><a name="Development+notes"></a> + <a name="N10242"></a><a name="Development+notes"></a> <h3>Development notes</h3> <div style="margin-left: 0 ; border: 2px"> <ul> @@ -946,7 +930,7 @@ <a name="notes"></a> - <a name="N1025B"></a><a name="Other+notes"></a> + <a name="N10255"></a><a name="Other+notes"></a> <h3>Other notes</h3> <div style="margin-left: 0 ; border: 2px"> <ul> @@ -977,7 +961,7 @@ <a name="summ"></a> - <a name="N10274"></a><a name="Summary"></a> + <a name="N1026E"></a><a name="Summary"></a> <h3>Summary</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -1003,7 +987,7 @@ <a name="info"></a> - <a name="N10286"></a><a name="Further+information"></a> + <a name="N10280"></a><a name="Further+information"></a> <h3>Further information</h3> <div style="margin-left: 0 ; border: 2px"> <p> @@ -1097,11 +1081,14 @@ <!--================= start Footer ==================--> <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> -<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a><a href="/favicon.ico"></a></td> +<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a></td> </tr> <tr> -<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © - 1999-2004 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- +<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif"><a href="http://www.apache.org/licenses/"> + Copyright © 1999-2005 + The Apache Software Foundation.</a> + All rights reserved. + <script type="text/javascript" language="JavaScript"><!-- document.write(" - "+"Last Published: " + document.lastModified); // --></script></font></td> </tr> Modified: cocoon/site/site/2.1/userdocs/concepts/catalog.pdf URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/catalog.pdf?view=diff&r1=159368&r2=159369 ============================================================================== Binary files - no diff available. Modified: cocoon/site/site/2.1/userdocs/concepts/databases.html URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/databases.html?view=diff&r1=159368&r2=159369 ============================================================================== --- cocoon/site/site/2.1/userdocs/concepts/databases.html (original) +++ cocoon/site/site/2.1/userdocs/concepts/databases.html Tue Mar 29 05:47:29 2005 @@ -2,14 +2,18 @@ <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.6"> +<meta name="Forrest-skin-name" content="forrest-site"> <title>Database Access</title> <link type="text/css" href="../../skin/page.css" rel="stylesheet"> +<link rel="shortcut icon" href="../../"> </head> <body text="#000000" bgcolor="#FFFFFF"> <!--================= start Navigation Path ==================--> <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> -<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> +<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><a href="http://www.apache.org/">apache</a> > <a href="http://cocoon.apache.org/">cocoon</a><script src="../../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> </tr> <tr> <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> @@ -20,9 +24,9 @@ <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <!--================= start Group Logo ==================--> -<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> +<td bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/cocoon-project-logo.png"></a></td> <!--================= end Group Logo ==================--> -<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img border="0" class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif"></a></td> +<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://cocoon.apache.org/"><img class="logoImage" alt="Apache Cocoon" src="../../images/project-logo.gif" title="Apache Cocoon"></a></td> <!--================= end Project Logo ==================--> <!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"> <form target="_blank" action="http://www.google.com/search" method="get"> @@ -31,13 +35,13 @@ <td colspan="3"><img height="10" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> -<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="sitesearch" type="hidden"><input size="15" name="q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> +<td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap"><input value="cocoon.apache.org" name="as_sitesearch" type="hidden"><input size="15" name="as_q" id="query" type="text"><img height="1" width="5" alt="" src="../../skin/images/spacer.gif" class="spacer"><input name="Search" value="Search" type="submit"> <br> <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> - the Apache Cocoon site - - - </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> + the Apache Cocoon site + + + </font></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-left.gif"></td><td><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"></td><td><img alt="" border="0" height="10" width="9" src="../../skin/images/search-right.gif"></td> @@ -45,7 +49,7 @@ </table> </form> </td> -<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<!--================= end Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> </tr> <tr> <td valign="bottom" bgcolor="#294563" colspan="2"> @@ -64,10 +68,10 @@ </table> </div> <!--================= end Tabs ==================--> -</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../../skin/images/spacer.gif" class="spacer"></td> +</td><td bgcolor="#294563"></td> </tr> <tr> -<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../../skin/images/spacer.gif" class="spacer"></td> +<td height="10" bgcolor="#4C6C8F" colspan="4"></td> </tr> </table> <!--================= end Banner ==================--> @@ -226,28 +230,8 @@ <tr> <td valign="middle"> <h1>Database Access</h1> -</td><script language="Javascript" type="text/javascript"> -function printit() { -if (window.print) { - window.print() ; -} else { - var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH="0" HEIGHT="0" CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; -document.body.insertAdjacentHTML('beforeEnd', WebBrowser); - WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; -} -} -</script><script language="Javascript" type="text/javascript"> -var NS = (navigator.appName == "Netscape"); -var VERSION = parseInt(navigator.appVersion); -if (VERSION > 3) { - document.write('<td nowrap="nowrap" width="40" align="center">'); - document.write(' <a class="dida" href="javascript:printit()">'); - document.write(' <img alt="Print this Page" src="../../skin/images/printer.gif" class="skin"><br>'); - document.write(' print</a>'); - document.write('</td>'); -} -</script><td nowrap="nowrap" width="40" align="center"><a class="dida" href="databases.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> - PDF</a></td> +</td><td nowrap="nowrap" width="40" align="center"><a class="dida" href="databases.pdf"><img alt="PDF" src="../../skin/images/pdfdoc.gif" class="skin"><br> + PDF</a></td> </tr> </table> <ul class="minitoc"> @@ -265,126 +249,126 @@ </li> </ul> - + <a name="N10014"></a><a name="Introduction"></a> <h3>Introduction</h3> <div style="margin-left: 0 ; border: 2px"> <p> - Publishing dynamic content or creating web-applications - eventually involves database access. Apache Cocoon - offers a number of different approaches to access - (object) relational and XML databases. This document provides - an overview of the different ways to access (object) - relational databases. - </p> -<p> - This document will not explain how to set up database - connectivity with Apache Cocoon. For this, see <a href="../../developing/datasources.html">here.</a> - + Publishing dynamic content or creating web-applications + eventually involves database access. Apache Cocoon + offers a number of different approaches to access + (object) relational and XML databases. This document provides + an overview of the different ways to access (object) + relational databases. + </p> +<p> + This document will not explain how to set up database + connectivity with Apache Cocoon. For this, see <a href="../../developing/datasources.html">here.</a> + </p> <p> - Basically, there are three different approaches available: - <a href="actions.html">Actions,</a> <a href="../xsp/logicsheet-concepts.html">logicsheets,</a> - and <a href="sitemap.html">transformers.</a> Each approach has - its pros and cons. - </p> + Basically, there are three different approaches available: + <a href="actions.html">Actions,</a> <a href="../xsp/logicsheet-concepts.html">logicsheets,</a> + and <a href="sitemap.html">transformers.</a> Each approach has + its pros and cons. + </p> </div> - + <a name="N10033"></a><a name="Actions+Approach"></a> <h3>Actions Approach</h3> <div style="margin-left: 0 ; border: 2px"> <p> - + <a href="actions.html">Actions</a> are code to be executed - during pipeline setup. The outcome of an action can change how a pipeline is - assembled. For example, a pipeline may produce an alternative - page to display upon failure of a particular database operation. - </p> -<p> - Actions are especially great for inserting, changing, or deleting data. - Employing the pipeline-switching features of actions will simplify your - pages. Such actions are concerned with only one view: either the success - or failure of an operation. - </p> -<p> - Actions can be useful, even when data is not provided by users. - For example, you could store tracking information in a database in - a central location without the need to modify every page. - </p> -<p> - Database actions can read and return data from a database. This is - useful when the pipeline assembly depends upon such data. It's also - useful when setting up an environment for XSP processing. - </p> -<p> - Once the database meta data is captured in an XML descriptor file, - making use of these actions is simply a matter of placing them in a pipeline. - This is a major advantage of the action approach. No programming is - required, not even SQL query writing. - </p> + during pipeline setup. The outcome of an action can change how a pipeline is + assembled. For example, a pipeline may produce an alternative + page to display upon failure of a particular database operation. + </p> +<p> + Actions are especially great for inserting, changing, or deleting data. + Employing the pipeline-switching features of actions will simplify your + pages. Such actions are concerned with only one view: either the success + or failure of an operation. + </p> +<p> + Actions can be useful, even when data is not provided by users. + For example, you could store tracking information in a database in + a central location without the need to modify every page. + </p> +<p> + Database actions can read and return data from a database. This is + useful when the pipeline assembly depends upon such data. It's also + useful when setting up an environment for XSP processing. + </p> +<p> + Once the database meta data is captured in an XML descriptor file, + making use of these actions is simply a matter of placing them in a pipeline. + This is a major advantage of the action approach. No programming is + required, not even SQL query writing. + </p> <p> - For more detailed information, read: <a href="../actions/database-actions.html">Database Actions</a>. - </p> + For more detailed information, read: <a href="../actions/database-actions.html">Database Actions</a>. + </p> </div> - + <a name="N10053"></a><a name="ESQL+Logicsheet+Approach"></a> <h3>ESQL Logicsheet Approach</h3> <div style="margin-left: 0 ; border: 2px"> <p> - The use of logicsheets is limited to XSPs. ESQL is currently available - for Java-based XSPs. Its interface is modeled largely on - JDBC. Thus, it is advantageous to be familiar with JDBC. - </p> -<p> - ESQL is great when reading data from a database. However, it is less attractive - to use when it has to react to operation failures. This is due to the fact - that it adds a layer of complexity to an XSP file, making it - more difficult to understand and maintain. - </p> -<p> - Complex layouts of the data are easy to achieve. ESQL allows - the arbitrary nesting of queries and connections. It also provides support for - stored procedures and complex data types. ESQL provides a means to - create a structured representation of the database data with a single tag. - This is useful when generating reports to use - with other XML-aware software or to be formated with XSL or CSS2. - XML data can be retrieved from the - database and included in the output. With some supported database - management systems, ESQL supports skipping part of the - resultset as well as limiting the result. - Given the full power of Java available within XSP, - any processing of the data is possible. - </p> + The use of logicsheets is limited to XSPs. ESQL is currently available + for Java-based XSPs. Its interface is modeled largely on + JDBC. Thus, it is advantageous to be familiar with JDBC. + </p> +<p> + ESQL is great when reading data from a database. However, it is less attractive + to use when it has to react to operation failures. This is due to the fact + that it adds a layer of complexity to an XSP file, making it + more difficult to understand and maintain. + </p> +<p> + Complex layouts of the data are easy to achieve. ESQL allows + the arbitrary nesting of queries and connections. It also provides support for + stored procedures and complex data types. ESQL provides a means to + create a structured representation of the database data with a single tag. + This is useful when generating reports to use + with other XML-aware software or to be formated with XSL or CSS2. + XML data can be retrieved from the + database and included in the output. With some supported database + management systems, ESQL supports skipping part of the + resultset as well as limiting the result. + Given the full power of Java available within XSP, + any processing of the data is possible. + </p> <p> - For more detailed information, read: <a href="../xsp/esql.html">ESQL Taglib</a>. - </p> + For more detailed information, read: <a href="../xsp/esql.html">ESQL Taglib</a>. + </p> </div> - + <a name="N10069"></a><a name="SQL+Transformer+Approach"></a> <h3>SQL Transformer Approach</h3> <div style="margin-left: 0 ; border: 2px"> <p> - An approach using the SQL transformer can be combined with any kind - of page. This will result in slightly cleaner pages as you don't need - some of the setup that an ESQL approach requires. - </p> -<p> - On the other hand, it is more or less impossible to react to operation - failures. This is due to the fact that the pipeline is already assembled - and the necessary logic to handle such failures is not - available inside the SQL transformer, unless of course, you are willing - to write a custom transformer. - Thus, the transformer approach is best for retrieving data. Creating - an XML representation of the query result is even simpler than when - using the ESQL logicsheet. The transformer also supports stored procedures. - No programming is required, apart from writing SQL. - </p> + An approach using the SQL transformer can be combined with any kind + of page. This will result in slightly cleaner pages as you don't need + some of the setup that an ESQL approach requires. + </p> +<p> + On the other hand, it is more or less impossible to react to operation + failures. This is due to the fact that the pipeline is already assembled + and the necessary logic to handle such failures is not + available inside the SQL transformer, unless of course, you are willing + to write a custom transformer. + Thus, the transformer approach is best for retrieving data. Creating + an XML representation of the query result is even simpler than when + using the ESQL logicsheet. The transformer also supports stored procedures. + No programming is required, apart from writing SQL. + </p> <p> - For more detailed information, read: <a href="../transformers/sql-transformer.html">SQL Transformer</a>. - </p> + For more detailed information, read: <a href="../transformers/sql-transformer.html">SQL Transformer</a>. + </p> </div> @@ -401,11 +385,14 @@ <!--================= start Footer ==================--> <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> <tr> -<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a><a href="/favicon.ico"></a></td> +<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../../skin/images/spacer.gif" class="spacer"><a href="../../skin/images/label.gif"></a><a href="../../skin/images/page.gif"></a><a href="../../skin/images/chapter.gif"></a><a href="../../skin/images/chapter_open.gif"></a><a href="../../skin/images/current.gif"></a></td> </tr> <tr> -<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © - 1999-2004 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- +<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif"><a href="http://www.apache.org/licenses/"> + Copyright © 1999-2005 + The Apache Software Foundation.</a> + All rights reserved. + <script type="text/javascript" language="JavaScript"><!-- document.write(" - "+"Last Published: " + document.lastModified); // --></script></font></td> </tr> Modified: cocoon/site/site/2.1/userdocs/concepts/databases.pdf URL: http://svn.apache.org/viewcvs/cocoon/site/site/2.1/userdocs/concepts/databases.pdf?view=diff&r1=159368&r2=159369 ============================================================================== Binary files - no diff available.