You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2009/02/24 00:15:55 UTC
svn commit: r747192 [1/2] - in
/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials:
ant/ ant/01/ ant/02/ ant/03/ ant/04/ ant/05/ ant/06/ ant/images/
ant/references/ maven-2/ maven-2/01/ maven-2/02/ maven-2/03/ maven-2/04/
mav...
Author: taylor
Date: Mon Feb 23 23:15:52 2009
New Revision: 747192
URL: http://svn.apache.org/viewvc?rev=747192&view=rev
Log:
svn
Added:
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/01/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/03/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/05/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/images/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/Thumbs.db (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-home2.png (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-portlet.png (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/src-dir.png (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml (with props)
portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/project-directory.xml (with props)
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,86 @@
+<?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>Default Page</title>
+ <subtitle>Modifying the Default Page</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Modifying the Default Page">
+ <p>
+ 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:
+ </p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+cp ../../resources/pages/default-page.psml portal/src/webapp/WEB-INF/pages/
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+copy ..\..\resources\pages\default-page.psml portal\src\webapp\WEB-INF\pages
+ ]]>
+ </source>
+ <p>
+ Refresh your Eclipse project and edit the
+ default-page.psml. Make the following modifications
+ <ul>
+ <li>
+ for the layout-decorator, replace tigris with
+ <b>express-page</b>
+ </li>
+ <li>
+ for the portlet-decorator, replace tigris with
+ <b>express-portlet</b>
+ </li>
+ <li>
+ add a skin default attribute as
+ <b>skin="express"</b>
+ for the desktop theme
+ </li>
+ </ul>
+ </p>
+ <source>
+ <![CDATA[
+<page>
+ <defaults layout-decorator="express-page"
+ portlet-decorator="express-portlet"
+ skin="express"/>
+ ]]>
+ </source>
+ <p>
+ Go ahead and save that file. We are now ready to deploy
+ your changes to the portal
+ </p>
+ <p>
+ <a href='desktop-theme.html'>Previous</a>
+ <a href='deploy-custom.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/default-page.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,82 @@
+<?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>Deploying Decorations, Themes and Pages</title>
+ <subtitle>Deploying Decorations, Themes and Pages</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Deploying Decorations, Themes and Pages">
+ <p>
+ 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
+ <b>mvn -P tomcat,min</b>
+ . 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:
+ </p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+cp ../../resources/build.xml .
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+copy ..\..\resources\build.xml
+ ]]>
+ </source>
+ <p>
+ To copy over the resources to the running portal, type:
+ </p>
+ <source>
+ <![CDATA[
+ant
+ ]]>
+ </source>
+ <p>
+ Refresh the portal home page,
+ <a href="http://localhost:8080/jetexpress/portal">
+ http://localhost:8080/jetexpress/portal
+ </a>
+ You should now see a portal with our new custom
+ decorators:
+ </p>
+ <p>
+ <img src="../images/jetexpress-portal.png" />
+ </p>
+ <p>and desktop theme:</p>
+ <p>
+ <img src="../images/jetexpress-desktop.png" />
+ </p>
+ <p>
+ <a href='default-page.html'>Previous</a>
+ <a href='../03/portlet-app.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/02/deploy-custom.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,65 @@
+<?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>Portlet 101</title>
+ <subtitle>Portlet Development 101</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Portlet Development with the Portlet API">
+ <p>
+ This section of the tutorial covers Portlet Development
+ with the Java Portlet API.
+ </p>
+ <p>
+ <ul>
+ <li>Getting started with Eclipse</li>
+ <li>
+ Bonjour Monde Portlet: the staple Hello World
+ demo to get things rolling introduces the
+ portlet.xml, as well as basic Portlet API
+ concepts.
+ </li>
+ <li>
+ The Weather Portlet: using init parameters,
+ preferences, and request parameters
+ </li>
+ <li>
+ The Stock Quote Portlet: actions, JSP, Portlet
+ API Tag Library
+ </li>
+ <li>
+ Interportlet communication, more advanced
+ Portlet programming.
+ </li>
+ </ul>
+ </p>
+ <p>
+ <a href='../03/pages.html'>Previous</a>
+ <a href='eclipse.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/overview.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,97 @@
+<?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>Adding a Page for the Tutorial Portlets</title>
+ <subtitle>Adding a Page for the Tutorial Portlets</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Adding a Page for the Tutorial Portlets">
+ <p>
+ Now that we've created a new portlet, lets add a page to
+ hold that portlet. In the
+ <b>jetexpress</b>
+ project, lets add a folder to the root of our site named
+ <i>portal/src/webapp/WEB-INF/pages/tutorial/</i>
+ .
+ </p>
+ <source>
+ <![CDATA[
+<?xml version="1.0" encoding="UTF-8"?>
+<folder>
+ <title >Tutorial</title>
+ <metadata name="title" xml:lang="fr">Autodidacte</metadata>
+
+ <security-constraints>
+ <security-constraints-ref>public-edit</security-constraints-ref>
+ </security-constraints>
+</folder>
+ ]]>
+ </source>
+ <p>
+ Then lets add a new page named
+ <b>default-page.psml</b>
+ under the tutorial directory. Add a portlet window to
+ reference our new portlet:
+ </p>
+ <source>
+ <![CDATA[
+<page>
+ <defaults layout-decorator="express-page"
+ portlet-decorator="express-portlet"
+ skin="express"/>
+ <title>JetExpress Tutorials</title>
+ <short-title>Tutorials</short-title>
+ <fragment id="tutorial-100" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
+ <fragment id="express-101" type="portlet" name="express-demo::BonjourMonde"/>
+ </fragment>
+</page>
+ ]]>
+ </source>
+ <p>Lets deploy our portlet and the new pages:</p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+ant
+cd applications/express-demo
+mvn
+cp target/express-demo-1.0.war /JetspeedTraining/tomcat-express/webapps/express-demo.war
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+ant
+cd applications\express-demo
+mvn
+copy target\express-demo-1.0.war \JetspeedTraining\tomcat-express\webapps\express-demo.war
+ ]]>
+ </source>
+ <p>
+ <a href='hello.html'>Previous</a>
+ <a href='taglib.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/04/tutorial-psml.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,88 @@
+<?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>Portlet 101</title>
+ <subtitle>Databases</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Database Alternatives">
+ <p>
+ This section of the tutorial covers the different
+ databases that can be used.
+ </p>
+ <p>
+ In the tutorial we have been using Derby from Apache
+ which is easy to set up. You may want to use another
+ database or need to follow a corporate standard.
+ Jetspeed can accomodate a wide range of relational
+ databases including:
+ </p>
+ <ul>
+ <li>
+ <a href="www.mysql.com">MySQL</a>
+ </li>
+ <li>
+ <a href="www.oracle.com">Oracle</a>
+ </li>
+ <li>
+ <a href="http://hsqldb.org/">
+ HSQLDB- Hypersonic Database
+ </a>
+ </li>
+ <li>
+ and
+ <a
+ href="http://portals.apache.org/jetspeed-2/getting-started.html">
+ others
+ </a>
+ </li>
+ </ul>
+ </section>
+ <section name="MySQL">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ the MySQL database.
+ </p>
+ </section>
+ <section name="Oracle">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ the MySQL database.
+ </p>
+ </section>
+ <section name="HSQLDB">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ the MySQL database.
+ </p>
+ </section>
+
+
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/databases.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,46 @@
+<?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>Portlet 101</title>
+ <subtitle>JetSpeed Documentation</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Documentation">
+ <p>
+ Jetspeed includes
+ <a href="http://portals.apache.org/jetspeed-2/">
+ documentation
+ </a>
+ on the general operation of Jetspeed as well as
+ <a
+ href="http://portals.apache.org/jetspeed-2/guides/index.html">
+ guides or HOW-TOs on various topics.
+ </a>
+ </p>
+
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/documentation.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,85 @@
+<?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>Portlet 101</title>
+ <subtitle>Servlet Engines</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Servlet Engines">
+ <p>
+ This section of the tutorial covers the different
+ Servlet Engines that can be used.
+ </p>
+ <p>
+ In the tutorial we have been using Jetty from Apache
+ which is easy to set up. You may want to use another
+ servlet Engine or need to follow a corporate standard.
+ Jetspeed can accomodate a wide range of servlet engines
+ including:
+ </p>
+ <ul>
+ <li>
+ <a href="http://tomcat.apache.org/">
+ Tomcat 5.8 or higher
+ </a>
+ </li>
+ <li>
+ <a
+ href="http://www-306.ibm.com/software/websphere/">
+ Websphere
+ </a>
+ </li>
+ <li>
+ <a href="http://geronimo.apache.org/">Geronimo</a>
+ </li>
+ <li>
+ <a href="http://www.jboss.com/">JBoss</a>
+ </li>
+ </ul>
+ </section>
+ <section name="Tomcat">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ the Tomcat Servlet Engine.
+ </p>
+ </section>
+ <section name="Websphere">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ Websphere.
+ </p>
+ </section>
+ <section name="JBoss">
+ <p>
+ This section of the tutorial discusses how to change the
+ portal that was created in the tutorial so that it uses
+ JBoss.
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/servlet.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,39 @@
+<?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>Portlet 101</title>
+ <subtitle>Jetspeed and Spring</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Spring">
+ <p>
+ This section of the tutorial discusses how Jetspeed uses
+ Spring and how Spring can be used to develop Jetspeed
+ Portlets.
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/06/spring.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,51 @@
+<?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>Portlet 101</title>
+ <subtitle>Ant</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Ant Overview">
+ <p>
+ <a href="ant.apache.org">Ant</a>
+ is a powerful platform independent scripting package.
+
+ </p>
+ </section>
+ <section name="installing Ant">
+ <subsection name='Installation'>
+ <p>You can download Ant from <a href="ant.apache.org">the Ant web site</a>
+ and install it by following their instructions.</p>
+ </subsection>
+ <subsection name='Environment variables' />
+ <p>Create an environmental variable called ANT_HOME and add ANT_HOME\bin to your PATH.</p>
+ <subsection />
+ <subsection name='Testing Ant'>
+ <p>If get the correct version number displayed when you type ant -version at a command prompt, you have a working ant package.</p>
+ </subsection>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/ant.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,91 @@
+<?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>Portlet 101</title>
+ <subtitle>Eclipse</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ <person name="David Dyer"
+ email="ddyer@artifact-software.com" />
+ <person name="Ron Wheeler"
+ email="rwheeler@artifact-software.com" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Eclipse Overview">
+ <p>
+ <a href="www.eclipse.org">Eclipse</a>
+ is an free IDE originally donated to the community by
+ IBM. It has become the most dominant IDE for developing
+ Java applications as well as applications in other
+ laguages. Sun and Microsoft have alternative IDEs but
+ Eclipse has attracted the the largest following.
+ </p>
+ </section>
+ <section name="Installing Eclipse">
+ <subsection name='Installation'>
+ <p>
+ Install the
+ <a href="http://www.eclipse.org/callisto/">
+ Callisto version of Eclipse
+ </a>
+ for Java development. It contains all of the
+ plug-ins for Java development including Web Tools
+ Platform which we need.
+ </p>
+ </subsection>
+
+ <subsection name='Environment Variables'>
+ <p>
+ Eclipse does not have any environment variables of
+ its own but does want to find "JAVA_HOME" which
+ should point to your version of
+ <a href="java.html">Java.</a>
+ </p>
+ </subsection>
+
+ <subsection name='Testing Eclipse'>
+ <p>
+ If you start Eclipse and it runs, you have a good
+ installation. If not, refer to the
+ <a href="www.eclipse.org">Eclipse Site</a>
+ for help.
+ </p>
+ </subsection>
+
+
+ <subsection name='Eclipse Plugins'>
+ <p>
+ The Callisto version of Eclipse should contain the
+ WTP(Web Tools Platform) plug-ins. They show up in
+ the list of plug-ins as individual items:
+ <ul>
+ <li>Web Standard Tools (WST)</li>
+ <li>J2EE Standard Tools (JST)</li>
+ <li>AJAX Toolkit Framework (ATF)</li>
+ <li>Dali JPA Tools</li>
+ <li>JavaServer Faces Tools (JSF)</li>
+ </ul>
+ </p>
+ <p>If you are missing the any of the Eclipse Web Tools platform compents, you can download them from the <a href="http://www.eclipse.org/webtools/main.php">Eclipse site</a></p>
+ </subsection>
+
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/ant/references/eclipse.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: 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=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,102 @@
+<?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>Maven First Steps</title>
+ <subtitle>Custom Project First Steps</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="First Steps with Maven-2">
+ <p>
+ Minimal configuration is required to get started with your Jetspeed custom build and Maven-2.
+ </p>
+ <subsection name='Copying in the settings.xml'>
+ <p>
+ The first step to building with Maven-2 is to setup your <b>settings.xml</b>.
+ These settings hold all the information necessary to build with Maven-2 and Jetspeed.
+ </p>
+ <p>There is a <i>settings.xml.jetexpress</i> file in the <i>/JetspeedTraining/resources/maven/</i> directory.
+ Copy this file into your <i>Maven Home</i> directory. The Maven home directory
+ is located in a directory named <b>.m2</b> found under your <i>User Home</i> directory.
+ So for example that would be <i>~/.m2/</i> on Linux, or <i>"%USERPROFILE%\.m2\"</i> on Windows.
+ </p>
+ <p>
+ <b>Linux: paste into Command Line:</b>
+ <input size ='80' value='mkdir ~/.m2'/>
+ <input id='cl1' size="80" value="cp resources/maven/settings.xml.jetexpress ~/.m2/settings.xml"/>
+ </p>
+ <p>
+ <b>Windows: paste into Command Line:</b>
+ <input size="80" value='mkdir "%USERPROFILE%\.m2"'/>
+ <input id='cl1' size="80" value='copy resources\maven\settings.xml.jetexpress "%USERPROFILE%\.m2\settings.xml"'/>
+ </p>
+ </subsection>
+ <subsection name='Editing the settings.xml'>
+ <p>
+ 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.
+ </p>
+ <p>
+ Edit the <i>~/.m2/settings.xml</i> file.
+ </p>
+ </subsection>
+ <subsection name='Change the Jetspeed Server (Tomcat) Location'>
+ <p>
+ For the purpose of the training, lets all use the same Tomcat home, point it to the <i>/JetspeedTraining/tomcat-express</i> directory.
+ </p>
+ <source>
+ <![CDATA[
+ <org.apache.jetspeed.server.home>c:/JetspeedTraining/tomcat-express</org.apache.jetspeed.server.home>
+ ]]>
+ </source>
+ </subsection>
+ <subsection name='Change the Derby Database location'>
+ <p>
+ Next, lets change the location of our Derby database to the <i>/JetspeedTraining/database/jetexpress</i> directory.
+ </p>
+ <source>
+ <![CDATA[
+ <org.apache.jetspeed.production.database.url>jdbc:derby:/JetspeedTraining/database/jetexpress</org.apache.jetspeed.production.database.url>
+ ]]>
+ </source>
+ </subsection>
+ <subsection name='Change the Repository Location'>
+ <p>
+ Change the Maven local repository location by modifying the <i><localRepository></i>
+ 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 <i>settings.xml</i>:
+ </p>
+ <source>
+ <![CDATA[
+ <localRepository>c:/JetspeedTraining/maven/repository/</localRepository>
+ ]]>
+ </source>
+ <p>Go on and save that file.</p>
+ </subsection>
+ <p>
+ <a href='genapp.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
+
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/01/first-steps.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: 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=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,65 @@
+<?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>Default Page</title>
+ <subtitle>Modifying the Default Page</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Modifying the Default Page">
+ <p>
+ 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:</p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+cp ../../resources/pages/default-page.psml portal/src/webapp/WEB-INF/pages/
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+copy ..\..\resources\pages\default-page.psml portal\src\webapp\WEB-INF\pages
+ ]]>
+ </source>
+ <p>Refresh your Eclipse project and edit the default-page.psml.
+ Make the following modifications
+ <ul>
+ <li>for the layout-decorator, replace tigris with <b>express-page</b></li>
+ <li>for the portlet-decorator, replace tigris with <b>express-portlet</b></li>
+ <li>add a skin default attribute as <b>skin="express"</b> for the desktop theme</li>
+ </ul>
+ </p>
+ <source>
+ <![CDATA[
+<page>
+ <defaults layout-decorator="express-page"
+ portlet-decorator="express-portlet"
+ skin="express"/>
+ ]]>
+ </source>
+ <p>Go ahead and save that file. We are now ready to deploy your changes to the portal</p>
+ <p>
+ <a href='desktop-theme.html'>Previous</a> <a href='deploy-custom.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/default-page.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: 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=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,67 @@
+<?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>Deploying Decorations, Themes and Pages</title>
+ <subtitle>Deploying Decorations, Themes and Pages</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Deploying Decorations, Themes and Pages">
+ <p>
+ 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 <b>mvn -P tomcat,min</b>.
+ 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:</p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+cp ../../resources/build.xml .
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+copy ..\..\resources\build.xml
+ ]]>
+ </source>
+ <p>To copy over the resources to the running portal, type:
+ </p>
+ <source>
+ <![CDATA[
+ant
+ ]]>
+ </source>
+ <p>Refresh the portal home page, <a href="http://localhost:8080/jetexpress/portal">http://localhost:8080/jetexpress/portal</a>
+ You should now see a portal with our new custom decorators:</p>
+ <p>
+ <img src="../images/jetexpress-portal.png"/>
+ </p>
+ <p>
+ and desktop theme:
+ </p>
+ <p>
+ <img src="../images/jetexpress-desktop.png"/>
+ </p>
+ <p>
+ <a href='default-page.html'>Previous</a> <a href='../03/portlet-app.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/deploy-custom.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: 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=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,71 @@
+<?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>Portlet Decorators</title>
+ <subtitle>Customizing PortletDecorators</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Portlet Decorators">
+ <p>
+ 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:
+ <ul>
+ <li>The colors, images, CSS styles that skin this window</li>
+ <li>The title portion of the portlet</li>
+ <li>The borders of the window</li>
+ <li>Action buttons displayed on the window</li>
+ </ul>
+ Jetspeed comes with several portlet decorations out of the box. The default page decorator for
+ most pages is called <i>tigris</i>. It looks like this:
+ </p>
+ <img src="../images/tigris-portlet.png"/>
+ <p>
+ We are going to create a new decorator for this tutorial.
+ This new decorator can be copied into our project from the <i>/JetspeedTutorial/resources/decorations/portlet/express-portlet/</i> directory.
+ This will save you the trouble of creating all the logo images and CSS definitions.
+ </p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress
+mkdir portal/src/webapp/decorations/portlet/express-portlet
+cp -r ../../resources/decorations/portlet/express-portlet/* portal/src/webapp/decorations/portlet/express-portlet/
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+mkdir portal\src\webapp\decorations\portlet\express-portlet
+xcopy /s ..\..\resources\decorations\portlet\express-portlet\* portal\src\webapp\decorations\portlet\express-portlet
+ ]]>
+ </source>
+ <p>
+ 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.
+ </p>
+ <p>
+ <a href='page-decoration.html'>Previous</a> <a href='desktop-theme.html'>Next</a>
+ </p>
+ </section>
+</body>
+</document>
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/02/portlet-decoration.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: 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=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,78 @@
+<?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>Configuring Portal Pages</title>
+ <subtitle>Configuring Portal Pages</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Configuring Portal Pages">
+ <p>
+ Now that you have generated a portlet app named <b>express-demo</b>, 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 <b>portal site</b>
+ </p>
+ <p>
+ We provide a quick Ant task to copy in the new, preconfigured pages:
+ </p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress/
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress\
+
+ant copy-page-resources
+ ]]>
+ </source>
+ <p>
+ Open up some of the pages found under <i>portal/src/webapp/WEB-INF/pages/</i>.
+ You will see that we've added a new <i>Contact Us</i> 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.
+ </p>
+ <p>
+ Go ahead and deploy those changes:
+ </p>
+ <source>
+ <![CDATA[
+ant
+ ]]>
+ </source>
+ <p>This will deploy your new pages. Refresh the portal home page to see the new portlets:
+ </p>
+ <img src="../images/new-home.png"/>
+ <p>
+ Likewise for the desktop:
+ </p>
+ <img src="../images/new-home2.png"/>
+ <p>
+ <a href='portlet-app.html'>Previous</a> <a href='../04/overview.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
+
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/03/pages.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,171 @@
+<?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>Taglibs</title>
+ <subtitle>Portlet API Taglib</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="JSP and Portlet API Taglib">
+ <p>
+ Lets create another portlet. This portlet will not have a Java class.
+ Instead it will be written entirely in JSP.
+ Note that you can mix JSP and a Java class for the implementation of your
+ Java class as you will see in the Stock Quote portlet example.
+ Go to the <i>express-demo</i> project, click on the <i>src/webapp/WEB-INF/view/</i> directory, and create a JSP
+ file named <b>tutorial.jsp</b>. Enter the following JSP code:
+ </p>
+ <source>
+ <![CDATA[
+<%@ page session="true" contentType="text/html;charset=utf-8"%>
+<%@ taglib uri='/WEB-INF/portlet.tld' prefix='portlet'%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix='c' %>
+
+<portlet:defineObjects/>
+
+<portlet:renderURL var="max" windowState='maximized'/>
+<portlet:renderURL var="normal" windowState='normal'/>
+<c:out value="${renderRequest.windowState}"/>
+<c:if test="${renderRequest.windowState == 'maximized'}">
+<a href='<%=normal%>'>Normal</a>
+</c:if>
+<c:if test="${renderRequest.windowState == 'normal'}">
+<a href='<%=max%>'>Max</a>
+</c:if>
+ ]]>
+ </source>
+ <p>
+ Every portlet JSP page is required to have the <b>defineObjects</b> tag
+ at the top. Of course you also need the TLD reference.
+ Portlets need to write their links to go back to the portal, not
+ back to each individual servlet or JSP. That is the main difference
+ between writing portlets and servlets. If you are using a framework like
+ Struts or JSF correctly, these details should be hidden from you in
+ the framework. The tag that we are using here is the <b><portlet:renderURL></b>.
+ It allows you to create a render phase link back to this portlet, going
+ through the portal. You can set window states, request parameters, and
+ portlet mode changes on the URL. The other kind of link that you can create
+ is an action URL: <b><portlet:actionURL></b>, which is usually
+ used with a HTML form to post back parameters to the portlet and initial
+ a blocking action phase event for the targeted portlet.
+ The <b><portlet:defineObjects></b> tag declares three variables for your
+ page:
+ <table>
+ <tr>
+ <th>JSP variable</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>renderRequest</td>
+ <td>The RenderRequest object</td>
+ </tr>
+ <tr>
+ <td>renderResponse</td>
+ <td>The RenderResponse object</td>
+ </tr>
+ <tr>
+ <td>portletConfig</td>
+ <td>The PortletConfig object</td>
+ </tr>
+ </table>
+ </p>
+ <p>
+ Here is the portlet.xml for our JSP portlet.
+ It is based on the <b>GenericServletPortlet</b>, provided by Portals Bridges
+ in a jar file dependency.
+ Notice the init-param named <b>ViewPage</b>.
+ This param defines which webapp-relative JSP to use for View Mode.
+ Similiarly we have are <b>EditPage</b> for edit mode, and <b>HelpPage</b>
+ for help mode.
+ </p>
+ <source>
+ <![CDATA[
+ <portlet>
+ <description>The 2nd Tutorial with JSP</description>
+ <portlet-name>TutorialPortlet2</portlet-name>
+ <display-name>Tutorial Portlet 2</display-name>
+ <portlet-class>org.apache.portals.bridges.common.GenericServletPortlet</portlet-class>
+ <init-param>
+ <name>ViewPage</name>
+ <value>/WEB-INF/view/tutorial.jsp</value>
+ </init-param>
+ <init-param>
+ <name>EditPage</name>
+ <value>/WEB-INF/view/tutorial.jsp</value>
+ </init-param>
+ <init-param>
+ <name>HelpPage</name>
+ <value>/WEB-INF/view/tutorial.jsp</value>
+ </init-param>
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>VIEW</portlet-mode>
+ <portlet-mode>EDIT</portlet-mode>
+ <portlet-mode>HELP</portlet-mode>
+ </supports>
+ <supported-locale>en</supported-locale>
+ <portlet-info>
+ <title>Tutorial Portlet</title>
+ <short-title>tutorial</short-title>
+ <keywords>tutorial,hello,JSP,taglib</keywords>
+ </portlet-info>
+ <portlet-preferences>
+ <preference>
+ <name>test</name>
+ <value>hello</value>
+ </preference>
+ </portlet-preferences>
+</portlet>
+ ]]>
+ </source>
+ <p>Add this portlet window fragment to the tutorial default page, underneath the BonjourMonde fragment:
+ </p>
+ <source>
+ <![CDATA[
+ <fragment id="express-102" type="portlet" name="express-demo::TutorialPortlet2"/>
+ ]]>
+ </source>
+ <p>And then deploy your changes:
+ </p>
+ <source>
+ <![CDATA[
+# Linux
+cd /JetspeedTraining/workspace/jetexpress/
+ant
+cd applications/express-demo
+mvn
+cp target/express-demo-1.0.war /JetspeedTraining/tomcat-express/webapps/express-demo.war
+
+# Windows
+cd \JetspeedTraining\workspace\jetexpress
+ant
+cd applications\express-demo
+mvn
+copy target\express-demo-1.0.war \JetspeedTraining\tomcat-express\webapps\express-demo.war
+ ]]>
+ </source>
+ <p>
+ <a href='hello.html'>Previous</a> <a href='../05/jetspeed-service.html'>Next</a>
+ </p>
+ </section>
+ </body>
+</document>
+
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/04/taglib.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,340 @@
+<?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>Jetspeed Service</title>
+ <subtitle>Jetspeed Services</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Jetspeed Services">
+ <p>
+ This tutorial shows you how to use Jetspeed Services from the Express Demo Portlet Application.
+ Please note that all edits, unless explicity specified otherwise, are applied to the express-demo PA source tree.
+ We will learn how to:
+ <ul>
+ <li>add new roles</li>
+ <li>add new groups</li>
+ <li>register new users</li>
+ <li>manipulate pages</li>
+ <li>get a filtered list of portlets</li>
+ </ul>
+ using the RoleManager, GroupManager, PortletAdministration, and Page Manager Jetspeed API interfaces.
+ </p>
+ <p>
+ Lets get started by entering a new portlet in the portlet.xml:
+ </p>
+ <source>
+ <![CDATA[
+<portlet id="ServicesTutorialPortlet">
+ <description>Tutorial for using Jetspeed Services, such as PortalAdministration, PageManager, Registry.</description>
+ <portlet-name>ServicesTutorialPortlet</portlet-name>
+ <display-name>Jetspeed Services Tutorial Portlet</display-name>
+ <portlet-class>com.bluesunrise.portal.portlets.services.ServicesTutorialPortlet</portlet-class>
+ <init-param>
+ <description>This parameter sets the template used in view mode.</description>
+ <name>ViewPage</name>
+ <value>/WEB-INF/view/services-tutorial.jsp</value>
+ </init-param>
+ <init-param>
+ <description>Comma-separated list of roles to create via Role Manager</description>
+ <name>roles</name>
+ <value>role1,role2,role3</value>
+ </init-param>
+ <init-param>
+ <description>Comma-separated list of groups to create via Group Manager</description>
+ <name>groups</name>
+ <value>group1,group2,group3</value>
+ </init-param>
+ <init-param>
+ <description>Comma-separated list of Users to create and Register via PortalAdminstration service</description>
+ <name>users</name>
+ <value>user1,user2,user3</value>
+ </init-param>
+ <init-param>
+ <description>Comma-separated list of roles to assign to a new user</description>
+ <name>registration-roles</name>
+ <value>user,role1,role2</value>
+ </init-param>
+ <init-param>
+ <description>Comma-separated list of groups to assign to a new user</description>
+ <name>registration-groups</name>
+ <value>group1,group2</value>
+ </init-param>
+ <init-param>
+ <name>portlet-icon</name>
+ <value>start-here.png</value>
+ </init-param>
+ <supports>
+ <mime-type>text/html</mime-type>
+ <portlet-mode>VIEW</portlet-mode>
+ </supports>
+ <supported-locale>en</supported-locale>
+ <portlet-info>
+ <title>Services Tutorial</title>
+ <short-title>Services</short-title>
+ <keywords>tutorial,services,jetspeed-services</keywords>
+ </portlet-info>
+ </portlet>
+ ]]>
+ </source>
+ <p>
+ Jetspeed has an extended descriptor for defining extended portal features and services.
+ Edit the <b>jetspeed-portlet.xml</b> found in <i>src/webapp/WEB-INF/</i>, and add the following
+ services under the <js:services> element. This tells Jetspeed what services you require:
+ </p>
+ <source>
+ <![CDATA[
+ <js:service name='GroupManager'/>
+ <js:service name='PageManager'/>
+ <js:service name='PortalAdministration'/>
+ <js:service name='PortletRegistryComponent'/>
+ <js:service name='RoleManager'/>
+ <js:service name='UserManager'/>
+ ]]>
+ </source>
+ <p>
+ Create a new JSP page named <b>services-tutorial.jsp</b> in the <i>src/webapp/WEB-INF/view/</i> directory.
+ Enter the following code:
+ <source>
+ <![CDATA[
+<%@ page language="java" session="true" %>
+<%@ page import="javax.portlet.*" %>
+
+<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet"%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
+<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
+
+<portlet:defineObjects/>
+
+<portlet:actionURL var="newRolesAction"/>
+<br/>
+<div class='portlet-section-header'>Services Tutorial Portlet</div>
+
+<form name="servicesTutorialForm" action="<c:out value="${newRolesAction}"/>" method="post">
+<input type="submit" name='action' value="createRoles" class="portlet-form-button" />
+<input type="submit" name='action' value="createGroups" class="portlet-form-button" />
+<input type="submit" name='action' value="registerUsers" class="portlet-form-button" />
+<input type="submit" name='action' value="modifyPages" class="portlet-form-button" />
+<input type="submit" name='action' value="createSharedPages" class="portlet-form-button" />
+</form>
+<c:if test="${message != null}">
+<div class='portlet-msg-info'><c:out value="${message}"/></div>
+</c:if>
+<c:if test="${errorMessage != null}">
+<div class='portlet-msg-error'><c:out value="${errorMessage}"/></div>
+</c:if>
+ ]]>
+ </source>
+ </p>
+ <p>
+ <ul>
+ <li>Create a new package using Eclipse: <b>com.bluesunrise.portal.portlets.services</b></li>
+ <li>Create a portlet in the above package named <b>ServicesTutorialPortlet.java</b> extending
+ <b>GenericServletPortlet</b>.</li>
+ <li>Override and implement the <b>init</b>, <b>doView</b> and <b>processAction</b> methods</li>
+ </ul>
+ </p>
+ <p>
+ Add the following data members to the portlet class:
+ </p>
+ <source>
+ <![CDATA[
+ private PortalAdministration admin;
+ private PageManager pageManager;
+ private RoleManager roleManager;
+ private UserManager userManager;
+ private GroupManager groupManager;
+ protected PortletRegistry registry;
+
+ private List registrationRoles;
+ private List registrationGroups;
+ private List newRoles;
+ private List newGroups;
+ private List newUsers;
+ ]]>
+ </source>
+ <p>
+ Press <b>Ctrl-Shift-O</b> to resolve the two above class imports.
+ </p>
+ <p>
+ Enter the following code into the init(PortletConfig config) method, replacing whats there:
+ </p>
+ <source>
+ <![CDATA[
+ super.init();
+ admin = (PortalAdministration) getPortletContext().getAttribute(
+ CommonPortletServices.CPS_PORTAL_ADMINISTRATION);
+ if (null == admin) {
+ throw new PortletException(
+ "Failed to find the Portal Administration on portlet initialization");
+ }
+ userManager = (UserManager) getPortletContext().getAttribute(
+ CommonPortletServices.CPS_USER_MANAGER_COMPONENT);
+ if (null == userManager) {
+ throw new PortletException(
+ "Failed to find the User Manager on portlet initialization");
+ }
+ roleManager = (RoleManager) getPortletContext().getAttribute(
+ CommonPortletServices.CPS_ROLE_MANAGER_COMPONENT);
+ if (null == roleManager) {
+ throw new PortletException(
+ "Failed to find the Role Manager on portlet initialization");
+ }
+ groupManager = (GroupManager) getPortletContext().getAttribute(
+ CommonPortletServices.CPS_GROUP_MANAGER_COMPONENT);
+ if (null == groupManager) {
+ throw new PortletException(
+ "Failed to find the Group Manager on portlet initialization");
+ }
+ pageManager = (PageManager) getPortletContext().getAttribute(
+ CommonPortletServices.CPS_PAGE_MANAGER_COMPONENT);
+ if (null == pageManager) {
+ throw new PortletException(
+ "Failed to find the Page Manager on portlet initialization");
+ }
+ registry = (PortletRegistry)getPortletContext().getAttribute(CommonPortletServices.CPS_REGISTRY_COMPONENT);
+ if (null == registry) {
+ throw new PortletException(
+ "Failed to find the Portlet Registry on portlet initialization");
+ }
+ this.newRoles = getInitParameterList(config, "roles");
+ this.newGroups = getInitParameterList(config, "groups");
+ this.newUsers = getInitParameterList(config, "users");
+ this.registrationRoles = getInitParameterList(config, "registration-roles");
+ this.registrationGroups = getInitParameterList(config, "registration-groups");
+ ]]>
+ </source>
+ <p>
+ Add this helper function to the class:
+ </p>
+ <source>
+ <![CDATA[
+ protected List getInitParameterList(PortletConfig config, String ipName)
+ {
+ String temp = config.getInitParameter(ipName);
+ if (temp == null) return new ArrayList();
+
+ String[] temps = temp.split("\\,");
+ for (int ix = 0; ix < temps.length; ix++)
+ temps[ix] = temps[ix].trim();
+
+ return Arrays.asList(temps);
+ }
+ ]]>
+ </source>
+ <p>
+ Write the doView method:
+ </p>
+ <source>
+ <![CDATA[
+ public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException
+ {
+ request.setAttribute("message", request.getParameter("message"));
+ request.setAttribute("errorMessage", request.getParameter("errorMessage"));
+ super.doView(request, response);
+ }
+ ]]>
+ </source>
+ <p>
+ Write the portletAction method:
+ </p>
+ <source>
+ <![CDATA[
+ public void processAction(ActionRequest request, ActionResponse response) throws PortletException, IOException
+ {
+ String action = request.getParameter("action");
+ try
+ {
+ if (action != null)
+ {
+ if (action.equals("createRoles"))
+ {
+ String message = "Created " + createRoles() + " roles";
+ response.setRenderParameter("message", message);
+ }
+ else if (action.equals("createGroups"))
+ {
+ String message = "Created " + createGroups() + " groups";
+ response.setRenderParameter("message", message);
+ }
+ else if (action.equals("registerUsers"))
+ {
+ String message = "Registered " + registerUsers() + " users";
+ response.setRenderParameter("message", message);
+ }
+ else if (action.equals("modifyPages"))
+ {
+ String message = "Modified " + modifyPages() + " pages";
+ response.setRenderParameter("message", message);
+ }
+ else if (action.equals("createSharedPages"))
+ {
+ String message = "Created " + createSharedPages() + " pages";
+ response.setRenderParameter("message", message);
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ response.setRenderParameter("serviceError", e.getMessage());
+ // TODO: proper logging
+ e.printStackTrace();
+ }
+ }
+ ]]>
+ </source>
+ <p>
+ Implement the undefined methods using the Jetspeed Services...
+ <table>
+ <tr>
+ <th>method</th>
+ <th>purpose</th>
+ </tr>
+ <tr>
+ <td>createRoles</td>
+ <td>using the roles init param, create new roles with the RoleManager service. If the role already exists, skip it.</td>
+ </tr>
+ <tr>
+ <td>createGroups</td>
+ <td>using the groups init param, create new groups with the GroupManager service. If the group already exists, skip it.</td>
+ </tr>
+ <tr>
+ <td>registerUsers</td>
+ <td>using the users init param, register new users with the PortalAdministration service. If the user already exists, skip it.</td>
+ </tr>
+ <tr>
+ <td>modifyPages</td>
+ <td>using the users init param, modify pages with the PageManager service. If the page doesnt exist, dont create it.
+ Modifications: for user1, create a 1 column collection of 1 portlet, for user2, create a 2 column collection of 2 portlets, for user3 create a 3 column collection of 3 portets</td>
+ </tr>
+ <tr>
+ <td>createSharedPages</td>
+ <td>create a folder named /shared, create a page name /friends.psml. add some portlets to the page. grant public-view security constraint to the folder</td>
+ </tr>
+ </table>
+ </p>
+ <p>
+ <a href='../04/taglib.html'>Previous</a>
+ </p>
+ </section>
+ </body>
+</document>
+
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/05/jetspeed-service.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/Thumbs.db
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/Thumbs.db?rev=747192&view=auto
==============================================================================
Binary file - no diff available.
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/Thumbs.db
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-home2.png
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-home2.png?rev=747192&view=auto
==============================================================================
Binary file - no diff available.
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-home2.png
------------------------------------------------------------------------------
svn:mime-type = image/png
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-portlet.png
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-portlet.png?rev=747192&view=auto
==============================================================================
Binary file - no diff available.
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/new-portlet.png
------------------------------------------------------------------------------
svn:mime-type = image/png
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/src-dir.png
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/src-dir.png?rev=747192&view=auto
==============================================================================
Binary file - no diff available.
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/images/src-dir.png
------------------------------------------------------------------------------
svn:mime-type = image/png
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml?rev=747192&view=auto
==============================================================================
--- portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml (added)
+++ portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ 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.
+-->
+<project>
+ <body>
+ <links>
+ <item name="Jetspeed-1" href="http://portals.apache.org/jetspeed-1" target="_nw"/>
+ <item name="Jetspeed-2" href="http://portals.apache.org/jetspeed-2" target="_nw"/>
+ <item name="Bridges" href="http://portals.apache.org/bridges" target="_nw"/>
+ </links>
+ <menu name="Tutorial Overview">
+ <item name="Welcome" href="index.html" />
+ <item name="Build Commands" href="build-commands.html" />
+ <item name="Project Generation Archetypes" href="project-generation.html" />
+ <item name="Project Directory Overview" href="project-directory.html" />
+ </menu>
+ <menu name="01. Custom Portal Generation">
+ <item name="Maven First Steps" href="01/first-steps.html" />
+ <item name="Generating a Jetspeed Portal" href="01/genapp.html" />
+ <item name="Build and Deploy Custom Portal" href="01/build-it.html" />
+ <item name="Run the Custom Portal" href="01/run-it.html" />
+ </menu>
+ <menu name="02. Customizing Your Portal Design">
+ <item name="Decorators and Themes" href="02/customizing-overview.html" />
+ <item name="Page Decoration" href="02/page-decoration.html" />
+ <item name="Portlet Decoration" href="02/portlet-decoration.html" />
+ <item name="Desktop Themes" href="02/desktop-theme.html" />
+ <item name="Changing the Default Page" href="02/default-page.html" />
+ <item name="Deploying your Customizations" href="02/deploy-custom.html"/>
+ </menu>
+ <menu name="03. Portlet Application Configuration">
+ <item name="Generating a Portlet Application" href="03/portlet-app.html" />
+ <item name="Building and Deploying" href="03/build-it.html" />
+ <item name="Configuring Portal Pages" href="03/pages.html" />
+ </menu>
+ <menu name="04. Portlet Development 101">
+ <item name="Overview" href="04/overview.html" />
+ <item name="Eclipse" href="04/eclipse.html" />
+ <item name="Hello World" href="04/hello.html" />
+ <item name="Adding a Page" href="04/tutorial-psml.html" />
+ <item name="JSP and Portlet API Taglib" href="04/taglib.html" />
+ </menu>
+ <menu name="05. Jetspeed Services">
+ <item name="Services Tutorial Portlet" href="05/jetspeed-service.html" />
+ </menu>
+ </body>
+</project>
Propchange: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/navigation.xml
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/project-directory.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/JETSPEED-2.1.3-POSTRELEASE/xdocs/tutorials/maven-2/project-directory.xml?rev=747192&view=auto
==============================================================================
--- 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/project-directory.xml Mon Feb 23 23:15:52 2009
@@ -0,0 +1,132 @@
+<?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>Project Directory</title>
+ <subtitle>Overview of the Custom Project Directory Structure</subtitle>
+ <authors>
+ <person name="David Sean Taylor" email="taylor@apache.org" />
+ </authors>
+ </properties>
+ <body>
+ <section name="Overview of the Custom Project Directory Structure">
+ <p>
+ The <b>portal-archetype</b> generates a complete Maven-2 project directory structure for developing
+ a custom Jetspeed portal as well as JSR 168 portlet applications.
+ Here is an overview of directories created by the portal-archetype (directories are relative to the custom portal root):
+ </p>
+ <div>
+<table>
+<tr>
+<td>
+<strong><tt>directory</tt></strong>
+</td>
+<td>
+<strong><tt>explanation</tt></strong>
+</td>
+</tr>
+<tr>
+<td>/applications
+</td>
+<td>conventional subdirectory location for one or more portal application projects
+</td>
+</tr>
+<tr>
+<td>/app-servers
+</td>
+<td>contains portal deployment builds and resources.
+</td>
+</tr>
+<tr>
+<td>/components
+</td>
+<td>conventional subdirectory for one or more portal component projects
+</td>
+</tr>
+<tr>
+<td>enterprise
+</td>
+<td>maven-2 build to create an J2EE enterprise archive (EAR) deployable file
+</td>
+</tr>
+<tr>
+<td>etc/assembly
+</td>
+<td>custom portal application component Spring assemblies
+</td>
+</tr>
+<tr>
+<td>etc/conf
+</td>
+<td>portal application context configuration files
+</td>
+</tr>
+<tr>
+<td>etc/decorations
+</td>
+<td>custom decorations in images, layout, and portlet subdirectories
+</td>
+</tr>
+<tr>
+<td>etc/pages
+</td>
+<td>custom portal PSML pages to augment/override minimal defaults, (e.g. /Administrative/**, /default-page.psml, /myaccount.psml, /page.security, and /system/**)
+</td>
+</tr>
+<tr>
+<td>etc/schema
+</td>
+<td>Jetspeed2 database schema definitions
+</td>
+</tr>
+<tr>
+<td>etc/sql
+</td>
+<td>Jetspeed base database configuration scripts
+</td>
+</tr>
+<tr>
+<td>etc/templates
+</td>
+<td>custom overrides for Jetspeed2 layout portlet templates
+</td>
+</tr>
+<tr>
+<td>etc/webapp
+</td>
+<td>
+</td>custom content reaources to be packaged with portal application
+</tr>
+<tr>
+<td>portal
+</td>
+<td>portal application war build scripts and webapp resource overrides
+</td>
+</tr>
+<tr>
+<td>src
+</td>
+<td>these directories are an artifact of archetype expansion and should be deleted
+</td>
+</tr>
+</table>
+</div>
+ </section>
+</body>
+</document>
+
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org