Return-Path: Delivered-To: apmail-portals-jetspeed-dev-archive@www.apache.org Received: (qmail 97365 invoked from network); 23 Feb 2009 23:34:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Feb 2009 23:34:04 -0000 Received: (qmail 70743 invoked by uid 500); 23 Feb 2009 23:34:04 -0000 Delivered-To: apmail-portals-jetspeed-dev-archive@portals.apache.org Received: (qmail 70475 invoked by uid 500); 23 Feb 2009 23:34:02 -0000 Mailing-List: contact jetspeed-dev-help@portals.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Jetspeed Developers List" Delivered-To: mailing list jetspeed-dev@portals.apache.org Received: (qmail 70464 invoked by uid 99); 23 Feb 2009 23:34:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 Feb 2009 15:34:02 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 Feb 2009 23:33:57 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id C4C7D23888A3; Mon, 23 Feb 2009 23:33:35 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r747213 [1/2] - in /portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2: ./ 01/ 02/ 03/ 04/ 05/ images/ Date: Mon, 23 Feb 2009 23:33:33 -0000 To: jetspeed-dev@portals.apache.org From: taylor@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090223233335.C4C7D23888A3@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: taylor Date: Mon Feb 23 23:33:30 2009 New Revision: 747213 URL: http://svn.apache.org/viewvc?rev=747213&view=rev Log: eoln Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/tutorial-psml.xml (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/eclipse-classpath.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/eclipse-classpath2.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/eclipse-classpath3.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/import-project.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/import-project2.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/jetexpress-desktop.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/jetexpress-portal.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-home.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/site.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/svn2.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/svn3.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/theme.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/tigris-page.png (with props) portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/tigris-portlet.png (with props) Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/project-directory.xml Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,67 @@ + + + + + Build the Custom Portal + Building a Custom Jetspeed Portal + + + + + +
+

+ Now that you have generated a custom portal named jetexpress, we are ready to build the portal. + We are going to build the portal from the command line: +

+ + + +

+ Please take note that there is no space between the comma and the word min +

+

+ We are building a min (minimal) deployment. The Min deployment only creates a Jetspeed core portal and a Jetspeed Admin portlet application (j2-admin). + When the build process completes, you should see the message BUILD SUCCESSFUL at the end of a large amount of build logging information + The portal is built into a temp directory named target found directory under your jetexpress project directory. + As well as building, the tomcat,min goals also: +

+
    +
  • deploys Jetspeed to the Tomcat application server. If you are following the training material, + the Tomcat directory is located under /JetspeedTraining/tomcat-express/
  • +
  • creates the Jetspeed core schema tables in the Derby database
  • +
  • populates the database with a minimal set of portal information, including default roles, groups, profiles, and administrative users
  • +
+

+ Now that we've built and deployed the portal, lets start up the application server... +

+

+ Previous Next +

+
+ +
+ Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/build-it.xml ------------------------------------------------------------------------------ svn:keywords = Id Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml?rev=747213&r1=747212&r2=747213&view=diff ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml (original) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml Mon Feb 23 23:33:30 2009 @@ -1,102 +1,102 @@ - - - - - Maven First Steps - Custom Project First Steps - - - - - -
-

- Minimal configuration is required to get started with your Jetspeed custom build and Maven-2. -

- -

- The first step to building with Maven-2 is to setup your settings.xml. - These settings hold all the information necessary to build with Maven-2 and Jetspeed. -

-

There is a settings.xml.jetexpress file in the /JetspeedTraining/resources/maven/ directory. - Copy this file into your Maven Home directory. The Maven home directory - is located in a directory named .m2 found under your User Home directory. - So for example that would be ~/.m2/ on Linux, or "%USERPROFILE%\.m2\" on Windows. -

-

- Linux: paste into Command Line: - - -

-

- Windows: paste into Command Line: - - -

-
- -

- The settings file is primarily for configuring your application server and database. - The settings are preconfigured for an embedded Derby database, so more changes are required - if another database solution is to be used, covered later in this tutorial. -

-

- Edit the ~/.m2/settings.xml file. -

-
- -

- For the purpose of the training, lets all use the same Tomcat home, point it to the /JetspeedTraining/tomcat-express directory. -

- - c:/JetspeedTraining/tomcat-express - ]]> - -
- -

- Next, lets change the location of our Derby database to the /JetspeedTraining/database/jetexpress directory. -

- - jdbc:derby:/JetspeedTraining/database/jetexpress - ]]> - -
- -

- Change the Maven local repository location by modifying the <localRepository> - element in the settings.xml file. If you are using the training material, we have pre-configured - a Maven-2 repository /JetspeedTraining/maven/repository. Lets configure Maven to point there, - edit the settings.xml: -

- - c:/JetspeedTraining/maven/repository/ - ]]> - -

Go on and save that file.

-
-

- Next -

-
- -
- + 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. +--> + + + Maven First Steps + Custom Project First Steps + + + + + +
+

+ Minimal configuration is required to get started with your Jetspeed custom build and Maven-2. +

+ +

+ The first step to building with Maven-2 is to setup your settings.xml. + These settings hold all the information necessary to build with Maven-2 and Jetspeed. +

+

There is a settings.xml.jetexpress file in the /JetspeedTraining/resources/maven/ directory. + Copy this file into your Maven Home directory. The Maven home directory + is located in a directory named .m2 found under your User Home directory. + So for example that would be ~/.m2/ on Linux, or "%USERPROFILE%\.m2\" on Windows. +

+

+ Linux: paste into Command Line: + + +

+

+ Windows: paste into Command Line: + + +

+
+ +

+ The settings file is primarily for configuring your application server and database. + The settings are preconfigured for an embedded Derby database, so more changes are required + if another database solution is to be used, covered later in this tutorial. +

+

+ Edit the ~/.m2/settings.xml file. +

+
+ +

+ For the purpose of the training, lets all use the same Tomcat home, point it to the /JetspeedTraining/tomcat-express directory. +

+ + c:/JetspeedTraining/tomcat-express + ]]> + +
+ +

+ Next, lets change the location of our Derby database to the /JetspeedTraining/database/jetexpress directory. +

+ + jdbc:derby:/JetspeedTraining/database/jetexpress + ]]> + +
+ +

+ Change the Maven local repository location by modifying the <localRepository> + element in the settings.xml file. If you are using the training material, we have pre-configured + a Maven-2 repository /JetspeedTraining/maven/repository. Lets configure Maven to point there, + edit the settings.xml: +

+ + c:/JetspeedTraining/maven/repository/ + ]]> + +

Go on and save that file.

+
+

+ Next +

+
+ +
+ Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,62 @@ + + + + + Generating a Jetspeed Portal + Using Maven to Generate a Custom Jetspeed Portal + + + + + +
+

+ To create a new custom portal named jetexpress, enter the following commands: +

+ + + +

+ Paste into Command Line: + +

+

+ A directory named jetexpress under /JetspeedTraining/workspace should have been created. + Notice that jetexpress will be the name of your portal, not jetspeed. The idea is that you + can create a customized portal based upon Jetspeed, but with a different name, customized to meet your organization requirements. +

+

+ Previous Next +

+
+ +
+ Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/genapp.xml ------------------------------------------------------------------------------ svn:keywords = Id Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,61 @@ + + + + + Customization + Decorator and Theme Customization + + + + + +
+

+ Now that we have created our custom Jetspeed project, lets start customizing the portal design. + The portal design, or skins, are known in Jetspeed as decorators and themes. + With decorators and themes, you can customize the portal experience to the branding of your + organization. In this tutorial, we will simply change a few images, CSS styles and colors to get + you on your way. +

+

+ It is important to note that all of the changes made in this section + are made in the build environment. The changes we are making here could just as easily + be made using the portal's live customization features. For example, you can drop a decorator + or theme into the portal while its running. Jetspeed will pick it up automatically. Or, to + customize a page, you can use the portlet customizer or desktop customizer, portlet selector, + and site manager: all administrative portlets that work on your live portal. However, the point of + configuring everything in a Maven build is to be able to easily reproduce portal environments + for development, testing, and new deployments. +

+

+ This section of the tutorial covers customizing: +

    +
  • Portal Skins (or Decorators). We replace the default logo, colors, and page header and footers with our own. +
  • +
  • Portal Themes. Same as Portal Skins, but themes apply to the Jetspeed Desktop. +
  • +
  • Configuring the default portal page to use these new decorators and themes
  • +
+

+

Lets get started with customization of the default portal page decoration

+

+ Previous Next +

+
+ +
\ No newline at end of file Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/customizing-overview.xml ------------------------------------------------------------------------------ svn:keywords = Id Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml?rev=747213&r1=747212&r2=747213&view=diff ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml (original) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml Mon Feb 23 23:33:30 2009 @@ -1,65 +1,65 @@ - - - - - Default Page - Modifying the Default Page - - - - - -
-

- Now that we have created our decorators and themes, lets put them to use on the default page. - Lets get started with customization of the default portal page decoration. Copy in our - sample default-page:

- - - -

Refresh your Eclipse project and edit the default-page.psml. - Make the following modifications -

    -
  • for the layout-decorator, replace tigris with express-page
  • -
  • for the portlet-decorator, replace tigris with express-portlet
  • -
  • add a skin default attribute as skin="express" for the desktop theme
  • -
-

- - - - ]]> - -

Go ahead and save that file. We are now ready to deploy your changes to the portal

-

- Previous Next -

-
- + 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. +--> + + + Default Page + Modifying the Default Page + + + + + +
+

+ Now that we have created our decorators and themes, lets put them to use on the default page. + Lets get started with customization of the default portal page decoration. Copy in our + sample default-page:

+ + + +

Refresh your Eclipse project and edit the default-page.psml. + Make the following modifications +

    +
  • for the layout-decorator, replace tigris with express-page
  • +
  • for the portlet-decorator, replace tigris with express-portlet
  • +
  • add a skin default attribute as skin="express" for the desktop theme
  • +
+

+ + + + ]]> + +

Go ahead and save that file. We are now ready to deploy your changes to the portal

+

+ Previous Next +

+
+
\ No newline at end of file Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml?rev=747213&r1=747212&r2=747213&view=diff ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml (original) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml Mon Feb 23 23:33:30 2009 @@ -1,67 +1,67 @@ - - - - - Deploying Decorations, Themes and Pages - Deploying Decorations, Themes and Pages - - - - - -
-

- To deploy the new resources (decorations, themes, and page) that we created in this section - of the tutorial, you could simply rebuild the portal by typing mvn -P tomcat,min. - Or, if your portal is aleady up and running, a simpler way is to automate the easy deployment - tasks with Ant. We have created a simple build.xml to copy over changed portal resources:

- - - -

To copy over the resources to the running portal, type: -

- - - -

Refresh the portal home page, http://localhost:8080/jetexpress/portal - You should now see a portal with our new custom decorators:

-

- -

-

- and desktop theme: -

-

- -

-

- Previous Next -

-
- + 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. +--> + + + Deploying Decorations, Themes and Pages + Deploying Decorations, Themes and Pages + + + + + +
+

+ To deploy the new resources (decorations, themes, and page) that we created in this section + of the tutorial, you could simply rebuild the portal by typing mvn -P tomcat,min. + Or, if your portal is aleady up and running, a simpler way is to automate the easy deployment + tasks with Ant. We have created a simple build.xml to copy over changed portal resources:

+ + + +

To copy over the resources to the running portal, type: +

+ + + +

Refresh the portal home page, http://localhost:8080/jetexpress/portal + You should now see a portal with our new custom decorators:

+

+ +

+

+ and desktop theme: +

+

+ +

+

+ Previous Next +

+
+
\ No newline at end of file Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,150 @@ + + + + + Page Themes + Desktop Page Themes + + + + + +
+

+ The Jetspeed Desktop has its own kinds of decorations. + These decorations are called Desktop Themes + + Each Jetspeed Desktop page can be associated with a different theme. Themes + control some important aspect of a desktop page: +

    +
  • The colors, images, CSS styles that skin this page
  • +
  • The header portion of the page
  • +
  • The page margins
  • +
  • The footer portion of the page
  • +
  • Menus displayed on the page
  • +
  • Action buttons displayed on the window
  • +
+ Themes do not control the placement of portlets. That is handled by the Jetspeed Desktop engine, + which follows the layout plan provided by the stuctured page markup (PSML). This is the same + layout instructions applied to a portal page. You will see that themes are much simpler + content than decorators. That is because most of the content in a theme is populated by the + Jetspeed Desktop engine at runtime. + Jetspeed comes with a few desktop themes out of the box. The default desktop theme for + most pages is called blue. It looks like this: +

+ +

+ We are going to create a new desktop theme for this tutorial. + This new theme can be copied into our project from the /JetspeedTutorial/resources/themes/express/ directory. + This will save you the trouble of creating all the logo images and CSS definitions. +

+ + + + +

+ Have a look at the express theme directory. + Notice that there are two theme files: express.jsp and express.vm + Since there were so many complaints about no JSP support in templates, with the Desktop we + decided to require support for both. The theme.properties determines which templates + is active. Lets look at the Velocity template. We have macros to display-theme relative resources: +

+ + + ]]> + +
+ +

+ JSP and Velocity make several variables about the context of a theme available for dynamic substition of menus and content: +

+ + + + + + + + + + + +
VariableDescUsage
$jetspeedDesktopRetrieve theme resources, and the name of the theme${jetspeedDesktop.getDesktopTheme()
+
+ +

+ The remainder of the page is HTML DIV markup with special widget types and identifiers. + The desktop will populate these Divs with various content such as the portlets and menus. + Jetspeed Menus are build from a collection of portal resources + known as the Portal Site. The portal site is a content tree (like a file system) of portal + resources. The site can be stored in the file system or in a database. Resources can be a page, + folder, or link. Lets look at some of the available macros for displaying menus on your page. +

+

+ + + + + + + + + + + + + + + + + + + + + +
WidgetTypeDesc
jetspeed-menu-pagesjetspeed:PortalTabContainerrelative pages menu of pages in the current folder. Used to define the page tabs above the portal.
jetspeed-menu-breadcrumbsjetspeed:PortalBreadcrumbContainerpaths to page used to provide history links below the page tabs
jetspeed-menu-navigationsjetspeed:PortalAccordionContainerrelative subfolders and root level links menu used to define the navigation pane beside the portal.
+ You can also define your own menus (not covered in this tutorial). +

+

+ Finally, the Div to hold the portlet content must be defined. It is just a plain HTML DIV: + + + ]]> + + Notice that while decorators require two templates, desktops only require one template. + This makes for a much simpler page. +

+
+

+ Previous Next +

+
+ +
\ No newline at end of file Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/desktop-theme.xml ------------------------------------------------------------------------------ svn:keywords = Id Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,198 @@ + + + + + Page Decorators + Customizing Page Decorators + + + + + +
+

+ Each Jetspeed page can be associated with a different page decoration. Page decorations + control some important aspect of a portal page: +

    +
  • The colors, images, CSS styles that skin this page
  • +
  • The header portion of the page
  • +
  • The page margins
  • +
  • The footer portion of the page
  • +
  • Menus displayed on the page
  • +
  • Action buttons displayed on the window
  • +
+ Decorators do not control the placement of portlets. That is handled by layouts. + Jetspeed comes with several page decorations out of the box. The default page decorator for + most pages is called tigris. It looks like this: +

+ +

+ We are going to create a new decorator for this tutorial. + This new decorator can be copied into our project from the /JetspeedTutorial/resources/decorations/layout/express-page/ directory. + This will save you the trouble of creating all the logo images and CSS definitions. +

+ + + + +

+ Open up the decorations/layout/express-page/header.vm + This is a Velocity template, very much like JSP but simpler, with no Java compilation required. + Jetspeed does support JSP-based decorators. However no one has contributed one yet. + We could spend a lot of time teaching you about all the macros available. + But lets just concentrate on changing the logos first. + Scroll down to the banner content. Here we add our new left-hand side logo: +

+ + + +

+ We've added a few more custom images, one in the center area of the banner: +

+ + + ]]> + +

+ and one more in the right area of the banner: +

+ + + ]]> + +

+ #GetPageResource is a Velocity macro. It retrieves a resource (image, CSS, HTML) from + the decoration folder, relative to the root of the express-page decoration folder. + Besides the images, the header.vm is pretty much the same as Tigris. + In fact we simply cut and paste the Tigris decorator to get us started. + This gives you a good start of customizing the page. +

+
+ +

+ Velocity makes several variables about the context of a decoration available for dynamic substition of menus and content: +

+ + + + + + + + + + + + + + + + +
VariableDescUsage
$layoutDecorationRetrieve layout content from the decoration dir$layoutDecoration.getResource("decorator-macros.vm")
$siteRetrieve menus by name$site.getMenu("pages")
+
+ +

+ The remainder of the page is HTML markup mixed in with some important macros + for displaying Jetspeed Menus. Jetspeed Menus are build from a collection of portal resources + known as the Portal Site. The portal site is a content tree (like a file system) of portal + resources. The site can be stored in the file system or in a database. Resources can be a page, + folder, or link. Lets look at some of the available macros for displaying menus on your page. +

+

+ The $site always has the following menus available to you at any time: + + + + + + + + + + + + + + + + + + + + + +
MenuDesc
pagesrelative pages menu of pages in the current folder. Used to define the page tabs above the portal.
breadcrumbspaths to page used to provide history links below the page tabs
navigationsrelative subfolders and root level links menu used to define the navigation pane beside the portal.
backparent folder menu used to define the single "back" link above the portal page tabs.
+ You can also define your own menus (not covered in this tutorial). +

+

+ There are some helper macros for creating different styles of menus. + The macros are defined in the decorator-macros.vm file: + + + + + + + + + + + + + + + + + + + + + +
MacroDecription
#includeTabsNavigation($someMenu $LEFT_TO_RIGHT)Displays a menu in a vertical tabbed navigation style.
#includeLinksNavigation($breadCrumb $LEFT_TO_RIGHT "" $BREADCRUMBS_STYLE "")Displays a menu of links according to a given style.
#includeNestedLinksWithIconNavigation($standardNavs $TOP_TO_BOTTOM)Displays a nested top-to-bottom menu navigation of folders, links, and pages.
#PageActionBar()Not a menu, but the available actions (edit, view, help, print...) for this page
+

+
+ +

+ Open up the decorations/layout/express-page/footer.vm +

+ + + ]]> + +
+

+ Previous Next +

+
+ +
\ No newline at end of file Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/page-decoration.xml ------------------------------------------------------------------------------ svn:keywords = Id Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml?rev=747213&r1=747212&r2=747213&view=diff ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml (original) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml Mon Feb 23 23:33:30 2009 @@ -1,71 +1,71 @@ - - - - - Portlet Decorators - Customizing PortletDecorators - - - - - -
-

- Each Jetspeed portlet window on a page can be associated with a different portlet decoration. - Portlet decorations control some important aspect of a portlet window: -

    -
  • The colors, images, CSS styles that skin this window
  • -
  • The title portion of the portlet
  • -
  • The borders of the window
  • -
  • Action buttons displayed on the window
  • -
- Jetspeed comes with several portlet decorations out of the box. The default page decorator for - most pages is called tigris. It looks like this: -

- -

- We are going to create a new decorator for this tutorial. - This new decorator can be copied into our project from the /JetspeedTutorial/resources/decorations/portlet/express-portlet/ directory. - This will save you the trouble of creating all the logo images and CSS definitions. -

- - - -

- We are going to skip over the intricate details of portlet decorators, as page decorators are much more - important, as they set your organization's branding. Whereas the standard window decorators are good - enough for getting you started. Go ahead and review the content of our custom portlet decorator. - You will see that the directory layout is the same as for page decorators. The decorator simply - creates a new color variation on an existing window decorator. -

-

- Previous Next -

-
- + 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. +--> + + + Portlet Decorators + Customizing PortletDecorators + + + + + +
+

+ Each Jetspeed portlet window on a page can be associated with a different portlet decoration. + Portlet decorations control some important aspect of a portlet window: +

    +
  • The colors, images, CSS styles that skin this window
  • +
  • The title portion of the portlet
  • +
  • The borders of the window
  • +
  • Action buttons displayed on the window
  • +
+ Jetspeed comes with several portlet decorations out of the box. The default page decorator for + most pages is called tigris. It looks like this: +

+ +

+ We are going to create a new decorator for this tutorial. + This new decorator can be copied into our project from the /JetspeedTutorial/resources/decorations/portlet/express-portlet/ directory. + This will save you the trouble of creating all the logo images and CSS definitions. +

+ + + +

+ We are going to skip over the intricate details of portlet decorators, as page decorators are much more + important, as they set your organization's branding. Whereas the standard window decorators are good + enough for getting you started. Go ahead and review the content of our custom portlet decorator. + You will see that the directory layout is the same as for page decorators. The decorator simply + creates a new color variation on an existing window decorator. +

+

+ Previous Next +

+
+
\ No newline at end of file Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,71 @@ + + + + + Building and Deploying + Building and Deploying the Portlet Application + + + + + +
+

+ Now that you have generated a portlet app named express-demo, we are ready to build the portal. + We are going to build the portal from the command line: +

+ + + +

+ This builds a portlet application war file name express-demo-1.0.war. + This war file is found under target directory. It is a standard JSR-168 portlet application distribution. +

+

+ Now that we've built and deployed the portal, lets start up the application server (if its not already started). + While the app server is running, we can drop in the portlet application. +

+ + + +

This will deploy your portlet application. Next, lets see how to add your new portlets to a page. +

+

+ Previous Next +

+
+ +
+ Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/build-it.xml ------------------------------------------------------------------------------ svn:keywords = Id Modified: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml?rev=747213&r1=747212&r2=747213&view=diff ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml (original) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml Mon Feb 23 23:33:30 2009 @@ -1,78 +1,78 @@ - - - - - Configuring Portal Pages - Configuring Portal Pages - - - - - -
-

- Now that you have generated a portlet app named express-demo, we are ready to integrate - the new portlets into our system. This is done by adding the portlets to the portal pages. - These pages are also known as PSML files. Your pages makeup the navigational site of your system. - The new pages we are going to add will have references to the new portlets added in the express-demo - portlet applications. Of course users can use the Portlet Selector and Jetspeed Customizer to - select portlets interactively. Here we are setting up the collection of pages that will always - be a part of your portal. The file-system tree-like collection of pages is known as your portal site -

-

- We provide a quick Ant task to copy in the new, preconfigured pages: -

- - - -

- Open up some of the pages found under portal/src/webapp/WEB-INF/pages/. - You will see that we've added a new Contact Us page, and added the some new demo portlets - the the default page. We have also changed the default themes and decorators - for all administrative pages. -

-

- Go ahead and deploy those changes: -

- - - -

This will deploy your new pages. Refresh the portal home page to see the new portlets: -

- -

- Likewise for the desktop: -

- -

- Previous Next -

-
- -
- + 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. +--> + + + Configuring Portal Pages + Configuring Portal Pages + + + + + +
+

+ Now that you have generated a portlet app named express-demo, we are ready to integrate + the new portlets into our system. This is done by adding the portlets to the portal pages. + These pages are also known as PSML files. Your pages makeup the navigational site of your system. + The new pages we are going to add will have references to the new portlets added in the express-demo + portlet applications. Of course users can use the Portlet Selector and Jetspeed Customizer to + select portlets interactively. Here we are setting up the collection of pages that will always + be a part of your portal. The file-system tree-like collection of pages is known as your portal site +

+

+ We provide a quick Ant task to copy in the new, preconfigured pages: +

+ + + +

+ Open up some of the pages found under portal/src/webapp/WEB-INF/pages/. + You will see that we've added a new Contact Us page, and added the some new demo portlets + the the default page. We have also changed the default themes and decorators + for all administrative pages. +

+

+ Go ahead and deploy those changes: +

+ + + +

This will deploy your new pages. Refresh the portal home page to see the new portlets: +

+ +

+ Likewise for the desktop: +

+ +

+ Previous Next +

+
+ +
+ Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,85 @@ + + + + + Generating a Portlet Application + Using Maven to Generate a Portlet Application + + + + + +
+

+ Portlet applications should be stored in a separate sub-project of your main portal project. + Our custom build is setup to put one or more portlet application projects under the applications + directory. For this tutorial, we will create one portlet application. The portlet application + will be automatically built and deployed when you run maven -P tomcat,min. +

+

+ To create a new portal application named express-demo, enter the following commands: +

+ + + +

+ Paste into Command Line: + +

+

+ A directory named express-demo under /JetspeedTraining/workspace/applications should have been created. + Notice that express-demo will be the name of your portlet application. +

+

+ Lets have a closer look at what was created. There is a src directory, and underneath it + three subdirectories java, test, webapp. Under the java directory, there is one + sample portlet. Under the test directory, you will find one unit test. Under the webapp + directory, you will find a number of files that are the basic template for any useful portlet application: +

+ +

+ Here you will find the portlet and servlet deployment descriptors: portlet.xml and web.xml. + Review the files in this directory. We are going to copy over some more sample portlets for the tutorial. + Lets let an ant task to do the work for us: +

+ + + + +

+ Previous Next +

+
+ +
+ Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/portlet-app.xml ------------------------------------------------------------------------------ svn:keywords = Id Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,92 @@ + + + + + Eclipse Integration + Eclipse Integration + + + + + +
+

+ Before getting started, lets get Eclipse setup. + Lets create a Eclipse project for the jetexpress project. + Maven-2 can create Eclipse project and classpath files from your Maven-2 project POM, + automatically bringing in all dependencies: +

+ + + +

+ Lets do the same for the express-demo portlet application. + You may prefer to actually create a new Eclipse project to represent the portlet app subproject. + We recommend this, since Eclipse doesn't work very well multi-Maven projects. Best to break + them out into one Maven project == one Eclipse project: +

+ + + +

+ Now lets import these new projects. From the eclipse menu, select File->Import: +

+ + +

+ Repeat for both the applications/express-demo project. +

+

+ Next, lets setup a classpath variable to point at the Maven Repo, effectively resolving the jars for Eclipse. + In Eclipse, go to Window->Preferences->Java->Build Path->Classpath Variables->New...: +

+ +

+ If you would like to work with the Jetspeed source from the SVN Trunk, you will need to install the Subversion Plugin for Eclipse. + After doing so, simply check out the project using the Subversion plugin: +

+ + + +

+ We are now ready to start developing with Eclipse. +

+

+ Previous Next +

+
+ +
\ No newline at end of file Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/eclipse.xml ------------------------------------------------------------------------------ svn:keywords = Id Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml?rev=747213&view=auto ============================================================================== --- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml (added) +++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml Mon Feb 23 23:33:30 2009 @@ -0,0 +1,45 @@ + + + + + Portlet 101 + Portlet Development 101 + + + + + +
+

+ This section of the tutorial covers Portlet Development with the Java Portlet API. +

+

+

    +
  • Getting started with Eclipse
  • +
  • Bonjour Monde Portlet: the staple Hello World demo to get things rolling introduces the portlet.xml, as well as basic Portlet API concepts.
  • +
  • The Weather Portlet: using init parameters, preferences, and request parameters
  • +
  • The Stock Quote Portlet: actions, JSP, Portlet API Tag Library
  • +
  • Interportlet communication, more advanced Portlet programming.
  • +
+

+

+ Previous Next +

+
+ +
\ No newline at end of file Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/overview.xml ------------------------------------------------------------------------------ svn:keywords = Id --------------------------------------------------------------------- To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org For additional commands, e-mail: jetspeed-dev-help@portals.apache.org