You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by bu...@apache.org on 2012/10/31 20:57:55 UTC

svn commit: r836771 [12/14] - in /websites/staging/cayenne/trunk/content: ./ doc12/ doc12/grammar/ doc20/ doc30/

Modified: websites/staging/cayenne/trunk/content/doc30/nested-contexts.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/nested-contexts.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/nested-contexts.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>One of the goals of the ObjectContext is to provide an isolated area where local object changes can be performed without affecting other similar areas or the underlying storage. At some point in time users would either commit changes to the underlying storage or undo them (roll them back). </P>
 
 <P>If a DataContext is directly attached to the DataDomain, a call to <TT>DataContext.commitChanges()</TT> results in changes written to the database. On the other hand if DataContext's direct parent in the access stack is not a DataDomain, but another DataContext, changes can be saved to the parent without saving them to the database. Such child context is often called &quot;nested&quot;.</P>
@@ -66,8 +78,11 @@ ObjectContext child = context.createChil
 <P>All cascading operations (such as a select query or a cascading update) initiated by a nested context will have to travel through the stack of parent contexts, incurring certain delay at each stack level. The delay is due to the fact that each context has to update its own objects during most operations. So nesting should only be used when application specifics require to do so. Also nesting of more than a few levels should be avoided.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/new-system.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/new-system.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/new-system.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <H3><A name="NewSystem-NewSystem"></A>New System</H3>
 
@@ -27,8 +39,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/null-handling.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/null-handling.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/null-handling.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>Handling of Java nulls as operands is no different from normal values. Instead of using special conditional operators, like SQL does, &quot;equal to&quot; and &quot;not equal to&quot; expressions can be used directly with null values. It is up to Cayenne to translate expressions with nulls to the valid SQL.</P>
 
 <P>For example:</P>
@@ -31,8 +43,11 @@
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/objectcontext-memory-management.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/objectcontext-memory-management.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/objectcontext-memory-management.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="ObjectContextMemoryManagement-MemoryManagementStrategy"></A>Memory Management Strategy</H2>
 
 <P>Since Cayenne 3.0, by default DataContext uses weak references to store registered objects. So objects are allowed to be garbage collected by the VM if they are not referenced elsewhere in the application. &quot;Elsewhere&quot; usually means one of the following:</P>
@@ -38,8 +50,11 @@
 <P><EM>TODO: an example, and figure out how to make it a parameter in the Modeler</EM></P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/objectcontext.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/objectcontext.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/objectcontext.html Wed Oct 31 19:57:39 2012
@@ -11,14 +11,29 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P><TT>org.apache.cayenne.ObjectContext</TT> is an interface that defines API for the application interaction with Cayenne. Two most notable implementors are <A href="datacontext.html" title="DataContext">DataContext</A>, used in most Cayenne applications, and <TT>CayenneContext</TT> used on the <A href="remote-object-persistence-coding-client.html" title="Remote Object Persistence Coding Client">remote client</A>. </P>
 
 <P>ObjectContext accesses the underlying persistence stack via a parent <A href="datachannel.html" title="DataChannel">DataChannel</A>. ObjectContexts that support multiple levels of nesting (such as DataContext) themselves implement a <TT>org.apache.cayenne.DataChannel</TT> interface.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/objectidquery.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/objectidquery.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/objectidquery.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P><TT>ObjectIdQuery</TT> is a query that selects objects matching an ObjectId. Considering that ObjectId must be unique, the result of such query is a single object or no objects.</P>
 
 <P>Normally if you need to find an object that matches a certain primary key value, you would use <TT>DataObjectUtils.objectForPK(DataContext,String,int)</TT>. This method will look up an object in the cache, and only run a query if it is not yet cached. <TT>ObjectIdQuery</TT> gives the user more control of the object caching behavior. It supports three possible caching policies:</P>
@@ -69,8 +81,11 @@ Artist object = (Artist) DataObjectUtils
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/obtaining-datacontext.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/obtaining-datacontext.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/obtaining-datacontext.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>Depending on deployment environment and application needs, Cayenne can be configured in a few different ways to make DataContext instances available. This is discussed in detail in deployment chapter. In this chapter we assume a properly deployed application and will concentrate on how to obtain a DataContext for the database access. The following are the most common ways to achieve that:</P>
 
 <H3><A name="ObtainingDataContext-CreatingDataContextontheSpot"></A>Creating DataContext on the Spot</H3>
@@ -83,8 +95,11 @@ DataContext context = DataContext.create
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/orm-case-study.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/orm-case-study.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/orm-case-study.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="ORMCaseStudy-ORMCaseStudy"></A>ORM Case Study</H2>
 
 <P>This chapter shows how ORM (Object Relational Modeling) approach should be chosen based on the project requirements and other factors. It contains links to technical aspects of modeling that are discussed elsewhere. A few scenarios are shown below that describe the most common cases that a development team may encounter on a typical O/R project. Lets assume an imaginary company called &quot;Some Company&quot; that sells services to consumers as its main business, but also sells consumer products, and works with business customers. There are a number of project teams working on a set of Object/Relational projects. </P>
@@ -39,8 +51,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/overview.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/overview.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/overview.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="Overview-Introduction"></A>Introduction</H2>
 
 <P>Cayenne is a mature, powerful, full-featured open source Object/Relational Mapping (ORM) framework. Cayenne is written in Java and is intended for Java developers working with relational databases. Cayenne has been successfully used in production environment in a wide range of applications.</P>
@@ -48,8 +60,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/paginated-queries.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/paginated-queries.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/paginated-queries.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>Another common situation found in interactive applications is when it is needed to fetch a large number of rows, and at the same time only a small subset of objects is accessed directly. An example of such application would be a search page. User would like to see how many total results exist that match a certain criteria, but she will only look at a few pages of results out of possibly hundreds or thousands. It will be extremely inefficient to fetch all objects in the memory.</P>
 
 <P>A solution offered by Cayenne is &quot;paginated&quot; queries. A user can set a size of a &quot;page&quot; of a select query. If page size is greater than zero, on query execution Cayenne will only fetch the first &quot;page&quot; as DataObjects. For the rest of the result set, only primary keys are read. When a user accesses an object that has not been resolved yet, the whole page containing this object will be resolved all at once. Most important, this happens totally transparent to the user.</P>
@@ -57,8 +69,11 @@ q.setPageSize(50);
 <DIV class="panelMacro"><TABLE class="tipMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD><B>Combining data rows and paginated queries</B><BR>Cayenne supports combining both performance optimizations in the same query - fetching data rows (see previous chapters) and paginated queries. So if users work with tabular data and don't care much about real objects, combining the two approaches would improve speed and memory use even more.</TD></TR></TABLE></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/parameterized-queries.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/parameterized-queries.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/parameterized-queries.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>SelectQuery objects can be rather complex. They may contain long qualifiers and lots of tuning parameters. Parameterized Queries feature addresses reusability of complex queries. With this feature, for each group of queries that differ only in the values used in the qualifier, a developer may create a single shared &quot;prototype&quot; or &quot;template&quot; query, and use it later as a factory for other queries. All settings configured in the prototype object will be passed to the final queries. Qualifier of the prototype query may use named parameters that are substituted for real values when a final query is created from the prototype.</P>
 <DIV class="panelMacro"><TABLE class="infoMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>&quot;Prototype&quot; queries are normally created in CayenneModeler and stored in the DataMap XML file. &quot;Queries Stored in DataMap&quot; chapter describes how to use such templates. This chapter shows how to create them on the spot using the API calls.</TD></TR></TABLE></DIV>
 
@@ -94,8 +106,11 @@ SelectQuery query2 = proto.queryWithPara
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/path-expressions.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/path-expressions.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/path-expressions.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>Before we start discussing how to build expressions, it is important to understand one group of expressions widely used in Cayenne: <EM>path expressions</EM>. There are two types of path expressions: object path used to navigate graphs of Java objects that follow Java Bean property naming conventions and database path used to navigate the database schema. General form of path expressions is the following:</P>
 
 <DIV class="preformatted panel" style="border-width: 1px;"><DIV class="preformattedContent panelContent">
@@ -65,8 +77,11 @@
 <P>As described in the following chapters a path expression is usually matched against some value (see for example <A href="expression-factory-utilities.html" title="Expression Factory Utilities">ExpressionFactory API</A> - the first argument to each method is a path, and a second - an object value that is matched against the path). A type of such value must be compatible with the type of the property pointed to by the path. E.g. <TT>toArtist.artistName</TT> can only be matched against a <TT>String</TT>, and <TT>toArtist</TT> - against instances of <TT>Artist</TT>.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/performance-tuning.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/performance-tuning.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/performance-tuning.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="PerformanceTuning-PerformanceTuning"></A>Performance Tuning</H2>
 <P>Most performance problems in database applications, including those using ORM, are related to the inefficient queries and/or large volumes of data in the database. Here is a few common issues that a typical application may run into:</P>
 
@@ -37,8 +49,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/persistent-object-lifecycle.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/persistent-object-lifecycle.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/persistent-object-lifecycle.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>A lifecycle of a persistent object can be represented as a number of states and transitions between them. These states are formally defined as &quot;int&quot; constants in <TT>org.apache.cayenne.PersistenceState</TT> class. Transitions between states (see the diagram below) occur in response to the application interacting with either persistent objects or Cayenne context. Whenever a transition occurs, Cayenne automatically updates &quot;persistenceState&quot; property of all affected objects by calling <TT>setPersistenceState()</TT>.</P>
 
 <TABLE class="sectionMacro" border="0" cellpadding="5" cellspacing="0" width="100%"><TBODY><TR>
@@ -67,8 +79,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/preferences-panel.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/preferences-panel.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/preferences-panel.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="PreferencesPanel-PreferencesPanel"></A>Preferences Panel</H2>
 <P>CayenneModeler relies on a number of user-specific preferences to operate in a user-friendly manner. Some preferences are determined automatically behind the scenes (such as preferred window size or last visited directory), some can be configured by users via &quot;Preferences Panel&quot; described in this chapter.</P>
 
@@ -36,8 +48,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/prefetching.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/prefetching.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/prefetching.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H3><A name="Prefetching-IntroductiontoPrefetching"></A>Introduction to Prefetching</H3>
 
 <P>Prefetching is a performance optimization technique that allows to bring back more than one type of objects in a single query. Prefetches are configured in terms of relationship paths from the query root entity to the &quot;prefetched&quot; entity. E.g.:</P>
@@ -120,8 +132,11 @@ context.performQuery(query);
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/primary-key-generation.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/primary-key-generation.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/primary-key-generation.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="PrimaryKeyGeneration-PrimaryKeyGeneration"></A>Primary Key Generation</H2>
 <P>Depending on the type of persistent objects and the database design, primary key values can be handled in a few different ways. A decision to use one or another technique will affect how the mapping is done. Here is a summary of possible scenarios. Each one is described below in details.</P>
 <DIV class="table-wrap">
@@ -90,8 +102,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/qualifier-expressions.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/qualifier-expressions.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/qualifier-expressions.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>This chapter is dedicated to the use of expressions as qualifiers in SelectQuery. Expressions in general are discussed <A href="expressions.html" title="Expressions">here</A>.</P>
 
 <H3><A name="QualifierExpressions-BuildingQualifier"></A>Building Qualifier </H3>
@@ -33,8 +45,11 @@
 <P>Each <A href="path-expressions.html" title="Path Expressions">path expression</A> in a qualifier results in a SQL JOIN in a generated SQL. By default all joins are INNER joins. If LEFT OUTER joins are desirable, users can specify them with a plus sign (&quot;&#43;&quot;) after each affected relationship segment in a path expression. E.g. a path like <TT>&quot;paintingArray&#43;.name&quot;</TT> would result in a LEFT OUTER JOIN for an Artist SelectQuery, ensuring that artists without joins are also included in the query result.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/queries-stored-in-datamap.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/queries-stored-in-datamap.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/queries-stored-in-datamap.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <P>To facilitate reuse of queries users can assign symbolic names to them and store such named queries in a DataMap. Normally this is done by <A href="modeling-queries.html" title="Modeling Queries">creating a query in CayenneModeler</A>. Storing queries in a DataMap reduces the amount of code and speeds up query creation process.</P>
 
@@ -43,8 +55,11 @@ SelectQuery query = prototype.queryWithP
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/queries.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/queries.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/queries.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="Queries-Queries"></A>Queries</H2>
 <P>Queries are Cayenne abstraction for communicating with an external data storage. Queries are Java objects that are generally independent from the SQL dialect used by the target database. Cayenne includes a number of standard queries in the <TT>org.apache.cayenne.query</TT> package. Many of them are only used internally. Here we describe the queries that can be useful in the application.</P>
 
@@ -58,8 +70,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/query-result-caching.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/query-result-caching.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/query-result-caching.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="QueryResultCaching-QueryResultCaching"></A>Query Result Caching</H2>
 
 <P>In addition to caching individual objects, Cayenne can cache query results. Just like with object cache, the actual caching happens behind the scenes, so users only need to declare the desired cache policy, either in the code or via the Modeler:</P>
@@ -120,8 +132,11 @@ cayenne.group.artists.cron = 10 1 * * *
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/querychain.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/querychain.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/querychain.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <P><TT>QueryChain</TT>, as the name implies, is a Query that is itself a collection of other queries. It simplifies an execution of multiple queries in a single batch. E.g.:</P>
 <DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent panelContent">
@@ -26,8 +38,11 @@ context.performNonSelectingQuery(query);
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/relationshipquery.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/relationshipquery.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/relationshipquery.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <P><TT>RelationshipQuery</TT> is used by Cayenne internally to fetch object(s) related to a single given object via a mapped ObjRelationship. In some cases the query can be used directly in the application, e.g. if we want to refresh related objects.</P>
 
@@ -22,8 +34,11 @@ List paintings = context.performQuery(qu
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/relationships.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/relationships.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/relationships.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>Relationships are special object properties that reference other &quot;related&quot; objects. Semantically there are two types of relationships - to-one pointing to just a single DataObjects (e.g. Painting.toArtist), and to-many pointing to a collection of Persistent objects of the some distinct base type (e.g. Artist.paintingArray).</P>
 
 <H3><A name="Relationships-ToOneRelationships"></A>To-One Relationships</H3>
@@ -126,8 +138,11 @@ girl.setName(<SPAN class="code-quote">&q
 <P>Performance-wise, Maps have the most overhead of all collection options. Sets are somewhat slower than Lists or Collections (Collections are implemented as Lists internally). Considering that Cayenne Lists are internally managed as ordered Sets, and are not allowed to contain the same object more than once, you may want to avoid modeling relationships as Sets at all, unless the object public interface requirements warrant that.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-client-deployment.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-client-deployment.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-client-deployment.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <P>Any J2SE or J2EE application can act as a CWS Client, so its structure and packaging depends on the type of application. Here is a few general hints related to Cayenne:</P>
 
@@ -56,8 +68,11 @@
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-client.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-client.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-client.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <H3><A name="RemoteObjectPersistenceCodingClient-ConnectingtotheService"></A>Connecting to the Service</H3>
 
@@ -78,8 +90,11 @@ ObjectContext context = <SPAN class="cod
 </DIV></DIV>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-server.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-server.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-coding-server.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceCodingServer-RemoteObjectPersistenceCodingServer"></A>Remote Object Persistence Coding Server</H2>
 
 <P>In the simplest case, there is no custom code on the server. The server would only contain Cayenne mapping files, persistent classes and web.xml descriptor <A href="remote-object-persistence-cws-deployment.html" title="Remote Object Persistence CWS Deployment">specifying deployment parameters</A> of the service. Customization is done in one of the following ways:</P>
@@ -32,8 +44,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-comparison.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-comparison.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-comparison.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <P>TBD...</P>
 
@@ -22,8 +34,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-customization.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-customization.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-customization.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceCustomization-WorkingwithCustomPropertyTypes"></A>Working with Custom Property Types</H2>
 
 <P>In addition to configuring <A href="extended-types.html" title="Extended Types">Extended Types</A> as described in Cayenne Guide, users must pay attention to serialization of the custom property types. A custom class must be serializable so that it can be passed between the client and the server. Cayenne uses a library called Hessian to perform the serialization of objects. Mostly it will just work with custom extended types, but there are some important requirements:</P>
@@ -47,8 +59,11 @@
 <P>Instead of all the above you may be able to register an additional SerializerFactory to handle your extended type by using <TT>com.caucho.hessian.io.SerializerFactory.addFactory((AbstractSerializerFactory factory)</TT>. This will give you complete control over the process.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-cws-deployment.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-cws-deployment.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-cws-deployment.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceCWSDeployment-CWSDeploymentwithHessian"></A>CWS Deployment with Hessian</H2>
 
 <P><A href="http://www.caucho.com/hessian/" class="external-link" rel="nofollow">Hessian-based</A> Cayenne Web Service is a regular Java web application that contains Cayenne mapping file and persistent objects. What makes it a web service is a HessianServlet mapped via web.xml that handles requests from Cayenne Client Tier applications.</P>
@@ -120,8 +132,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-features.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-features.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-features.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	
 <H3><A name="RemoteObjectPersistenceFeatures-FeaturesofRemoteObjectPersistenceTechnology"></A>Features of Remote Object Persistence Technology</H3>
 
@@ -31,8 +43,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-guide.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-guide.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-guide.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceGuide-RemoteObjectPersistenceGuide"></A>Remote Object Persistence Guide</H2>
 
 
@@ -32,8 +44,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-installation.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-installation.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-installation.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H3><A name="RemoteObjectPersistenceInstallation-InstallationandSystemRequirements"></A>Installation and System Requirements</H3>
 
 <P>Remote object persistence support is included in the standard Cayenne distribution. System requirements are the same as for the rest of Cayenne, and there is no special installation procedure. Check the <A href="installation.html" title="Installation">Installation</A> chapter of Cayenne User Guide for details. </P>
@@ -41,8 +53,11 @@
 <DIV class="panelMacro"><TABLE class="noteMacro"><COLGROUP><COL width="24"><COL></COLGROUP><TR><TD valign="top"><IMG src="https://cwiki.apache.org/confluence/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD><B>Hessian Versions</B><BR>Cayenne 3.0 works correctly with Hessian 3.0.x and 3.1.x. Hessian 4.0.2 has a <A href="http://maillist.caucho.com/pipermail/hessian-interest/2009-December/000842.html" class="external-link" rel="nofollow">bug</A> that stops ROP. Hessian 3.2.x is binary incompatible with other versions and cannot be used.</TD></TR></TABLE></DIV> 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-introduction.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-introduction.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-introduction.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>&quot;Remote Object Persistence&quot; is a low-overhead web services-based technology that provides lightweight object persistence and query functionality to 'remote' applications. In other words it provides familiar Cayenne API to applications that do not have direct access to the database. Instead such applications would access Cayenne Web Service (CWS). A single abstract data model (expressed as Cayenne XML DataMap) is used on the server and on the client, while execution logic can be partitioned between the tiers.</P>
 
 <P>The following picture compares a regular Cayenne web application and a rich client application that uses remote object persistence technology:</P>
@@ -28,8 +40,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-lifecycle-callbacks.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-lifecycle-callbacks.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-lifecycle-callbacks.html Wed Oct 31 19:57:39 2012
@@ -11,14 +11,29 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P><EM>(since 3.0)</EM></P>
 
 <P>The easiest way to add server-side functionality to the web service is by registering <A href="lifecycle-callbacks.html" title="Lifecycle Callbacks">persistent object lifecycle callbacks</A>. Callbacks are enabled by default, so nothing special needs to be done beyond setting up the listeners.</P>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-limitations.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-limitations.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-limitations.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>This page can be viewed as a Remote Object Persistence TODO. The following things are pending improvement:</P>
 
 <UL>
@@ -25,8 +37,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-quick-start.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-quick-start.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-quick-start.html Wed Oct 31 19:57:39 2012
@@ -11,11 +11,26 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-security.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-security.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-security.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H3><A name="RemoteObjectPersistenceSecurity-SecuringCayenneWebServiceAccess"></A>Securing Cayenne Web Service Access</H3>
 
 <UL>
@@ -22,8 +34,11 @@
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-authentication.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-authentication.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-authentication.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>You probably don't want everybody in the world to connect to your service and access (and update!) arbitrary data in the database. The first step in securing Cayenne service is implementing client authentication. The easiest way to do it is to delegate the authentication task to the web container that is running the service. HessianConnection used in the previous chapter supports BASIC authentication on the client side, so we'll demonstrate how to set it up here.</P>
 
 <H2><A name="RemoteObjectPersistenceTutorialAuthentication-SecuringROPServerApplication"></A>Securing ROP Server Application</H2>
@@ -131,8 +143,11 @@ Caused by: java.net.HttpRetryException: 
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-code.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-code.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-code.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceTutorialClientCode-StartingCommandLineClient"></A>Starting Command Line Client</H2>
 
 <P>One of the benefits of ROP is that the client code is no different from the server code - it uses the same ObjectContext interface for access, same query and commit API. So the code below will be similar to the code presented in the first <A href="tutorial-objectcontext.html" title="Tutorial ObjectContext">Cayenne tutorial</A>, although with a few ROP-specific parts required to bootstrap the ObjectContext.</P>
@@ -176,8 +188,11 @@ INFO: +++ transaction committed.</PRE>
 
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-project.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-project.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-client-project.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<H2><A name="RemoteObjectPersistenceTutorialClientProject-CreateanROPClientProjectinEclipse"></A>Create an ROP Client Project in Eclipse</H2>
 
 <P>Creation of a new Eclipse project has been discussed in some details <A href="tutorial-starting-project.html" title="Tutorial Starting Project">here</A>, so we will omit the screenshots for the common parts.</P>
@@ -92,8 +104,11 @@
 <HR>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Modified: websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-prerequisites.html
==============================================================================
--- websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-prerequisites.html (original)
+++ websites/staging/cayenne/trunk/content/doc30/remote-object-persistence-tutorial-prerequisites.html Wed Oct 31 19:57:39 2012
@@ -11,7 +11,19 @@
 <script type="text/javascript" src="/js/scripts.js"></script>
 </head>
 <body>
+<div id="wrap"><div id="wrap-inner">
 
+<div id="header">
+	<h1><a href="/" title="Return to Apache Cayenne home"><span>The Apache Cayenne Project</span></a></h1>
+	<h2><a href="http://www.apache.org" title="The Apache Software Foundation"><span>The Apache Software Foundation</span></a></h2>
+</div>
+
+<div id="container">
+
+ 
+
+<hr>
+<div id="content">
        	<P>This tutorial starts where the <A href="tutorial.html" title="Tutorial">Cayenne Tutorial</A> left off. If you have gone through the previous tutorial, and have the &quot;tutorial&quot; project open in Eclipse, you can go directly to the <A href="remote-object-persistence-tutorial-client-project.html" title="Remote Object Persistence Tutorial Client Project">next step</A>. If not, here are the compressed instructions to prepare you for work with ROP:</P>
 
 <UL>
@@ -30,8 +42,11 @@
 <HR>
 
        <hr>
-       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation.
+       <p id="footer">Copyright &#169; 2001-2012 Apache Software Foundation. Apache Cayenne, Cayenne, Apache, the Apache feather logo, and the Apache Cayenne project logo are trademarks of The Apache Software Foundation
+</div>
+</div>
 
+</div></div>
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));