portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tay...@apache.org
Subject svn commit: r606352 - in /portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs: developers.xml faq.xml images/add-user-editmode.png images/add-user.png index.xml jetspeed-eclipse.xml maven-2-build.xml maven-2-custom.xml navigation.xml
Date Sat, 22 Dec 2007 00:20:36 GMT
Author: taylor
Date: Fri Dec 21 16:20:35 2007
New Revision: 606352

URL: http://svn.apache.org/viewvc?rev=606352&view=rev
Log:
2.1.3 documentation 

Added:
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user-editmode.png   (with props)
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user.png   (with props)
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-build.xml
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-custom.xml
Modified:
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/developers.xml
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/faq.xml
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/index.xml
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/jetspeed-eclipse.xml
    portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/navigation.xml

Modified: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/developers.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/developers.xml?rev=606352&r1=606351&r2=606352&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/developers.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/developers.xml Fri Dec 21 16:20:35 2007
@@ -31,43 +31,55 @@
 If you ar going to be creating portlet applications, check out this fine e-book for an overall guide to writing portlets:
 			</p>
 <ul>
-<li>
 <li><a href='http://www.manning.com/hepper/' target='_blank'>Portlets and Apache Portals Book</a></li>
-</li>
 </ul>
-<p>
-Here are a few links to get you started developing with the Jetspeed portal itself:
+
+<h2>Custom Building with Ant and Eclipse</h2>
+<p>If you have never used Maven before, the easiest build option for you may be to build with the Ant-Eclipse Build.
+This build allows you to build a custom portal with Ant. We also provide a custom installer builder.
+For your portlet applications, we provide Eclipse WTP support. Although the actual programming tutorial is incomplete, the tutorial describing 
+building with Ant and Eclipse is completed. For version 2.1.3, this is the recommended <b>quickest</b>  build for getting custom projects up and running in no time.
 </p>
-<ul>
-<li><a href='http://portals.apache.org/jetspeed-2/getting-started.html' target='_blank'>Getting Started</a></li>
-<li><a href='http://portals.apache.org/jetspeed-2/getting-started-source.html' target='_blank'>Building the Core Jetspeed from Source</a></li>
-</ul>
+<li><a href='http://portals.apache.org/tutorials/jetspeed-2-ant/' target='_blank'>Jetspeed Tutorial - Building a Custom Portal with Ant and Eclipse</a></li>
+
 <h2>Custom Building with Maven Plugins</h2>
 <p>Jetspeed 2.1 can be built with either Maven-1 or Maven-2.
 You can actually build your own portal without the Jetspeed source. 
 You will want to customize your Jetspeed build, overriding the skins and themes, adding your own portlet applications and perhaps overriding
-key components of the portal. To do so, we provide two custom build frameworks: one with Maven-1, the second with Maven-2.
-With the custom build, you can easily build and create your own Jetspeed powered portal without ever building Jetspeed itself.
+key components of the portal. To do so, we provide three custom build frameworks: one with Maven-1, the second with Maven-2, the third and newest with Ant and Eclipse.
+With the custom build, you can easily build and create your own Jetspeed powered portal without ever building Jetspeed itself.</p>
+<p>
 Many developers still prefer Maven-1. If you are new to Maven, then maybe its best to go with the new version (2).
 </p>
+<h3>Maven-2 Custom build</h3>
 <ul>
-<li><a href='http://portals.apache.org/jetspeed-2/getting-started-binary.html' target='_blank'>Building a Custom Portal with the Maven-1 Plugin</a></li>
 <li><a href='http://portals.apache.org/tutorials/jetspeed-2/' target='_blank'>Jetspeed Tutorial - Building a Custom Portal with the Maven-2 Plugin</a></li>
-<li><a href='http://portals.apache.org/jetspeed-2/j2-maven-plugin.html' target='_blank'>Maven-1 Plugin Documentation</a></li>
-<li><a href='http://wiki.apache.org/portals/Jetspeed2/Maven2BuildSupport' target='_blank'>Maven-2 Plugin Documentation</a></li>
+<li><a href='maven-2-custom.html' target='_blank'>Building a Custom Portal with the Maven-2 Plugin</a></li>
+</ul>
+<h3>Maven-1 Custom build</h3>
+<ul>
+<li><a href='getting-started-binary.html' target='_blank'>Building a Custom Portal with the Maven-1 Plugin</a></li>
+<li><a href='j2-maven-plugin.html' target='_blank'>Maven-1 Plugin Documentation</a></li>
+</ul>
+<h2>Building from Source</h2>
+<p>If you need to build the source, here are the guides:</p>
+<ul>
+<li><a href='maven-2-build.html' target='_blank'>Building Jetspeed from Source with Maven-2</a></li>
+<li><a href='getting-started-binary.html' target='_blank'>Building Jetspeed Source with Maven-1</a></li>
+
 </ul>
 <p>
 Jetspeed is built from the command line with Maven. However, you can still develop, compile, debug, remote debug, all from within Eclipse.
 Eclipse is a good tool for developing portlet applications as well as Jetspeed extensions.
 </p>
 <ul>
-<li><a href='http://portals.apache.org/jetspeed-2/jetspeed-eclipse.html' target='_blank'>Developing with Eclipse</a></li>
+<li><a href='jetspeed-eclipse.html' target='_blank'>Developing with Eclipse</a></li>
 </ul>
 <p>
 To get the binary installation of an official Jetspeed release, go here:
 </p>
 <ul>
-<li><a href='http://portals.apache.org/jetspeed-2/download.html' target='_blank'>Getting the Binary Installer</a></li>
+<li><a href='download.html' target='_blank'>Getting the Binary Installer</a></li>
 </ul>
 <p>
 You can checkout from the SVN HEAD from here:

Modified: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/faq.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/faq.xml?rev=606352&r1=606351&r2=606352&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/faq.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/faq.xml Fri Dec 21 16:20:35 2007
@@ -24,7 +24,108 @@
 		</authors>
 	</properties>
 	<body>
-		<section name="FAQs">
+		<section name="How do I create new users, roles, and groups?">
+		<p>There are several ways to create new users, roles and groups:</p>
+		<ul>
+		<li>With the administrative user/role/group browser/details portlets</li>
+		<li>With the self-registration portlet</li>
+		<li>With Jetspeed Seed Data</li>
+		<li>Programmatically, writing your own portlet</li>		
+		</ul>
+		<subsection name='Administrative Portlets'>
+		<p>Creating a new user with the Administrative portlets is easy:
+		</p>
+		<ul>
+		<li>Login as admin (the default password is admin)</li>
+		<li>From the LHS menu, navigate to the <b>Jetspeed Administrative Portlets</b> link</li>
+		<li>The User Management page is the first tab on the administrative menu across the top</li>
+		<li>Here you see the User Browser on the left, and the User Details on the right</li>
+		</ul>
+		<p>From here you can create a new user. Choose a unique username with no spaces. Then enter a secure password.
+		You can require the password to be changed on the first login. You can also select the default role assigned to this user,
+		as well as a default profiling rule. Last, you can assign this user to a subsite</p>
+		 <img src="images/add-user.png"/>
+		<p>Going into edit mode, you an further configure the User Details portlet. Note that the following fields can be defaulted:
+		</p>
+		<img src="images/add-user-editmode.png"/>		
+		<ul><li>Default Role for New User</li>
+		<li>Required Role for New User (not shown on view mode)</li>
+		<li>Default Profile for new user</li>
+		<li>New User Template Directory - leave blank to not use a template</li>
+		<li>Subsite Root Folder</li>
+		<li>Default Subsite for new user</li>
+		</ul>
+		<p>The User Details configuration is useful for delegated security scenarios. For example, setting up a User Management page for all users
+		with the <i>Developer</i> role. First, setup the User Browser preference to FilterByRole on <i>Developer</i>. Then you can assign a default role,
+		required role, new user template, and subsite area all for new developers, managed by a user with the <i>DeveloperManager</i> role. This user
+		then can create only developer type users complete with the correct roles and user templates. The edit mode of the User Details portlet can be
+		secured so that the global admin can only edit the configuration, limiting the development manager to only creating or deleting developers</p>
+		<p>The Group and Role administration pages work similarly to the User administration page. You can add/edit/delete both groups and roles</p>
+		</subsection>
+		<subsection name='Self-Registration portlet'>
+		<p>Users can also be created in the portal by the end user, requiring no administrative actions. Self-registration is probably one of the most customization
+		areas of the portal, as all portals have different requirements for self-registration. The self-registration portlet also has preferences that
+		can be configured by the administrator: 
+		<ul>
+		<li>A list of one or more groups</li>
+		<li>A list of one or more roles comma-separated</li>
+		<li>A subsite root folder</li>
+		<li>A boolean flag to send email notification or not</li>
+		<li>A new user template</li>
+		<li>Profiling rule names and values comma-seperated</li>
+		</ul>
+		</p>
+		</subsection>
+	<!-- 
+		<subsection name='Populating Users, Groups and Roles with XML Seed Data'>
+		<p>The <i>out of the box</i> default Users, Groups and Roles are originally populated into the Jetspeed Portal during the installation process as well as during the Jetspeed build.
+		There are specific targets in the build which populate the default <i>seed</i> data from XML files. The installer uses the same XML files to populate the seed data.
+		Lets take a look at what the seed data looks like for roles:
+		</p>
+		</subsection> 
+		<subsection name='Creating users, groups, roles programmatically'>
+		</subsection>
+		</section>
+		<section name='How do I create security constraints?'>
+		</section>
+		<section name='How do I create profiles?'>
+		<p>What happens if it fails in the Profiler Admin</p>
+		</section>
+		<section name='How do I debug decorators?'>
+		</section>
+		<section name='Where to debug when Jetspeed won’t get started?'>
+		</section>
+		<section name='What to do when Jetspeed does not show portlets that you have deployed?'>
+		</section>
+		<section name='How do I turn the feature to Clear All Window States and Portlet Modes when Navigating (changing) pages?'>
+			<ul>
+			<li>1. In pipelines.xml, edit the <b>pageHistoryValve</b> bean. Set the <b>valveDisabled</b> flag to false.</li>
+			<li>2. In portal-url-generation.xml, edit the <b>NavigationalState</b> bean. Modify the <b>NavigationalState</b>, changing the constructor-arg 3 to the boolean value true.
+			</li>
+			</ul>   			
+		</section>
+		<section name='How do I turn the feature to Maximize on Edit mode and Edit Defaults mode?'>
+			<ul>
+			<li></li>
+			<li>
+			</li>
+			</ul>   			
+		</section>
+		<section name='How do I turn the feature to Maximize on Edit mode, Edit Defaults and Configure modes?'>
+			<ul>
+			<li></li>
+			<li>
+			</li>
+			</ul>   			
+		</section>
+		<section name='How do I turn the feature - Auto-switching for Edit Defaults and Configure modes?'>
+			<ul>
+			<li></li>
+			<li>
+			</li>
+			</ul>   			
+		</section>
+		-->
 		</section>
 	</body>
 </document>

Added: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user-editmode.png
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user-editmode.png?rev=606352&view=auto
==============================================================================
Binary file - no diff available.

Propchange: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user-editmode.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user.png
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user.png?rev=606352&view=auto
==============================================================================
Binary file - no diff available.

Propchange: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/images/add-user.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Modified: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/index.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/index.xml?rev=606352&r1=606351&r2=606352&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/index.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/index.xml Fri Dec 21 16:20:35 2007
@@ -27,14 +27,14 @@
 	<body>
 		<section name="Welcome to Jetspeed-2">
 			<div id="downloadbox">
-				<h5>Get Jetspeed 2.1.2</h5>
+				<h5>Get Jetspeed 2.1.3</h5>
 				<p>
 					<a href="download.html">
 						<img valign="top" src="images/folder-open.gif"
 							border="0" alt="" title="download" />
 						Download
 					</a>
-					Jetspeed 2.1.2
+					Jetspeed 2.1.3
 					<small>(35MB)</small>
 				</p>
 				<ul>
@@ -95,8 +95,8 @@
 			</subsection>
 			<subsection name="Jetspeed-2 Status">
 				<p>
-					The latest 2.1.2 production release of Jetspeed-2 was released
-					on July 14, 2007.  Future development areas include alignment with the upcoming
+					The latest 2.1.3 production release of Jetspeed-2 was released
+					on December 21, 2007.  Future development areas include alignment with the upcoming
 					<a href="http://www.jcp.org/en/jsr/detail?id=286">Java Portlet Standard 2.0, JSR-286</a>
 				    new portlet applications, WSRP support, further improvement of the design and user experience.
 				</p>

Modified: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/jetspeed-eclipse.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/jetspeed-eclipse.xml?rev=606352&r1=606351&r2=606352&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/jetspeed-eclipse.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/jetspeed-eclipse.xml Fri Dec 21 16:20:35 2007
@@ -36,10 +36,10 @@
                 Eclipse provides a .classpath GUI editor from the Project->Properties menu option. 
             </p>
 			</subsection>
-			<subsection name="JAR files and the Maven repository">
+			<subsection name="JAR files and the Maven-1 repository">
 				<p>
                   Jetspeed requires quite a few JAR files to be able to compile.
-                  The .classpath file that comes with Jetspeed is setup to get its JAR files out of a local Maven repository.
+                  The .classpath file that comes with Jetspeed is setup to get its JAR files out of a local Maven-1 repository.
                   You can see all the JAR file dependencies from Eclipse. Go to Project->Properties->Java Build Path->Libraries.
                   Notice all the JAR files are configured as VARIABLE library entries.
                   Take one example: 
@@ -49,16 +49,42 @@
                   The Variable is portion is MAVEN_REPO.
                   The Extension portion is /commons-lang/jars/commons-lang-2.0.jar
                   Eclipse locates the JAR dependency from a Variable location root.
-                  In order for this classpath to work correctly, the variable root is dependent on a Maven-1 local repository file structure.
+                  In order for this classpath to work correctly, the variable root is dependent on a Maven-1 local repository file structure.                  
 				</p>
 				<p>
                     To configure the MAVEN_REPO variable, go to Window->Preferences->Java->Build Path->Classpath Variables,
                     click on New, and define a new variable named MAVEN_REPO, pointing it out the root of your local Maven-1 repository,
-                    usually someplace like your $$HOME/.maven/repository
+                    usually someplace like your $HOME/.maven/repository. 
 				</p>
 			</subsection>
+			<subsection name="JAR files and the Maven-2 repository">
+			   <p>The same procedure applies for working a local Maven-2 repository. 
+			   We provide an alternative .classpath file found in the source code under <b>etc/editors/m2.classpath</b>.
+			   Copy m2.classpath over the .classpath file in the project root.
+			   </p>
+			   <p>This classpath requires a different Eclipse classpath variable: M2_REPO.
+			   To configure the M2_REPO variable, go to Window->Preferences->Java->Build Path->Classpath Variables,
+                    click on New, and define a new variable named MAVEN_REPO, pointing it out the root of your local Maven-2 repository,
+                    usually someplace like your $HOME/.m2/repository. 
+               </p>
+			</subsection>
 		</section>
-		<section name="Debugging with Eclipse">
+		<section name="Debugging with Eclipse and Tomcat">
+		<p>Remote debugging of the Jetspeed Portal running on Tomcat requires that you start Tomcat up with debugging enabled.
+		Here is a shell script that can be used to debug:
+		</p>
+<source><![CDATA[
+export JPDA_TRANSPORT=dt_socket
+export JPDA_ADDRESS=8000
+./catalina.sh jpda start
+]]></source>
+<source><![CDATA[
+<p>A DOS script:</p>
+set JPDA_TRANSPORT=dt_socket
+set JPDA_ADDRESS=8000
+catalina jpda start
+]]></source>		
+<p>From there, just follow the Eclipse documentation on how to remotely debug.</p>
         </section>
 	</body>
 </document>

Added: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-build.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-build.xml?rev=606352&view=auto
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-build.xml (added)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-build.xml Fri Dec 21 16:20:35 2007
@@ -0,0 +1,248 @@
+<?xml version="1.0"?>
+<!--
+	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.
+-->
+<document>
+	<properties>
+		<title>
+			Building Jetspeed 2.1.x from Source with Maven-2
+		</title>
+		<subtitle>How-to for Building from Source with Maven-2 and Jetspeed 2.1.x</subtitle>
+		<authors>
+			<person name="David Sean Taylor" email="taylor@apache.org" />
+		</authors>
+	</properties>
+	<body>
+		<section name="Building Jetspeed 2.1.x from Source with Maven-2">
+			<subsection name="Overview">
+            <p>
+           The Maven2 build support is currently under development and is co-resident with the existing Maven1 build scripts and sources. 
+           The general strategy is to make heavy use of Ant from within the Maven2 build or as Ant Tasks/Ant Maven2 Plugins if required. 
+           For this reason, the Maven2 build can be found in the pom.xml and build.xml files throughout the Jetspeed2 source tree. 
+           As with the Maven1 build, it is a multi-module build, primarily following the J2 component and application subprojects. 
+           There are also two Maven2 build specific top level subprojects: ant-tasks and maven-archetypes.            
+            </p>
+            <p>
+            The development team is actively keeping both environments up to date, 
+            but the Maven2 build modifications may lag behind newly committed changes. 
+            At the moment, Maven2 does not build all LDAP related artifacts and it does not build the uberjar/classworlds executable jar files 
+            for the deploy tool. Otherwise it is generally complete, (at least AFAIK).
+            </p>
+            <p>
+            Maven 2.0.4 and the accompanying Ant artifact tasks are now being used for this effort, 
+            with an upgraded surefire plugin version, (2.1.3). If you wish to use the Maven2 build, 
+            please ensure that maven 2.0.4 is installed and in your path.
+             Due to modifications in the pom.xml files, earlier versions of maven will not work correctly.
+             </p>
+			</subsection>
+			<subsection name="Future Directions: 2.2">
+				<p>This Maven2 build will be deprecated in 2.2, and replaced with a new Maven2 build.
+				The Maven1 build will be completely dropped in 2.2
+				</p>
+			</subsection>
+			<subsection name="The first step in using Maven2">
+			<p>The first step in using the Maven2 build is to either:
+				<ul>
+				<li>copy the settings.xml.sample to ~/.m2/settings.xml</li>
+      			<li>--or--</li>
+                <li>encorporate the settings in this file into your existing Maven2 configuration.</li>
+                </ul>
+            </p>
+            </subsection>
+			<subsection name="Properties Customization">
+			<p>
+	Once in place, please customize the properties as one would have done for Maven1 using build.properties. 
+	The properties are preconfigured for embedded Derby, so more changes are required if another database solution is to be used. 
+	To complete this step, ensure that the proper jetspeed database active profile is uncommented for your database in
+	 the &lt;activeProfiles&gt; element <b>jetspeed-db-drivers-path</b> should be selected for all non-embedded databases. 
+	 This setting is needed to execute Jetspeed component tests.			
+			</p>
+			</subsection>
+			<subsection name="Repository Relocation">
+			<p>
+While the default location of the settings.xml file should not be changed, (e.g. ~/.m2/settings.xml), 
+one can relocate the repository using the &lt;localRepository&gt; element in the settings.xml file. 
+See the settings.xml.sample file for an example. 
+Note that the repository path must be an absolute path and not contain any property expressions.			
+			</p>
+			</subsection>
+			<subsection name="Overview of current Jetspeed2 Maven2 commands">
+			<p>
+			Here is a quick summary of the current Jetspeed2 Maven2 build commands, 
+			(most of these commands can be executed at the root of the J2 source tree or at lower levels to perform partial builds/deployments):
+			</p>
+<table>
+<tbody><tr>
+<td>
+<p> <strong><tt>commands</tt></strong> </p>
+</td>
+<td>
+
+<p> <strong><tt>explanation</tt></strong> </p>
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn</tt></strong> </p>
+</td>
+<td>
+<p> performs base build and installs J2 artifacts in the Maven2 repository, (install is the default Maven2 goal for this build)</p>
+
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn -P test</tt></strong> </p>
+</td>
+<td>
+<p> performs base build and includes execution of test cases, (includes test database setup) </p>
+</td>
+</tr>
+
+<tr>
+<td>
+<p> <strong><tt>mvn -P tomcat</tt></strong> </p>
+</td>
+<td>
+<p> performs base build and deploys to Tomcat app server, (includes prodution database setup). Other app servers will be supported in the future, (see below for details)</p>
+</td>
+</tr>
+<tr>
+<td>
+
+<p> <strong><tt>mvn clean</tt></strong> </p>
+</td>
+<td>
+<p> cleans all build target directories </p>
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>other commands</tt></strong> </p>
+
+</td>
+<td>
+<p> explanation </p>
+</td>
+</tr>
+</tbody></table>						
+<p><i>Please note that the Maven2 repositories used by default with this build are generally saturated and the Jetspeed2 Maven2 
+repository does not yet contain a full mirror of the artifacts required to build Jetspeed2. If you experience download or connection failures,
+ simply restart the build by issuing your last command again to retry.
+ </i></p>			
+		</subsection>
+		<subsection name='Additional Notes'>
+		<ul>
+		<li><b>mvn -P test</b> and <b>mvn -Dmaven.test.skip=false</b> are equivalent.</li>
+		<li><b>mvn -P test -Dtest=MyTest</b> will execute a single test or matching tests if Ant wildcards are used. </li>		
+		<li>Due to forking bugs in the Surefire Maven2 test runner plugin, test output, (e.g. System.out.println()), is not echoed to the build shell. If you wish to see console output for component tests, temporarily comment out the &lt;forkMode&gt;
+		 elements in the components/pom.xml and the components pom.xml and run single tests. Note: the forking is required to run multiple tests. 
+        </li>
+        <li><p> The <strong><tt>-o</tt></strong> offline option can be specified with the commands documented here to force Maven2 to use only the local repository. This can be invaluable in the event the main Maven2 repositories are down and the build insists upon validating a missing or troublesome POM. </p>
+       </li>
+		</ul>
+		<p>
+		</p>
+		</subsection>	
+		</section>
+		<section name='Maven Profiles'>
+<p>the following profiles are optional and can be supplied when building/deploying to Tomcat </p>
+<div>
+<table>
+
+<tbody><tr>
+<td>
+<p> <strong><tt>mvn -P tomcat,min</tt></strong> </p>
+</td>
+<td>
+<p> specified that only the administrative portlets be deployed along with a minimal set of PSML pages.</p>
+</td>
+</tr>
+<tr>
+<td>
+
+<p> <strong><tt>mvn -P tomcat,full</tt></strong> </p>
+</td>
+<td>
+<p> at the moment, this is the same as the default build: deploys a full J2 set of portlets and PSML pages.</p>
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn -P tomcat,nodb</tt></strong> </p>
+
+</td>
+<td>
+<p> specifies that configuration of the production database should be skipped.</p>
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn -P tomcat,hot</tt></strong> </p>
+</td>
+<td>
+
+<p> indicates that a portlet app, component, or content should be directly written to the deployed Jetspeed2 webapp.</p>
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn -P tomcat,dbpsml</tt></strong> </p>
+</td>
+<td>
+<p> specifies portal build and database deployment/import to include configuration of database PSML.</p>
+
+</td>
+</tr>
+<tr>
+<td>
+<p> <strong><tt>mvn -P prod</tt></strong> </p>
+</td>
+<td>
+<p> executes deployment to application server specified in settings.xml, (see below).</p>
+</td>
+</tr>
+
+</tbody></table>
+</div>
+<p>Currently, only Tomcat 5 and Tomcat 5.5 application servers are supported by this build. More platforms are to be supported in the near future. To do so, additional deployment profiles and new app-servers Ant deployment build files will need to be added. See the following files for details: </p>
+<ul>
+<li><p> <tt>pom.xml</tt>, </p>
+</li>
+<li><p> <tt>app-servers/tomcat-build.xml</tt>, </p>
+</li>
+<li><p> <tt>maven-archetypes/portal/src/archetype/archetype-resources/pom.xml</tt>, and </p>
+
+</li>
+<li><p> <tt>maven-archetypes/portal/src/archetype/archetype-resources/app-servers/tomcat-build.xml</tt>. </p>
+</li>
+</ul>		
+		<subsection name='Use case for some additional profiles:'>
+<p>Some of the additional profiles make sense to preconfigure in your settings.xml, (see the settings.xml.sample file for syntax) </p>
+<ul>
+<li><p> <tt>org.apache.jetspeed.env.deploy.target</tt>, application server to deploy to. Setting this property allows one to use the generic <strong><tt>prod</tt></strong> profile. </p>
+
+</li>
+<li><p> <tt>org.apache.jetspeed.env.deploy.type</tt>, set to <tt>full</tt> or <tt>min</tt>. Takes the place of the <strong><tt>full</tt></strong> and <strong><tt>min</tt></strong> profiles. </p>
+</li>
+
+<li><p> <tt>org.apache.jetspeed.env.deploy.db.psml</tt>, set to <tt>true</tt> or <tt>false</tt>. Equivalent to using <strong><tt>dbpsml</tt></strong> if enabled. </p>
+</li>
+</ul>		
+		</subsection>
+		</section>
+	</body>
+</document>

Added: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-custom.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-custom.xml?rev=606352&view=auto
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-custom.xml (added)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/maven-2-custom.xml Fri Dec 21 16:20:35 2007
@@ -0,0 +1,257 @@
+<?xml version="1.0"?>
+<!--
+	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.
+-->
+<document>
+	<properties>
+		<title>
+			Building a Custom Jetspeed 2.1.x Project with Maven-2
+		</title>
+		<subtitle>How-to for Building a Custom Portal with Maven-2 and Jetspeed 2.1.x</subtitle>
+		<authors>
+			<person name="David Sean Taylor" email="taylor@apache.org" />
+		</authors>
+	</properties>
+	<body>
+		<section name="How-to for Building a Custom Portal with Maven-2 and Jetspeed 2.1.x">
+			<subsection name="Custom Portal Generation">
+            <p>
+The Maven1 j2:portal.genapp goal has been supported in the Maven2 build as an archetype.
+ However, until a Jetspeed2 Maven2 repository is completely populated, a normal Maven2 build must be completed to make Jetspeed2 archetypes 
+ available in your local repository. One can tweak the following command as needed to create a Jetspeed2 instance using this archetype:
+            </p>
+            <p><b>
+ mvn archetype:create -DarchetypeGroupId=org.apache.portals.jetspeed-2 -DarchetypeArtifactId=portal-archetype -DarchetypeVersion=2.1-3 -DgroupId=myportalgroup -DartifactId=myportal -Dversion=1.0
+            </b>
+            </p>
+			</subsection>
+			<subsection name="Custom Portal Directory Structure Conventions">
+			<p>
+Note that this and other archetypes can issue many harmless warnings while expanding. 
+Please ignore the warnings unless the expansion of the archetype template fails. When complete, the portal archetype expansion will contain the following structure
+ within a directory named as the specified artifactId relative to the current working directory:			
+ 			</p>
+<ul>
+<li><p><tt>&lt;artifactId&gt;/applications</tt> - conventional subdirectory for portal application war modules. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/app-servers</tt> - contains portal deployment builds and resources. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/components</tt> - conventional subdirectory for portal component jar modules. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/assembly</tt> - custom portal application component Spring assemblies. </p>
+
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/conf</tt> - portal application context configuration files. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/decorations</tt> - custom decorations in images, layout, and portlet subdirectories. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/pages</tt> - custom portal PSML pages to augment/override minimal defaults, (e.g. /Administrative/**, /default-page.psml, /myaccount.psml, /page.security, and /system/**). </p>
+
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/schema</tt> - Jetspeed2 database schema definitions. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/sql</tt> - Jetspeed2 base database configuration scripts. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/templates</tt> - custom overrides for Jetspeed2 layout portlet templates. </p>
+
+</li>
+<li><p> <tt>&lt;artifactId&gt;/etc/webapp</tt> - custom content reaources to be packaged with portal application. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/portal</tt> - portal application war build scripts and webapp resource overrides. </p>
+</li>
+<li><p> <tt>&lt;artifactId&gt;/src</tt> - these directories are an artifact of archetype expansion and should be deleted. </p>
+
+</li>
+</ul> 			
+			</subsection>
+			<subsection name='Configuration'>
+<p>The archetype also contains a settings.xml.sample that is a subset of the Jetspeed2 source build parameters. 
+If one has not previously configured the ~/.m2/settings.xml file as described above, this sample can be used to do so without J2 test configurations. </p>
+<p>When the Maven2 enviroment is properly configured, the J2 Maven2 commands outlined above can now be used to build and deploy a customized portal.
+ Most of the command options are supported with the exception of these profiles: </p>
+<ul>
+<li><p> <strong><tt>min</tt></strong> and <strong><tt>full</tt></strong> are not supported because the archetype supports only the minimal deployment. </p>
+</li>
+<li><p> <strong><tt>test</tt></strong> features to populate the J2 test database have also been provisionally stripped from the archetype. </p>
+</li>
+<li><p> <strong><tt>dbpsml</tt></strong> is not yet supported in the custom portal build to import to the production database PSML. </p>
+</li>
+</ul>
+<p>Currently, only Maven2 builds are supported. Longer range goals include support for Ant custom portal builds and prepackaged Maven2 repository downloads. </p>
+<p>Two additional Maven2 archetypes are also available to generate custom portal applications and components on top of the generated portal template. Before these archetypes are used, the host portal archetype should have been previously built to install all parent POMs, (it is not necessary to deploy the portal before using these archetypes). These archetypes should be created from the applications and components subdirectories to work correctly. </p>
+	</subsection>
+	<subsection name='Archetype Commands'>
+<p>A portal portlets application to be deployed by Jetspeed2: </p>
+<p><strong><tt>mvn archetype:create -DarchetypeGroupId=org.apache.portals.jetspeed-2 -DarchetypeArtifactId=application-archetype -DarchetypeVersion=2.1-dev -DgroupId=myportalgroup -DartifactId=myportal-application -Dversion=1.0</tt></strong> </p>
+<p>A simple component to be used by other component and application modules: </p>
+<p><strong><tt>mvn archetype:create -DarchetypeGroupId=org.apache.portals.jetspeed-2 -DarchetypeArtifactId=component-archetype -DarchetypeVersion=2.1-dev -DgroupId=myportalgroup -DartifactId=myportal-component -Dversion=1.0</tt></strong> </p>
+
+<p>A shared component to be deployed as a shared JAR in the application server: </p>
+<p><strong><tt>mvn archetype:create -DarchetypeGroupId=org.apache.portals.jetspeed-2 -DarchetypeArtifactId=shared-component-archetype -DarchetypeVersion=2.1-dev -DgroupId=myportalgroup -DartifactId=myportal-shared-component -Dversion=1.0</tt></strong> </p>
+<p>A component to be deployed within the portal, (Jetspeed2), web application: </p>
+<p><strong><tt>mvn archetype:create -DarchetypeGroupId=org.apache.portals.jetspeed-2 -DarchetypeArtifactId=portal-component-archetype -DarchetypeVersion=2.1-dev -DgroupId=myportalgroup -DartifactId=myportal-portal-component -Dversion=1.0</tt></strong> </p>
+
+<p><em>Note that the groupId and version settings should match the values used when generating the host portal template.</em> </p>
+</subsection>
+<subsection name='Maven POM Configuration'>
+<p>There are a few manual steps that must be followed to use these created applications and components. </p>
+<ul>
+<li><p>The new application/component must be added as &lt;module&gt; elements in the parent POM. An application would be added like this by subdirectory name, (artifactId):
+</p>
+<pre>&lt;modules&gt;
+    ...
+    &lt;module&gt;myportal-application&lt;/module&gt;
+
+    ...
+&lt;/modules&gt;
+</pre>
+<p>The same syntax is used for components.</p>
+</li>
+<li class="gap"><p>A dependency declaration should be added in the root POM. Components packaged as jars should be added like this:
+</p>
+<pre>&lt;dependencyManagement&gt;
+    &lt;dependencies&gt;
+        ...
+        &lt;dependency&gt;
+
+            &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+            &lt;artifactId&gt;myportal-component&lt;/artifactId&gt;
+            &lt;version&gt;${pom.version}&lt;/version&gt;
+        &lt;/dependency&gt;
+
+        ...
+    &lt;/dependencies&gt;
+&lt;/dependencyManagement&gt;
+</pre>
+<p>Applications are declared similarly, except for the addition of a required &lt;type&gt; element:
+</p>
+<pre>&lt;dependencyManagement&gt;
+    &lt;dependencies&gt;
+
+        ...
+        &lt;dependency&gt;
+            &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+            &lt;artifactId&gt;myportal-application&lt;/artifactId&gt;
+            &lt;type&gt;war&lt;/type&gt;
+
+            &lt;version&gt;${pom.version}&lt;/version&gt;
+        &lt;/dependency&gt;
+        ...
+    &lt;/dependencies&gt;
+&lt;/dependencyManagement&gt;
+</pre>
+</li>
+<li class="gap"><p>These dependencies can now be used to include the applications and components into the build process. Components are added as included dependencies to other applications and components in individual POMs associated with the modules that reference the component:
+
+</p>
+<pre>&lt;dependencies&gt;
+    ...
+    &lt;dependency&gt;
+        &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+        &lt;artifactId&gt;myportal-component&lt;/artifactId&gt;
+
+    &lt;/dependency&gt;
+    ...
+&lt;/dependencies&gt;
+</pre>
+<p>Shared components that are intended to be deployed as a shared JAR should be declared as a provided dependency in the applications POM or individual application and component POMs, (note the additional provided &lt;scope&gt; element):
+</p>
+<pre>&lt;dependencies&gt;
+    ...
+    &lt;dependency&gt;
+
+        &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+        &lt;artifactId&gt;myportal-shared-component&lt;/artifactId&gt;
+        &lt;scope&gt;provided&lt;/scope&gt;
+    &lt;/dependency&gt;
+
+    ...
+&lt;/dependencies&gt;
+</pre>
+<p>Shared and portal components must also be made available for deployment and should be integrated in the app-servers module POM as a normal dependency:
+</p>
+<pre>&lt;dependencies&gt;
+    ...
+    &lt;dependency&gt;
+        &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+
+        &lt;artifactId&gt;myportal-shared-component&lt;/artifactId&gt;
+    &lt;/dependency&gt;
+    ...
+&lt;/dependencies&gt;
+</pre>
+<p>Applications are normally referenced only for deployment. To ensure they are available during deployment builds, they must be integrated in the app-servers module POM like this:
+</p>
+<pre>&lt;dependencies&gt;
+
+    ...
+    &lt;dependency&gt;
+        &lt;groupId&gt;${pom.groupId}&lt;/groupId&gt;
+        &lt;artifactId&gt;myportal-application&lt;/artifactId&gt;
+        &lt;type&gt;war&lt;/type&gt;
+
+    &lt;/dependency&gt;
+    ...
+&lt;/dependencies&gt;
+</pre>
+</li>
+<li class="gap"><p>Finally, the new applications and components must be added to the app-servers deployment Ant buildfiles. Applications should be added to the 'hot' application/WAR deployment hooks in the application server specific build files, (e.g. tomcat-build.xml):
+</p>
+<pre>&lt;target name="hot-deploy-apps"&gt;
+    ...
+    &lt;antcall target="hot-deploy-war"&gt;
+
+        &lt;param name="org.apache.jetspeed.deploy.groupid" value="${portal.groupid}"/&gt;
+        &lt;param name="org.apache.jetspeed.deploy.artifactid" value="myportal-application"/&gt;
+        &lt;param name="org.apache.jetspeed.deploy.version" value="${portal.version}"/&gt;
+    &lt;/antcall&gt;
+    ...
+&lt;/target&gt;
+</pre>
+
+<p>Shared components that are to be installed in the application server should be added to the shared deployment hook in the same buildfile:
+</p>
+<pre>&lt;target name="hot-deploy-shared-components"&gt;
+    ...
+    &lt;antcall target="hot-deploy-shared-jar"&gt;
+        &lt;param name="org.apache.jetspeed.deploy.groupid" value="${portal.groupid}"/&gt;
+        &lt;param name="org.apache.jetspeed.deploy.artifactid" value="myportal-shared-component"/&gt;
+        &lt;param name="org.apache.jetspeed.deploy.version" value="${portal.version}"/&gt;
+
+    &lt;/antcall&gt;
+    ...
+&lt;/target&gt;
+</pre>
+<p>And finally, portal components that are to be inserted into the portal application itself should be added to the 'hot' component/JAR hooks like this:
+</p>
+<pre>&lt;target name="hot-deploy-components"&gt;
+    ...
+    &lt;antcall target="hot-deploy-jar"&gt;
+        &lt;param name="org.apache.jetspeed.deploy.groupid" value="${portal.groupid}"/&gt;
+
+        &lt;param name="org.apache.jetspeed.deploy.artifactid" value="myportal-portal-component"/&gt;
+        &lt;param name="org.apache.jetspeed.deploy.version" value="${portal.version}"/&gt;
+    &lt;/antcall&gt;
+    ...
+&lt;/target&gt;
+</pre>
+</li>			
+</ul>
+<p>Please refer to the Maven2 site documentation for more detail or background information: <a href='http://maven.apache.org/guides/index.html'>Maven-2 Docs</a></p>
+			</subsection>
+		</section>
+	</body>
+</document>

Modified: portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/navigation.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/navigation.xml?rev=606352&r1=606351&r2=606352&view=diff
==============================================================================
--- portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/navigation.xml (original)
+++ portals/jetspeed-2/branches/JETSPEED-2.1.3/xdocs/navigation.xml Fri Dec 21 16:20:35 2007
@@ -29,17 +29,20 @@
         	<item name="Jetspeed for Developers" href="developers.html" />          
         </menu>
     	<menu name="Building">
-    	    <item name="From Source" href="getting-started-source.html" />
-    	    <item name="From Maven Plugin" href="getting-started-binary.html" />
+    	    <item name="From Source with Maven-2" href="maven-2-build.html" />
+    	    <item name="From Maven-2 Plugin" href="maven-2-custom.html" />    	    
+    	    <item name="From Source with Maven-1" href="getting-started-source.html" />
+    	    <item name="From Maven-1 Plugin" href="getting-started-binary.html" />
     	    <item name="From Eclipse" href="jetspeed-eclipse.html" />            
     	</menu>
-    	<menu name="Get Jetspeed-2.1.2">
+    	<menu name="Get Jetspeed-2.1.3">
     		<item name="Download" href="download.html" />
     		<item name="Release Notes" href="release-notes.html" />
     	</menu>
     	<menu name="Documentation">
     		<item name="Documentation Guides" href="guides/index.html" />
-    		<item name="Jetspeed Tutorial" href="http://portals.apache.org/tutorials/jetspeed-2/" />
+    		<item name="Jetspeed Tutorial - Maven-2 Custom Build" href="http://portals.apache.org/tutorials/jetspeed-2/" />
+    		<item name="Jetspeed Tutorial - Ant Custom Build (incomplete)" href="http://portals.apache.org/tutorials/jetspeed-2-ant/" />
     		<item name="Jetspeed-2 API" href="http://portals.apache.org/jetspeed-2/multiproject/jetspeed-api/apidocs/index.html" />
     		<item name="Jetspeed-2 Plugin" href="j2-maven-plugin.html" />    		
     	</menu>
@@ -56,6 +59,7 @@
             <item name="Bug Database" href="issue-tracking.html" />
             <item name="Wiki" href="http://wiki.apache.org/portals/Jetspeed2" />
             <item name="Quality Testing" href="quality-testing.html" />
+            <item name='FAQ' href='faq.html'/>
         </menu>
         <menu name="Translation"> 	
             <item name="Japanese" href="http://jetspeed-japan.sourceforge.jp/jetspeed-2-trans/ja/index.html" />



---------------------------------------------------------------------
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