portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dlest...@apache.org
Subject svn commit: r352009 - in /portals/jetspeed-2/trunk: components/cm/xdocs/ components/deploy-tool/xdocs/ components/prefs/xdocs/ components/rdbms/xdocs/ components/rdbms/xdocs/images/ xdocs/guides/
Date Sat, 03 Dec 2005 20:03:48 GMT
Author: dlestrat
Date: Sat Dec  3 12:03:41 2005
New Revision: 352009

URL: http://svn.apache.org/viewcvs?rev=352009&view=rev
Log:
http://issues.apache.org/jira/browse/JS2-414#action_12359240

Added:
    portals/jetspeed-2/trunk/components/rdbms/xdocs/dao.xml
    portals/jetspeed-2/trunk/components/rdbms/xdocs/images/connection-repository-c.gif   (with
props)
    portals/jetspeed-2/trunk/components/rdbms/xdocs/images/persistence-broker-dao-c.gif  
(with props)
    portals/jetspeed-2/trunk/components/rdbms/xdocs/index.xml
Removed:
    portals/jetspeed-2/trunk/components/cm/xdocs/tasks.xml
    portals/jetspeed-2/trunk/components/prefs/xdocs/tasks.xml
    portals/jetspeed-2/trunk/components/rdbms/xdocs/tasks.xml
Modified:
    portals/jetspeed-2/trunk/components/cm/xdocs/navigation.xml
    portals/jetspeed-2/trunk/components/deploy-tool/xdocs/navigation.xml
    portals/jetspeed-2/trunk/components/prefs/xdocs/navigation.xml
    portals/jetspeed-2/trunk/components/rdbms/xdocs/navigation.xml
    portals/jetspeed-2/trunk/xdocs/guides/guide-components.xml
    portals/jetspeed-2/trunk/xdocs/guides/guide-database.xml

Modified: portals/jetspeed-2/trunk/components/cm/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/cm/xdocs/navigation.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/cm/xdocs/navigation.xml (original)
+++ portals/jetspeed-2/trunk/components/cm/xdocs/navigation.xml Sat Dec  3 12:03:41 2005
@@ -24,7 +24,6 @@
         </links>
         <menu name="Jetspeed-2 Component Manager Documentation">
         	<item name="Component Manager Overview" href="index.html" />
-            <item name="Tasks" href="tasks.html" />
         </menu>
     </body>
 </project>

Modified: portals/jetspeed-2/trunk/components/deploy-tool/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/deploy-tool/xdocs/navigation.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/deploy-tool/xdocs/navigation.xml (original)
+++ portals/jetspeed-2/trunk/components/deploy-tool/xdocs/navigation.xml Sat Dec  3 12:03:41
2005
@@ -25,7 +25,6 @@
     	<menu name="Jetspeed-2 Deploy Tools Documentation">
     	    <item name="Jetspeed-2 Deployment Overview" href="index.html" />
     		<item name="Deploy Tools Overview" href="deploy-tools.html" />
-    	    <item name="Tasks" href="tasks.html" />
         </menu>
     </body>
 </project>

Modified: portals/jetspeed-2/trunk/components/prefs/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/prefs/xdocs/navigation.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/prefs/xdocs/navigation.xml (original)
+++ portals/jetspeed-2/trunk/components/prefs/xdocs/navigation.xml Sat Dec  3 12:03:41 2005
@@ -24,7 +24,6 @@
         </links>
         <menu name="Jetspeed-2 Preferences Documentation">
             <item name="Preferences Overview" href="index.html" />
-            <item name="Tasks" href="tasks.html" />
         </menu>
     </body>
 </project>

Added: portals/jetspeed-2/trunk/components/rdbms/xdocs/dao.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/rdbms/xdocs/dao.xml?rev=352009&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/rdbms/xdocs/dao.xml (added)
+++ portals/jetspeed-2/trunk/components/rdbms/xdocs/dao.xml Sat Dec  3 12:03:41 2005
@@ -0,0 +1,73 @@
+<?xml version="1.0" ?>
+<!--
+    Copyright 2004 The Apache Software Foundation
+    
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+    
+    http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<document>
+    <properties>
+        <title>Jetspeed-2 RDBMS</title>
+        <authors>
+            <person name="David Le Strat" email="dlestrat@apache.org" />
+        </authors>
+    </properties>
+    <body>
+        <section name="Data Access Overview">
+            <p>
+            Jetspeed-2 RDBMS component provide some of level of abstraction from the underlying
persistence mechanism.    
+            </p>
+            <subsection name="Data Access Using Object Relational Mapping">
+            <p>
+            Jetspeed-2 uses object relational mapping as the underlying technology for persistence.
 By default, 
+            <a href="http://db.apache.org/ojb/">Apache OJB</a> is used as an
ORM engine.  In order to minimize Jetspeed-2
+            OJB dependencies, the <code>InitablePersistenceBrokerDaoSupport</code>
provides a layer of abstraction that minimizes
+            the dependencies on a specific ORM engine.  The class diagram below illustration
the Jetspeed-2 implementation classes
+            that leverage <code>InitablePersistenceBrokerDaoSupport</code>:<br/>
+            <img src="images/persistence-broker-dao-c.gif" border="0"/>
+            </p>
+            <p>
+            The <code>InitablePersistenceBrokerDaoSupport</code> extends <code>org.springframework.orm.ojb.support.PersistenceBrokerDaoSupport</code>.
+            </p>
+            </subsection>
+            <subsection name="Spring ORM Support">
+            <p>
+            Spring's adds significant support when using the O/R mapping layer of your choice
to create data access applications.  The 
+            <code>InitablePersistenceBrokerDaoSupport</code> extends spring layer
of abstraction for persistence support, specifically the
+            OJB <a href="http://static.springframework.org/spring/docs/1.2.x/reference/orm.html#orm-ojb"><code>PersistenceBroker</code>
API support</a>.
+            </p>
+            <p>
+            Using such a layer of abstraction has many advantages.  Some of the advantages
outlined in Spring's documentation are:
+            <ul>
+            <li>Ease of testing. Spring's inversion of control approach makes it easy
to swap the implementations and config locations of persistence manager instances,
+            JDBC DataSources, transaction managers, and mapper object implementations (if
needed). This makes it much easier to isolate and test each piece of
+            persistence-related code in isolation.</li>
+            <li>Common data access exceptions. Spring can wrap exceptions from you
O/R mapping tool of choice, converting them from proprietary (potentially checked) exceptions
+            to a common runtime DataAccessException hierarchy. This allows you to handle
most persistence exceptions, which are non-recoverable, only in the appropriate layers,
+            without annoying boilerplate catches/throws, and exception declarations. You
can still trap and handle exceptions anywhere you need to. Remember that JDBC exceptions
+            (including DB specific dialects) are also converted to the same hierarchy, meaning
that you can perform some operations with JDBC within a consistent programming model.</li>
+            <li>General resource management. Spring application contexts can handle
the location and configuration of persistence managers instances, JDBC DataSources, 
+            and other related resources. This makes these values easy to manage and change.
Spring offers efficient, easy and safe handling of persistence resources.</li>
+			<li>Integrated transaction management. Spring allows you to wrap your O/R mapping
code with either a declarative, AOP style method interceptor,
+			or an explicit 'template' wrapper class at the Java code level. In either case, transaction
semantics are handled for you, and proper transaction handling (rollback, etc)
+			in case of exceptions is taken care of. As discussed below, you also get the benefit of
being able to use and swap various transaction managers, without your ORM specific code being
affected:
+			for example, between local transactions and JTA, with the same full services (such as
declarative transactions) available in both scenarios. As an additional benefit,
+			JDBC-related code can fully integrate transactionally with the code you use to do O/R
mapping. This is useful for data access that's not suitable for O/R mapping,
+			such as batch processing or streaming of BLOBs, which still needs to share common transactions
with O/R mapping operations.</li>
+			<li>To avoid vendor lock-in, and allow mix-and-match implementation strategies.</li>
+			</ul>
+			</p>
+            </subsection>
+        </section>
+    </body>
+</document>
+

Added: portals/jetspeed-2/trunk/components/rdbms/xdocs/images/connection-repository-c.gif
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/rdbms/xdocs/images/connection-repository-c.gif?rev=352009&view=auto
==============================================================================
Binary file - no diff available.

Propchange: portals/jetspeed-2/trunk/components/rdbms/xdocs/images/connection-repository-c.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: portals/jetspeed-2/trunk/components/rdbms/xdocs/images/persistence-broker-dao-c.gif
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/rdbms/xdocs/images/persistence-broker-dao-c.gif?rev=352009&view=auto
==============================================================================
Binary file - no diff available.

Propchange: portals/jetspeed-2/trunk/components/rdbms/xdocs/images/persistence-broker-dao-c.gif
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: portals/jetspeed-2/trunk/components/rdbms/xdocs/index.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/rdbms/xdocs/index.xml?rev=352009&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/rdbms/xdocs/index.xml (added)
+++ portals/jetspeed-2/trunk/components/rdbms/xdocs/index.xml Sat Dec  3 12:03:41 2005
@@ -0,0 +1,100 @@
+<?xml version="1.0" ?>
+<!--
+    Copyright 2004 The Apache Software Foundation
+    
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+    
+    http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<document>
+    <properties>
+        <title>Jetspeed-2 RDBMS</title>
+        <authors>
+            <person name="David Le Strat" email="dlestrat@apache.org" />
+        </authors>
+    </properties>
+    <body>
+        <section name="RDBMS Overview">
+            <p>
+            Jetspeed-2 RDBMS component provide a layer of abstraction from the persistence
mechanism used by Jetspeed-2.
+            It provides facilities for datasource configuration as well as data access. 
+            </p>
+            <subsection name="Datasource Configuration">
+            <p>
+            Jetspeed-2 uses <a href="http://db.apache.org/ojb/">OJB</a> <code>PersistenceBroker</code>
API as its default
+            persistence mechanism.  The <code>ConnectionRepositoryEntry</code>
component configures OJB for Jetspeed-2 as well
+            as the properties available under <code>/etc/db-ojb</code> in the
Jetspeed-2 source repository or <code>WEB-INF/classes</code>
+            in a deployed instance of Jetspeed-2.
+            </p>
+            <p>
+            The <code>datasource.xml</code> spring assembly configuration file
configures <code>ConnectionRepositoryEntry</code> and is located
+            in <code>WEB-INF/assembly/boot</code>.
+            </p>
+            <p>
+            The <code>ConnectionRepositoryEntry</code> configures an entry in
OJB's ConnectionRepository according to its properties.
+            The properties <code>driverClassName</code>, <code>url</code>,
<code>username</code> and <code>password</code> are used
+			only if no <code>jndiName</code> is set, i.e. if the connection factory uses
the driver to create data sources.  The platform
+			settings are derived from the configured  data source or database driver using OJB's <code>JdbcMetadataUtils</code>
class.  The default
+			Jetspeed-2 <code>ConnectionRepositoryEntry</code> configuration expose a datasource.
+            <pre>
+    &lt;bean id="JetspeedDS" class="org.apache.jetspeed.components.rdbms.ojb.ConnectionRepositoryEntry"&gt;
+      &lt;property name="jndiName"&gt;
+        &lt;value&gt;java:comp/env/jdbc/jetspeed&lt;/value&gt;
+      &lt;/property&gt;
+    &lt;/bean&gt;</pre>
+            </p>
+            <p>
+            In order for OJB to be configured properly with Jetspeed-2, the <code>OJB.properties</code>
file (located under
+            <code>/etc/db-ojb/OJB.properties</code> in the source tree and <code>WEB-INF/classes</code>
in the deployed application)
+            must set:
+            <pre>
+    ConnectionManagerClass=org.apache.jetspeed.components.rdbms.ojb.ConnectionManagerImpl</pre>
+            instead of:
+            <pre>
+    ConnectionFactoryClass=org.apache.ojb.broker.accesslayer.ConnectionFactoryManagedImpl</pre>
+            </p>
+            <p>
+            A class diagram of <code>ConnectionRepositoryEntry</code> and <code>ConnectionManagerImpl</code>
is
+            provided below:<br/>
+            <img src="images/connection-repository-c.gif" border="0"/>
+            </p>
+            </subsection>
+            <subsection name="OJB Datasource Configuration">
+            <p>
+            The bean name provided in <code>datasource.xml</code> must match
the <code>jdbc-connection-descriptor</code>
+            <code>jcd-alias</code> property (by default <code>JetspeedDS</code>)
located in OJB <code>repository_database.xml</code>
+            as illustrated below.
+            <pre>
+    &lt;jdbc-connection-descriptor
+        jcd-alias="JetspeedDS"
+        default-connection="true"
+        batch-mode="false"&gt;</pre>
+            </p>
+            </subsection>
+            <subsection name="Jetspeed-2 Datasource Configuration in Tomcat">
+            <p>
+            Jetspeed-2 configure the following datasource in Tomcat.  In the source tree,
the Tomcat datasource configuration
+            is located under <code>/etc/conf/tomcat</code>.  When deployed Jetspeed-2
in a Tomcat instance, the Jetspeed-2
+            datasource configuration are deployed under <code>${tomcat_home}/conf/Catalina/localhost/jetspeed.xml</code>.
If a different
+            portal name is being used for Jetspeed-2, the configuration file will be named
accordingly.
+            <pre>
+    &lt;Resource name="jdbc/jetspeed" auth="Container"
+                 factory="org.apache.commons.dbcp.BasicDataSourceFactory"
+                 type="javax.sql.DataSource" username="" password=""
+                 driverClassName="org.apache.derby.jdbc.EmbeddedDriver"
+                 url="jdbc:derby:/tmp/productiondb;create=true"
+                 maxActive="100" maxIdle="30" maxWait="10000"/&gt;</pre>
+            </p>
+            </subsection>
+        </section>
+    </body>
+</document>
+

Modified: portals/jetspeed-2/trunk/components/rdbms/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/rdbms/xdocs/navigation.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/rdbms/xdocs/navigation.xml (original)
+++ portals/jetspeed-2/trunk/components/rdbms/xdocs/navigation.xml Sat Dec  3 12:03:41 2005
@@ -17,12 +17,14 @@
 <project>
     <body>
         <links>
-            <item name="Jetspeed 2" href="../../index.html" />
+        	<item name="Components Guide" href="../../guides/guide-components.html" />
+        	<item name="Jetspeed 2" href="../../index.html" />
             <!-- Cannot access ${pom.id}... Hard coding pdf name. -->
             <item name="PDF Documentation" href="/jetspeed-rdbms.pdf" img="../../images/pdf.gif"
/>
         </links>
-        <menu name="Misc.">
-            <item name="Tasks" href="tasks.html" />
-        </menu>
+    	<menu name="Jetspeed-2 RDBMS Documentation">
+    	    <item name="RDBMS Overview" href="index.html" />
+    		<item name="Data Access in Jetspeed-2" href="dao.html" />
+    	</menu>
     </body>
 </project>

Modified: portals/jetspeed-2/trunk/xdocs/guides/guide-components.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/xdocs/guides/guide-components.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/xdocs/guides/guide-components.xml (original)
+++ portals/jetspeed-2/trunk/xdocs/guides/guide-components.xml Sat Dec  3 12:03:41 2005
@@ -103,7 +103,96 @@
             <td>The <code>DeploymentManager</code> listens for new portal
assets (portlets, decorators) to be deployed.  An overview of how deployment
             works in Jetspeed-2 can be found <a href="../multiproject/jetspeed-deploy-tools/index.html">here</a>.</td>
           </tr>
-		</table>
+		</table><br/>
+		<table>
+          <tr>
+          	<th colspan="2">Jetspeed-2 Preferences - Artifact Id: jetspeed-prefs</th>
+          </tr>
+          <tr>
+            <th>Component Name</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-prefs/index.html"><code>PreferencesProvider</code></a></td>
+            <td>The <code>PreferencesProvider</code> exposes Jetspeed-2
implementation of the <code>java.util.Preferences</code> API.</td>
+          </tr>
+		</table><br/>
+		<table>
+          <tr>
+          	<th colspan="2">Jetspeed-2 RDBMS - Artifact Id: jetspeed-rdbms</th>
+          </tr>
+          <tr>
+            <th>Component Name</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-rdbms/index.html"><code>ConnectionRepositoryEntry</code></a></td>
+            <td>The <code>ConnectionRepositoryEntry</code> exposes Jetspeed-2
implementation of the <code>java.util.Preferences</code> API.</td>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-rdbms/dao.html"><code>InitablePersistenceBrokerDaoSupport</code></a></td>
+            <td><code>InitablePersistenceBrokerDaoSupport</code> provides
data access and persistence support for Jetspeed-2.</td>
+          </tr>
+		</table><br/>
+		<table>
+          <tr>
+          	<th colspan="2">Jetspeed-2 Security - Artifact Id: jetspeed-security</th>
+          </tr>
+          <tr>
+            <th>Component Name</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-security/arch.html"><code>DefaultLoginModule</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>RdbmsPolicy</code></a><br/></td>
+            <td>Jetspeed-2 default implementation for <a href="http://java.sun.com/products/jaas/">JAAS
services</a>.  Jetspeed-2 leverages JAAS as 
+            a generic security standard framework to expose security functionality to the
portal engine.  The JAAS services
+            leverage Jetspeed-2 coarsed grained services for which specific implementations
are provided through Jetpseed-2 security SPI.</td>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-security/arch.html"><code>UserManager</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>RoleManager</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>GroupManager</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>PermissionManager</code></a></td>
+            <td>Coarsed grained security components exposing Jetspeed-2 security management
APIs.</td>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-security/arch.html"><code>UserSecurityHandler</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>CredentialHandler</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>GroupSecurityHandler</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>RoleSecurityHandler</code></a><br/>
+            <a href="../multiproject/jetspeed-security/arch.html"><code>SecurityMappingHandler</code></a></td>
+            <td>Fined grained Jetspeed-2 security SPI components exposing a specific
implementation to the Jetspeed-2
+            security engine.  This mechanism provides a flexible framework for supporting
multiple security implementation
+            without having to impact the higher level security services.</td>
+          </tr>
+		</table><br/>
+		<!-- table>
+          <tr>
+          	<th colspan="2">Jetspeed-2 Search - Artifact Id: jetspeed-search</th>
+          </tr>
+          <tr>
+            <th>Component Name</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-prefs/index.html"><code>PreferencesProvider</code></a></td>
+            <td>The <code>PreferencesProvider</code> exposes Jetspeed-2
implementation of the <code>java.util.Preferences</code> API.</td>
+          </tr>
+		</table><br/-->
+		<!-- table>
+          <tr>
+          	<th colspan="2">Jetspeed-2 Statistics - Artifact Id: jetspeed-statistics</th>
+          </tr>
+          <tr>
+            <th>Component Name</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td><a href="../multiproject/jetspeed-prefs/index.html"><code>PreferencesProvider</code></a></td>
+            <td>The <code>PreferencesProvider</code> exposes Jetspeed-2
implementation of the <code>java.util.Preferences</code> API.</td>
+          </tr>
+		</table><br/-->
 		</subsection>
 		</section>
 	</body>

Modified: portals/jetspeed-2/trunk/xdocs/guides/guide-database.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/xdocs/guides/guide-database.xml?rev=352009&r1=352008&r2=352009&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/xdocs/guides/guide-database.xml (original)
+++ portals/jetspeed-2/trunk/xdocs/guides/guide-database.xml Sat Dec  3 12:03:41 2005
@@ -213,6 +213,12 @@
 				</table>
 
 			</subsection>
+			<subsection name="Datasource Configuration with Jetspeed-2">
+			<p>
+			Jetspeed-2 requires a datasource to be configured in the application server on which it
is being deployed.
+			For more information, see the <a href="../multiproject/jetspeed-rdbms/index.html">RDBMS
component documentation</a>.
+			</p>
+			</subsection>
 
 		</section>
 	</body>



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org


Mime
View raw message