Author: mcaisse Date: Mon Jan 21 04:23:17 2013 New Revision: 847423 Log: Changed page title, added social media links.
Modified: websites/production/db/content/jdo/attach_detach.html websites/production/db/content/jdo/class_types.html websites/production/db/content/jdo/dependencies.html websites/production/db/content/jdo/downloads.html websites/production/db/content/jdo/enhancement.html websites/production/db/content/jdo/exceptions.html websites/production/db/content/jdo/extents.html websites/production/db/content/jdo/faq.html websites/production/db/content/jdo/fetchgroups.html websites/production/db/content/jdo/field_types.html websites/production/db/content/jdo/get-involved.html websites/production/db/content/jdo/glossary.html websites/production/db/content/jdo/guides.html websites/production/db/content/jdo/guides/maven-jdo.html websites/production/db/content/jdo/guides/replication.html websites/production/db/content/jdo/impls.html websites/production/db/content/jdo/index.html websites/production/db/content/jdo/issuetracking.html websites/production/db/content/jdo/javadoc.html websites/production/db/content/jdo/jdo_3_0_overview.html websites/production/db/content/jdo/jdo_dtd.html websites/production/db/content/jdo/jdo_v_jpa.html websites/production/db/content/jdo/jdo_v_jpa_api.html websites/production/db/content/jdo/jdo_v_jpa_orm.html websites/production/db/content/jdo/jdocentral.html websites/production/db/content/jdo/jdoconfig_dtd.html websites/production/db/content/jdo/jdohelper.html websites/production/db/content/jdo/jdoql.html websites/production/db/content/jdo/jdoql_methods.html websites/production/db/content/jdo/jdoql_result.html websites/production/db/content/jdo/jdoquery_dtd.html websites/production/db/content/jdo/mail-lists.html websites/production/db/content/jdo/metadata.html websites/production/db/content/jdo/newshistory.html websites/production/db/content/jdo/object_retrieval.html websites/production/db/content/jdo/orm_dtd.html websites/production/db/content/jdo/pm.html websites/production/db/content/jdo/pmf.html websites/production/db/content/jdo/references.html websites/production/db/content/jdo/releases/release-2.0-beta.html websites/production/db/content/jdo/releases/release-2.0-rc1.html websites/production/db/content/jdo/releases/release-2.0.html websites/production/db/content/jdo/releases/release-2.1.1.html websites/production/db/content/jdo/releases/release-2.1.html websites/production/db/content/jdo/releases/release-2.2.html websites/production/db/content/jdo/releases/release-2.3-ea.html websites/production/db/content/jdo/releases/release-3.0.1.html websites/production/db/content/jdo/releases/release-3.0.html websites/production/db/content/jdo/roadmap.html websites/production/db/content/jdo/specifications.html websites/production/db/content/jdo/state_transition.html websites/production/db/content/jdo/svn.html websites/production/db/content/jdo/tck.html websites/production/db/content/jdo/team-list.html websites/production/db/content/jdo/transactions.html websites/production/db/content/jdo/why_jdo.html Modified: websites/production/db/content/jdo/attach_detach.html ============================================================================== --- websites/production/db/content/jdo/attach_detach.html (original) +++ websites/production/db/content/jdo/attach_detach.html Mon Jan 21 04:23:17 2013 @@ -1,9 +1,9 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 16, 2013 --> +<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 20, 2013 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <title>Maven - + <title>JDO - Attach/Detach</title> <style type="text/css" media="all"> @import url("./css/maven-base.css"); @@ -11,7 +11,7 @@ @import url("./css/site.css"); </style> <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> - <meta name="Date-Revision-yyyymmdd" content="20130116" /> + <meta name="Date-Revision-yyyymmdd" content="20130120" /> <meta http-equiv="Content-Language" content="en" /> </head> @@ -30,7 +30,13 @@ <div id="breadcrumbs"> - <div class="xright"> <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> + <div class="xright"> <a href="https://www.facebook.com/JavaDataObjects" class="externalLink" title="Facebook">Facebook</a> + | + <a href="https://twitter.com/JavaDataObjects" class="externalLink" title="Twitter">Twitter</a> + | + <a href="https://plus.google.com/106584233526334524963" class="externalLink" title="Google+">Google+</a> + | + <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> | <a href="http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10630" class="externalLink" title="Issue Tracker">Issue Tracker</a> | @@ -203,235 +209,235 @@ </div> <div id="bodyColumn"> <div id="contentBox"> - - - <div class="section"><h2>JDO Attach/Detach<a name="JDO_AttachDetach"></a></h2> - <p> - JDO provides an interface to the persistence of objects. JDO 1.0 doesn't provide a way of taking - an object that was just persisted and just work on it and update the persisted object later. - The user has to copy the fields manually and copy them back to the persisted object later. - JDO 2.0 introduces a new way of handling this situation, by <b>detaching</b> an object from the - persistence graph, allowing it to be worked on in the users application. It can then be - <b>attached</b> to the persistence graph later. - Please refer to <a href="state_transition.html">Object Lifecycle</a> for where this fits in. - The first thing to do to use a class with this facility is to tag it as "detachable". - This is done by adding the attribute - </p> - <div class="source"><pre><class name="MyClass" detachable="true"></pre></div> - <p> - This acts as an instruction to the <a href="enhancement.html">enhancement process</a> to add - methods necessary to utilise the attach/detach process. - </p> - - <p> - The following code fragment highlights how to use the attach/detach mechanism - </p> - <div class="source"><pre> -Product working_product=null; -Transaction tx=pm.currentTransaction(); -try -{ - tx.begin(); - - Product prod=new Product(name,description,price); - pm.makePersistent(prod); - - // Detach the product for use - working_product = (Product)pm.detachCopy(prod); - - tx.commit(); -} -catch (Exception e) -{ - // Handle the exception -} -finally -{ - if (tx.isActive()) - { - tx.rollback(); - } -} - -// Work on the detached object in our application -working_product.setPrice(new_price); - -... - -// Reattach the updated object -tx = pm.currentTransaction(); -try -{ - tx.begin(); - - Product attached_product = pm.makePersistent(working_product); - - tx.commit(); -} -catch (Exception e) -{ - // Handle the exception -} -finally -{ - if (tx.isActive()) - { - tx.rollback(); - } -}</pre></div> - <p> - So we now don't need to do any manual copying of object fields just using a simple call to - detach the object, and then attach it again later. Here are a few things to note with - <i>attach/detach</i> :- - </p> - <ul> - <li>Calling <i>detachCopy</i> on an object that is not detachable will return a <b>transient</b> - instance that is a COPY of the original, so use the COPY thereafter.</li> - <li>Calling <i>detachCopy</i> on an object that is detachable will return a <b>detached</b> - instance that is a COPY of the original, so use this COPY thereafter</li> - <li>A <i>detached</i> object retain the id of its datastore entity. Detached objects should be used - where you want to update the objects and attach them later (updating the associated object in the - datastore. If you want to create copies of the objects in the datastore with their own identities - you should use <i>makeTransient</i> instead of <i>detachCopy</i>.</li> - <li>Calling <i>detachCopy</i> will detach all fields of that object that are in the current - <a href="fetchgroups.html">Fetch Group</a> for that class for that <i>PersistenceManager</i>.</li> - <li>By default the fields of the object that will be detached are those in the <i>Default Fetch Group</i>.</li> - <li>You should choose your <a href="fetchgroups.html">Fetch Group</a> carefully, bearing in mind which - object(s) you want to access whilst detached. Detaching a relation field will detach the related object - as well.</li> - <li>If you don't detach a field of an object, you <u>cannot</u> access the value for that field while - the object is detached.</li> - <li>If you don't detach a field of an object, you <u>can</u> update the value for that field while detached, - and thereafter you can access the value for that field.</li> - <li>Calling <i>makePersistent</i> will return an (attached) copy of the detached object. It will attach all fields that - were originally detached, and will also attach any other fields that were modified whilst detached.</li> - </ul> - - <a name="detach_all_on_commit"></a> - <div class="section"><h3>Detach All On Commit<a name="Detach_All_On_Commit"></a></h3> - <p> - JDO2 also provides a mechanism whereby all objects that were enlisted in a transaction are - automatically detached when the transaction is committed. You can enable this in one of 3 ways. - If you want to use this mode globally for all <i>PersistenceManager</i>s (PMs) from a - <i>PersistenceManagerFactory</i> (PMF) you could either set the PMF property - "datanucleus.DetachAllOnCommit", or you could create your PMF and call the PMF method - <b>setDetachAllOnCommit(true)</b>. If instead you wanted to use this mode only for a particular - PM, or only for a particular transaction for a particular PM, then you can call the PM method - <b>setDetachAllOnCommit(true)</b> before the commit of the transaction, and it will apply for all - transaction commits thereafter, until turned off (<b>setDetachAllOnCommit(false)</b>. - Here's an example - </p> - <div class="source"><pre> -// Create a PMF -... - -// Create an object -MyObject my = new MyObject(); - -PersistenceManager pm = pmf.getPersistenceManager(); -Transaction tx = pm.currentTransaction(); -try -{ - tx.begin(); - - // We want our object to be detached when it's been persisted - pm.setDetachAllOnCommit(true); - - // Persist the object that we created earlier - pm.makePersistent(my); - - tx.commit(); - // The object "my" is now in detached state and can be used further -} -finally -{ - if (tx.isActive) - { - tx.rollback(); - } -}</pre></div> - <br /> - </div> - - <a name="copy_on_attach"></a> - <div class="section"><h3>Copy On Attach<a name="Copy_On_Attach"></a></h3> - <p> - By default when you are attaching a detached object it will return an attached copy - of the detached object. JDO2.1 provides a new feature that allows this attachment to - just migrate the existing detached object into attached state. - </p> - <p> - You enable this by setting the <i>PersistenceManagerFactory</i> (PMF) property - <b>datanucleus.CopyOnAttach</b> to false. Alternatively you can use the methods - <i>PersistenceManagerFactory.setCopyOnAttach(boolean flag)</i> or - <i>PersistenceManager.setCopyOnAttach(boolean flag)</i>. - If we return to the example at the start of this page, this now becomes - </p> - <div class="source"><pre> -// Reattach the updated object -pm.setCopyOnAttach(false); -tx = pm.currentTransaction(); -try -{ - tx.begin(); - - // working product is currently in detached state - - pm.makePersistent(working_product); - // working_product is now in persistent (attached) state - - tx.commit(); -} -catch (Exception e) -{ - // Handle the exception -} -finally -{ - if (tx.isActive()) - { - tx.rollback(); - } -}</pre></div> - <p> - Please note that if you try to attach two detached objects representing the same underlying - persistent object within the same transaction (i.e a persistent object with the same identity - already exists in the level 1 cache), then a JDOUserException will be thrown. - </p> - <br /> - </div> - - <div class="section"><h3>Serialization of Detachable classes<a name="Serialization_of_Detachable_classes"></a></h3> - <p> - During enhancement of Detachable classes, a field called <i>jdoDetachedState</i> is added to - the class definition. This field allows reading and changing tracking of detached objects - while they are not managed by a PersistenceManager. - </p> - <p> - When serialization occurs on a Detachable object, the <i>jdoDetachedState</i> field is written - to the serialized object stream. On deserialize, this field is written back to the new - deserialized instance. This process occurs transparently to the application. However, if - deserialization occurs with an un-enhanced version of the class, the detached state is lost. - </p> - <p> - Serialization and deserialization of Detachable classes and un-enhanced versions of the same - class is only possible if the field <i>serialVersionUID</i> is added. It's recommended during - development of the class, to define the <i>serialVersionUID</i> and make the class to implement - the <i>java.io.Serializable</i> interface, as the following example: - </p> -<div class="source"><pre> -class MyClass implements java.io.Serializable -{ - private static final long serialVersionUID = 2765740961462495537L; // any random value here - - //.... other fields -} -</pre></div> - <br /> - </div> - </div> - - + + + <div class="section"><h2>JDO Attach/Detach<a name="JDO_AttachDetach"></a></h2> + <p> + JDO provides an interface to the persistence of objects. JDO 1.0 doesn't provide a way of taking + an object that was just persisted and just work on it and update the persisted object later. + The user has to copy the fields manually and copy them back to the persisted object later. + JDO 2.0 introduces a new way of handling this situation, by <b>detaching</b> an object from the + persistence graph, allowing it to be worked on in the users application. It can then be + <b>attached</b> to the persistence graph later. + Please refer to <a href="state_transition.html">Object Lifecycle</a> for where this fits in. + The first thing to do to use a class with this facility is to tag it as "detachable". + This is done by adding the attribute + </p> + <div class="source"><pre><class name="MyClass" detachable="true"></pre></div> + <p> + This acts as an instruction to the <a href="enhancement.html">enhancement process</a> to add + methods necessary to utilise the attach/detach process. + </p> + + <p> + The following code fragment highlights how to use the attach/detach mechanism + </p> + <div class="source"><pre> +Product working_product=null; +Transaction tx=pm.currentTransaction(); +try +{ + tx.begin(); + + Product prod=new Product(name,description,price); + pm.makePersistent(prod); + + // Detach the product for use + working_product = (Product)pm.detachCopy(prod); + + tx.commit(); +} +catch (Exception e) +{ + // Handle the exception +} +finally +{ + if (tx.isActive()) + { + tx.rollback(); + } +} + +// Work on the detached object in our application +working_product.setPrice(new_price); + +... + +// Reattach the updated object +tx = pm.currentTransaction(); +try +{ + tx.begin(); + + Product attached_product = pm.makePersistent(working_product); + + tx.commit(); +} +catch (Exception e) +{ + // Handle the exception +} +finally +{ + if (tx.isActive()) + { + tx.rollback(); + } +}</pre></div> + <p> + So we now don't need to do any manual copying of object fields just using a simple call to + detach the object, and then attach it again later. Here are a few things to note with + <i>attach/detach</i> :- + </p> + <ul> + <li>Calling <i>detachCopy</i> on an object that is not detachable will return a <b>transient</b> + instance that is a COPY of the original, so use the COPY thereafter.</li> + <li>Calling <i>detachCopy</i> on an object that is detachable will return a <b>detached</b> + instance that is a COPY of the original, so use this COPY thereafter</li> + <li>A <i>detached</i> object retain the id of its datastore entity. Detached objects should be used + where you want to update the objects and attach them later (updating the associated object in the + datastore. If you want to create copies of the objects in the datastore with their own identities + you should use <i>makeTransient</i> instead of <i>detachCopy</i>.</li> + <li>Calling <i>detachCopy</i> will detach all fields of that object that are in the current + <a href="fetchgroups.html">Fetch Group</a> for that class for that <i>PersistenceManager</i>.</li> + <li>By default the fields of the object that will be detached are those in the <i>Default Fetch Group</i>.</li> + <li>You should choose your <a href="fetchgroups.html">Fetch Group</a> carefully, bearing in mind which + object(s) you want to access whilst detached. Detaching a relation field will detach the related object + as well.</li> + <li>If you don't detach a field of an object, you <u>cannot</u> access the value for that field while + the object is detached.</li> + <li>If you don't detach a field of an object, you <u>can</u> update the value for that field while detached, + and thereafter you can access the value for that field.</li> + <li>Calling <i>makePersistent</i> will return an (attached) copy of the detached object. It will attach all fields that + were originally detached, and will also attach any other fields that were modified whilst detached.</li> + </ul> + + <a name="detach_all_on_commit"></a> + <div class="section"><h3>Detach All On Commit<a name="Detach_All_On_Commit"></a></h3> + <p> + JDO2 also provides a mechanism whereby all objects that were enlisted in a transaction are + automatically detached when the transaction is committed. You can enable this in one of 3 ways. + If you want to use this mode globally for all <i>PersistenceManager</i>s (PMs) from a + <i>PersistenceManagerFactory</i> (PMF) you could either set the PMF property + "datanucleus.DetachAllOnCommit", or you could create your PMF and call the PMF method + <b>setDetachAllOnCommit(true)</b>. If instead you wanted to use this mode only for a particular + PM, or only for a particular transaction for a particular PM, then you can call the PM method + <b>setDetachAllOnCommit(true)</b> before the commit of the transaction, and it will apply for all + transaction commits thereafter, until turned off (<b>setDetachAllOnCommit(false)</b>. + Here's an example + </p> + <div class="source"><pre> +// Create a PMF +... + +// Create an object +MyObject my = new MyObject(); + +PersistenceManager pm = pmf.getPersistenceManager(); +Transaction tx = pm.currentTransaction(); +try +{ + tx.begin(); + + // We want our object to be detached when it's been persisted + pm.setDetachAllOnCommit(true); + + // Persist the object that we created earlier + pm.makePersistent(my); + + tx.commit(); + // The object "my" is now in detached state and can be used further +} +finally +{ + if (tx.isActive) + { + tx.rollback(); + } +}</pre></div> + <br /> + </div> + + <a name="copy_on_attach"></a> + <div class="section"><h3>Copy On Attach<a name="Copy_On_Attach"></a></h3> + <p> + By default when you are attaching a detached object it will return an attached copy + of the detached object. JDO2.1 provides a new feature that allows this attachment to + just migrate the existing detached object into attached state. + </p> + <p> + You enable this by setting the <i>PersistenceManagerFactory</i> (PMF) property + <b>datanucleus.CopyOnAttach</b> to false. Alternatively you can use the methods + <i>PersistenceManagerFactory.setCopyOnAttach(boolean flag)</i> or + <i>PersistenceManager.setCopyOnAttach(boolean flag)</i>. + If we return to the example at the start of this page, this now becomes + </p> + <div class="source"><pre> +// Reattach the updated object +pm.setCopyOnAttach(false); +tx = pm.currentTransaction(); +try +{ + tx.begin(); + + // working product is currently in detached state + + pm.makePersistent(working_product); + // working_product is now in persistent (attached) state + + tx.commit(); +} +catch (Exception e) +{ + // Handle the exception +} +finally +{ + if (tx.isActive()) + { + tx.rollback(); + } +}</pre></div> + <p> + Please note that if you try to attach two detached objects representing the same underlying + persistent object within the same transaction (i.e a persistent object with the same identity + already exists in the level 1 cache), then a JDOUserException will be thrown. + </p> + <br /> + </div> + + <div class="section"><h3>Serialization of Detachable classes<a name="Serialization_of_Detachable_classes"></a></h3> + <p> + During enhancement of Detachable classes, a field called <i>jdoDetachedState</i> is added to + the class definition. This field allows reading and changing tracking of detached objects + while they are not managed by a PersistenceManager. + </p> + <p> + When serialization occurs on a Detachable object, the <i>jdoDetachedState</i> field is written + to the serialized object stream. On deserialize, this field is written back to the new + deserialized instance. This process occurs transparently to the application. However, if + deserialization occurs with an un-enhanced version of the class, the detached state is lost. + </p> + <p> + Serialization and deserialization of Detachable classes and un-enhanced versions of the same + class is only possible if the field <i>serialVersionUID</i> is added. It's recommended during + development of the class, to define the <i>serialVersionUID</i> and make the class to implement + the <i>java.io.Serializable</i> interface, as the following example: + </p> +<div class="source"><pre> +class MyClass implements java.io.Serializable +{ + private static final long serialVersionUID = 2765740961462495537L; // any random value here + + //.... other fields +} +</pre></div> + <br /> + </div> + </div> + + </div> </div> Modified: websites/production/db/content/jdo/class_types.html ============================================================================== --- websites/production/db/content/jdo/class_types.html (original) +++ websites/production/db/content/jdo/class_types.html Mon Jan 21 04:23:17 2013 @@ -1,9 +1,9 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 16, 2013 --> +<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 20, 2013 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <title>Maven - + <title>JDO - JDO Class Types</title> <style type="text/css" media="all"> @import url("./css/maven-base.css"); @@ -11,7 +11,7 @@ @import url("./css/site.css"); </style> <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> - <meta name="Date-Revision-yyyymmdd" content="20130116" /> + <meta name="Date-Revision-yyyymmdd" content="20130120" /> <meta http-equiv="Content-Language" content="en" /> </head> @@ -30,7 +30,13 @@ <div id="breadcrumbs"> - <div class="xright"> <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> + <div class="xright"> <a href="https://www.facebook.com/JavaDataObjects" class="externalLink" title="Facebook">Facebook</a> + | + <a href="https://twitter.com/JavaDataObjects" class="externalLink" title="Twitter">Twitter</a> + | + <a href="https://plus.google.com/106584233526334524963" class="externalLink" title="Google+">Google+</a> + | + <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> | <a href="http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10630" class="externalLink" title="Issue Tracker">Issue Tracker</a> | @@ -203,64 +209,64 @@ </div> <div id="bodyColumn"> <div id="contentBox"> - - - <div class="section"><h2>JDO Class Types<a name="JDO_Class_Types"></a></h2> - <p> - JDO provides a means of transparent persistence of objects of user defined classes. With JDO there are actually - 3 types of classes. - </p> - <ul> - <li><b>Persistence Capable</b> classes are classes whose instances can be persisted to a datastore. JDO provide the - mechanism for persisting these instances, and they are core to JDO. These classes need to be <i>enhanced</i> - according to a JDO Meta-Data specification before use within a JDO environment.</li> - <li><b>Persistence Aware</b> classes are classes that manipulate Persistence Capable instances through direct attribute - manipulation. These classes are typically enhanced with very minimal JDO Meta-Data. The enhancement process performs very - little changes to these classes.</li> - <li><b>Normal</b> classes are classes that aren't themselves persistable, and have no knowledge of persistence either. - These classes are totally unchanged in JDO, and require no JDO Meta-Data whatsoever.</li> - </ul> - - <div class="section"><h3>PersistenceCapable<a name="PersistenceCapable"></a></h3> - <p> - Classes are defined as <b>PersistenceCapable</b> either by XML MetaData, like this - </p> - <div class="source"><pre> -<class name="MyClass"> - ... -</class></pre></div> - <p> - or, in JDO2.1, using Annotations. Like this - </p> - <div class="source"><pre> -@PersistenceCapable -public class MyClass -{ - ... -}</pre></div> - <br /> - </div> - - <div class="section"><h3>PersistenceAware<a name="PersistenceAware"></a></h3> - <p> - Classes are defined as <b>PersistenceAware</b> either by XML MetaData, like this - </p> - <div class="source"><pre> -<class name="MyClass" persistence-modifier="persistence-aware"/></pre></div> - <p> - or, in JDO2.1, using Annotations. Like this - </p> - <div class="source"><pre> -@PersistenceAware -public class MyClass -{ - ... -}</pre></div> - <br /> - </div> - </div> - - + + + <div class="section"><h2>JDO Class Types<a name="JDO_Class_Types"></a></h2> + <p> + JDO provides a means of transparent persistence of objects of user defined classes. With JDO there are actually + 3 types of classes. + </p> + <ul> + <li><b>Persistence Capable</b> classes are classes whose instances can be persisted to a datastore. JDO provide the + mechanism for persisting these instances, and they are core to JDO. These classes need to be <i>enhanced</i> + according to a JDO Meta-Data specification before use within a JDO environment.</li> + <li><b>Persistence Aware</b> classes are classes that manipulate Persistence Capable instances through direct attribute + manipulation. These classes are typically enhanced with very minimal JDO Meta-Data. The enhancement process performs very + little changes to these classes.</li> + <li><b>Normal</b> classes are classes that aren't themselves persistable, and have no knowledge of persistence either. + These classes are totally unchanged in JDO, and require no JDO Meta-Data whatsoever.</li> + </ul> + + <div class="section"><h3>PersistenceCapable<a name="PersistenceCapable"></a></h3> + <p> + Classes are defined as <b>PersistenceCapable</b> either by XML MetaData, like this + </p> + <div class="source"><pre> +<class name="MyClass"> + ... +</class></pre></div> + <p> + or, in JDO2.1, using Annotations. Like this + </p> + <div class="source"><pre> +@PersistenceCapable +public class MyClass +{ + ... +}</pre></div> + <br /> + </div> + + <div class="section"><h3>PersistenceAware<a name="PersistenceAware"></a></h3> + <p> + Classes are defined as <b>PersistenceAware</b> either by XML MetaData, like this + </p> + <div class="source"><pre> +<class name="MyClass" persistence-modifier="persistence-aware"/></pre></div> + <p> + or, in JDO2.1, using Annotations. Like this + </p> + <div class="source"><pre> +@PersistenceAware +public class MyClass +{ + ... +}</pre></div> + <br /> + </div> + </div> + + </div> </div> Modified: websites/production/db/content/jdo/dependencies.html ============================================================================== --- websites/production/db/content/jdo/dependencies.html (original) +++ websites/production/db/content/jdo/dependencies.html Mon Jan 21 04:23:17 2013 @@ -1,9 +1,9 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 16, 2013 --> +<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 20, 2013 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <title>Maven - + <title>JDO - Project Dependencies</title> <style type="text/css" media="all"> @import url("./css/maven-base.css"); @@ -12,7 +12,7 @@ </style> <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> <meta name="author" content="JDO Documentation Team" /> - <meta name="Date-Revision-yyyymmdd" content="20130116" /> + <meta name="Date-Revision-yyyymmdd" content="20130120" /> <meta http-equiv="Content-Language" content="en" /> </head> @@ -31,7 +31,13 @@ <div id="breadcrumbs"> - <div class="xright"> <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> + <div class="xright"> <a href="https://www.facebook.com/JavaDataObjects" class="externalLink" title="Facebook">Facebook</a> + | + <a href="https://twitter.com/JavaDataObjects" class="externalLink" title="Twitter">Twitter</a> + | + <a href="https://plus.google.com/106584233526334524963" class="externalLink" title="Google+">Google+</a> + | + <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> | <a href="http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10630" class="externalLink" title="Issue Tracker">Issue Tracker</a> | @@ -204,80 +210,80 @@ </div> <div id="bodyColumn"> <div id="contentBox"> - <!-- Licensed to the Apache Software Foundation (ASF) under one or more -contributor license agreements. See the NOTICE file distributed with -this work for additional information regarding copyright ownership. -The ASF licenses this file to You under the Apache License, Version 2.0 -(the "License"); you may not use this file except in compliance with -the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. --> - - <div class="section"><h2>The Apache JDO Project<a name="The_Apache_JDO_Project"></a></h2> - - <p> - Apache JDO is a sub-project of the Apache DB TLP. It includes two major areas: - </p> - <ul> - <li> -JDO 1, Java Specification Request 12, API, Reference Implementation, and -Technology Compatibility Kit. - </li> - <li> -JDO 2, Java Specification Request 243, API, and Technology Compatibility Kit. -The Reference Implementation is being developed in parallel by <a class="externalLink" href="http://www.jpox.org">JPOX</a>. - </li> - </ul> - - <p> - The common external dependencies of JDO include the tools used to build and test it: - </p> - - <ul> - <li>Subversion</li> - <li>Maven</li> - <li>Ant</li> - <li>JUnit</li> - </ul> - - <p> - Other external dependencies of JDO are subproject-specific: - </p> - - <ul> - <li>JDO 2.0 API - <ul> - <li>Java Transaction API</li> - </ul> - </li> - <li>JDO 2.0 TCK - <ul> - <li>Java Transaction API</li> - <li>Jakarta Commons Logging</li> - <li>Log4j</li> - <li>Apache Derby</li> - <li>Spring Framework Core</li> - <li>JPOX - <ul> - <li>ASM</li> - <li>Source Forge c3p0</li> - <li>Commons DBCP</li> - <li>Commons Pool</li> - <li>Commons Collections</li> - </ul> - </li> - </ul> - </li> - </ul> -</div> - - + <!-- Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. --> + + <div class="section"><h2>The Apache JDO Project<a name="The_Apache_JDO_Project"></a></h2> + + <p> + Apache JDO is a sub-project of the Apache DB TLP. It includes two major areas: + </p> + <ul> + <li> +JDO 1, Java Specification Request 12, API, Reference Implementation, and +Technology Compatibility Kit. + </li> + <li> +JDO 2, Java Specification Request 243, API, and Technology Compatibility Kit. +The Reference Implementation is being developed in parallel by <a class="externalLink" href="http://www.jpox.org">JPOX</a>. + </li> + </ul> + + <p> + The common external dependencies of JDO include the tools used to build and test it: + </p> + + <ul> + <li>Subversion</li> + <li>Maven</li> + <li>Ant</li> + <li>JUnit</li> + </ul> + + <p> + Other external dependencies of JDO are subproject-specific: + </p> + + <ul> + <li>JDO 2.0 API + <ul> + <li>Java Transaction API</li> + </ul> + </li> + <li>JDO 2.0 TCK + <ul> + <li>Java Transaction API</li> + <li>Jakarta Commons Logging</li> + <li>Log4j</li> + <li>Apache Derby</li> + <li>Spring Framework Core</li> + <li>JPOX + <ul> + <li>ASM</li> + <li>Source Forge c3p0</li> + <li>Commons DBCP</li> + <li>Commons Pool</li> + <li>Commons Collections</li> + </ul> + </li> + </ul> + </li> + </ul> +</div> + + </div> </div> Modified: websites/production/db/content/jdo/downloads.html ============================================================================== --- websites/production/db/content/jdo/downloads.html (original) +++ websites/production/db/content/jdo/downloads.html Mon Jan 21 04:23:17 2013 @@ -1,9 +1,9 @@ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 16, 2013 --> +<!-- Generated by Apache Maven Doxia Site Renderer 1.3 at Jan 20, 2013 --> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <title>Maven - + <title>JDO - Downloads</title> <style type="text/css" media="all"> @import url("./css/maven-base.css"); @@ -12,7 +12,7 @@ </style> <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" /> <meta name="author" content="JDO Documentation Team" /> - <meta name="Date-Revision-yyyymmdd" content="20130116" /> + <meta name="Date-Revision-yyyymmdd" content="20130120" /> <meta http-equiv="Content-Language" content="en" /> </head> @@ -31,7 +31,13 @@ <div id="breadcrumbs"> - <div class="xright"> <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> + <div class="xright"> <a href="https://www.facebook.com/JavaDataObjects" class="externalLink" title="Facebook">Facebook</a> + | + <a href="https://twitter.com/JavaDataObjects" class="externalLink" title="Twitter">Twitter</a> + | + <a href="https://plus.google.com/106584233526334524963" class="externalLink" title="Google+">Google+</a> + | + <a href="http://wiki.apache.org/jdo" class="externalLink" title="Wiki">Wiki</a> | <a href="http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10630" class="externalLink" title="Issue Tracker">Issue Tracker</a> | @@ -204,111 +210,111 @@ </div> <div id="bodyColumn"> <div id="contentBox"> - <!-- Licensed to the Apache Software Foundation (ASF) under one or more -contributor license agreements. See the NOTICE file distributed with -this work for additional information regarding copyright ownership. -The ASF licenses this file to You under the Apache License, Version 2.0 -(the "License"); you may not use this file except in compliance with -the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. --> - - <div class="section"><h2>Latest Official Release<a name="Latest_Official_Release"></a></h2> - <p> - <a href="releases/release-3.0.1.cgi">JDO 3.0.1</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - November 13, 2011 - </p> - </div> - - <div class="section"><h2>Previous Official Releases<a name="Previous_Official_Releases"></a></h2> - <p> - <a href="releases/release-3.0.cgi">JDO 3.0</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - July 23, 2010 - </p> - <p> - <a href="releases/release-2.2.cgi">JDO 2.2</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - October 24, 2008 - </p> - <p> - <a href="releases/release-2.1.1.cgi">JDO 2.1.1</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - August 29, 2008 - </p> - <p> - <a href="releases/release-2.1.cgi">JDO 2.1</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - March 17, 2008 - </p> - <p> - <a href="releases/release-2.0.cgi">JDO 2.0</a> - <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> - May 1, 2006 - </p> -<!-- <p> -<a href="releases/release-2.0-rc1.cgi">JDO 2.0 rc1</a> -<img vspace="0" hspace="8" SRC="images/dot_clear.gif"/> -Feb 27, 2006 -</p> -<p> -<a href="releases/release-2.0-beta.cgi">JDO 2.0 beta</a> -<img vspace="0" hspace="8" SRC="images/dot_clear.gif"/> -Jan 24, 2006 - </p> --> -</div> - - <div class="section"><h2>About JDO Releases<a name="About_JDO_Releases"></a></h2> - <p> - A release of JDO includes the JDO API and the - Technology Compatibility Kit (TCK). - The TCK is available only in source form. The API - project is available as source and binary, and as raw jar files. - </p> - <ul> - <li> - The api project contains source to build jdo-api.jar. - The jar file is the only artifact needed for users who wish to compile - their programs using the JDO API. - It can be downloaded automatically by maven and placed into the local - maven repository if you include the - proper dependency in your maven project definition. - Use groupId javax.jdo, artifactId jdo-api, version 3.0, - and define your remote repository as - http://www.ibiblio.org/maven. - Alternatively, it can be downloaded manually and put into a location - of your choice. - </li> - <li> - The tck project contains the JDO Technology Compatibility Kit. - The source distribution is the only artifact needed to be downloaded - by the user. - </li> - </ul> - <p> - All are available for download as source, but if you wish - to run the TCK you need only download the TCK project. - The dependencies will be automatically downloaded by maven - as jar files. - </p> - <p> - For information on running the TCK, see <a href="tck.html">TCK</a>. - If downloading multiple source packages, extract them all - into the same directory. This will preserve the source - dependencies among the projects. - </p> - <p> - See <a href="svn.html">Source Code Version Control</a> for information about downloading the latest source code for all of the JDO projects. - </p> - </div> - + <!-- Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. --> + + <div class="section"><h2>Latest Official Release<a name="Latest_Official_Release"></a></h2> + <p> + <a href="releases/release-3.0.1.cgi">JDO 3.0.1</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + November 13, 2011 + </p> + </div> + + <div class="section"><h2>Previous Official Releases<a name="Previous_Official_Releases"></a></h2> + <p> + <a href="releases/release-3.0.cgi">JDO 3.0</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + July 23, 2010 + </p> + <p> + <a href="releases/release-2.2.cgi">JDO 2.2</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + October 24, 2008 + </p> + <p> + <a href="releases/release-2.1.1.cgi">JDO 2.1.1</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + August 29, 2008 + </p> + <p> + <a href="releases/release-2.1.cgi">JDO 2.1</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + March 17, 2008 + </p> + <p> + <a href="releases/release-2.0.cgi">JDO 2.0</a> + <img src="images/dot_clear.gif" vspace="0" hspace="8" alt="" /> + May 1, 2006 + </p> +<!-- <p> +<a href="releases/release-2.0-rc1.cgi">JDO 2.0 rc1</a> +<img vspace="0" hspace="8" SRC="images/dot_clear.gif"/> +Feb 27, 2006 +</p> +<p> +<a href="releases/release-2.0-beta.cgi">JDO 2.0 beta</a> +<img vspace="0" hspace="8" SRC="images/dot_clear.gif"/> +Jan 24, 2006 + </p> --> +</div> + + <div class="section"><h2>About JDO Releases<a name="About_JDO_Releases"></a></h2> + <p> + A release of JDO includes the JDO API and the + Technology Compatibility Kit (TCK). + The TCK is available only in source form. The API + project is available as source and binary, and as raw jar files. + </p> + <ul> + <li> + The api project contains source to build jdo-api.jar. + The jar file is the only artifact needed for users who wish to compile + their programs using the JDO API. + It can be downloaded automatically by maven and placed into the local + maven repository if you include the + proper dependency in your maven project definition. + Use groupId javax.jdo, artifactId jdo-api, version 3.0, + and define your remote repository as + http://www.ibiblio.org/maven. + Alternatively, it can be downloaded manually and put into a location + of your choice. + </li> + <li> + The tck project contains the JDO Technology Compatibility Kit. + The source distribution is the only artifact needed to be downloaded + by the user. + </li> + </ul> + <p> + All are available for download as source, but if you wish + to run the TCK you need only download the TCK project. + The dependencies will be automatically downloaded by maven + as jar files. + </p> + <p> + For information on running the TCK, see <a href="tck.html">TCK</a>. + If downloading multiple source packages, extract them all + into the same directory. This will preserve the source + dependencies among the projects. + </p> + <p> + See <a href="svn.html">Source Code Version Control</a> for information about downloading the latest source code for all of the JDO projects. + </p> + </div> + </div> </div>