You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bridges-commits@portals.apache.org by ta...@apache.org on 2006/07/24 20:27:23 UTC

svn commit: r425140 - in /portals/bridges/trunk: jsf/xdocs/guide.xml jsf/xdocs/navigation.xml velocity/xdocs/index.xml velocity/xdocs/navigation.xml

Author: taylor
Date: Mon Jul 24 11:27:23 2006
New Revision: 425140

URL: http://svn.apache.org/viewvc?rev=425140&view=rev
Log:
patches from Philip Mark Donaghy, im applying these to bridges as well as jetspeed

Added:
    portals/bridges/trunk/jsf/xdocs/guide.xml
    portals/bridges/trunk/velocity/xdocs/index.xml
Modified:
    portals/bridges/trunk/jsf/xdocs/navigation.xml
    portals/bridges/trunk/velocity/xdocs/navigation.xml

Added: portals/bridges/trunk/jsf/xdocs/guide.xml
URL: http://svn.apache.org/viewvc/portals/bridges/trunk/jsf/xdocs/guide.xml?rev=425140&view=auto
==============================================================================
--- portals/bridges/trunk/jsf/xdocs/guide.xml (added)
+++ portals/bridges/trunk/jsf/xdocs/guide.xml Mon Jul 24 11:27:23 2006
@@ -0,0 +1,201 @@
+<?xml version="1.0"?>
+<!--
+	Copyright 2006 The Apache Software Foundation
+	
+	Licensed under the Apache License, Version 2.0 (the "License");
+	you may not use this file except in compliance with the License.
+	You may obtain a copy of the License at
+	
+	http://www.apache.org/licenses/LICENSE-2.0
+	
+	Unless required by applicable law or agreed to in writing, software
+	distributed under the License is distributed on an "AS IS" BASIS,
+	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+	See the License for the specific language governing permissions and
+	limitations under the License.
+-->
+<document>
+	<properties>
+		<title>Jetspeed Simple JSF Portlet Guide</title>
+		<subtitle>Documentation for Creating a Simple JSF Portlet</subtitle>
+		<authors>
+			<person name="David Le Strat" email="dlestrat@apache.org" />
+			<person name="Philip Mark Donaghy" email="philip.donaghy@gmail.com" />
+		</authors>
+	</properties>
+	<body>
+		<section name="Jetspeed Simple JSF Portlet Guide">
+			<p>
+				This guide provides a tutorial for creating a very
+				simple JSF portlet with one template in the portlet view mode.
+			</p>
+			<subsection name="1. The Portlet Class">
+				<p>
+				Create the file JSFSimplest.java in a directory called
+				jsf-simplest/WEB-INF/classes:
+				<source>
+public class JSFSimplest extends org.apache.portals.bridges.jsf.FacesPortlet
+{
+
+    public void doView(javax.portlet.RenderRequest request, javax.portlet.RenderResponse response)
+                throws javax.portlet.PortletException, java.io.IOException
+    {
+        super.doView(request, response);
+    }
+}
+				</source>
+				</p>
+				<p>
+				Compile the class in the jsf-simplest/WEB-INF/classes directory using the command,
+				<source>
+javac -cp portlet-api-1.0.jar:portals-bridges-jsf-1.0.jar:portals-bridges-common-1.0.jar JSFSimplest.java
+				</source>
+				</p>
+			</subsection>
+			<subsection name="2. The portlet.xml">
+			<p>
+			Create the file portlet.xml in the jsf-simplest/WEB-INF directory.
+			<source><![CDATA[
+<?xml version="1.0" encoding="UTF-8"?>
+<portlet-app id="jsfsimplest" version="1.0">
+  <portlet id="JSFSimplest">
+    <portlet-name>JSFSimplestPortlet</portlet-name>
+    <display-name>JSF Simplest Display Name</display-name>
+    <portlet-class>JSFSimplest</portlet-class>
+    <init-param>
+        <name>ViewPage</name>
+        <value>/WEB-INF/view/view.jsp</value>
+    </init-param>
+    <supports>
+      <mime-type>text/html</mime-type>
+      <portlet-mode>VIEW</portlet-mode>
+    </supports>
+    <supported-locale>en</supported-locale>
+    <supported-locale>fr</supported-locale>
+    <portlet-info>
+      <title>JSF Simplest Title</title>
+      <short-title>JSF Simplest Short Title</short-title>
+    </portlet-info>
+  </portlet>
+</portlet-app>]]>
+			</source>
+			</p>
+			</subsection>
+			<subsection name="3. The web.xml">
+			<p>
+			Create the file web.xml in the jsf-simplest/WEB-INF directory.
+			<source><![CDATA[
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+                         "http://java.sun.com/dtd/web-app_2_3.dtd">
+<web-app>
+  <display-name>JSF Simplest</display-name>
+  <description>The world's simplest JSF portlet</description>
+
+  <!-- Faces Config -->
+  <context-param>
+    <param-name>javax.faces.application.CONFIG_FILES</param-name>
+    <param-value>/WEB-INF/faces-config.xml</param-value>
+  </context-param>
+
+  <!-- Faces Servlet -->
+  <servlet>
+    <servlet-name>Faces Servlet</servlet-name>
+    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  </servlet>
+
+  <!-- Faces extension mapping -->
+  <servlet-mapping>
+    <servlet-name>Faces Servlet</servlet-name>
+    <url-pattern>*.jsf</url-pattern>
+  </servlet-mapping>
+</web-app>]]>
+			</source>
+			</p>
+			</subsection>
+			<subsection name="4. The View">
+			<p>
+                        Create the view.jsp file in the jsf-simplest/WEB-INF/view directory.
+<source><![CDATA[
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="/WEB-INF/tld/portlet.tld" prefix='portlet'%>
+<portlet:defineObjects/>
+<f:view>
+   <h2>A JSF Portlet</h2>
+   Hello
+   <% if ( renderRequest.getUserPrincipal() == null ) { %>
+   guest
+   <% } else { %>
+   <%=renderRequest.getUserPrincipal().getName()%>
+   <% } %>!
+</f:view>]]>
+</source>
+			</p>
+			</subsection>
+			<subsection name="5. The faces-config.xml">
+			<p>
+                        Create a faces-config.xml file in the jsf-simplest/WEB-INF directory.
+<source><![CDATA[
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE faces-config PUBLIC
+  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+
+<faces-config>
+
+  <application>
+    <locale-config>
+      <default-locale>en</default-locale>
+      <supported-locale>fr</supported-locale>
+    </locale-config>
+  </application>
+
+</faces-config>]]>
+</source>
+			</p>
+			</subsection>
+			<subsection name="6. The Dependency JARs">
+			<p>
+                        Copy the dependencies to the WEB-INF/lib directory. 
+                        These jars should be in your Maven repository. If so executing these commands in the lib
+                        directory will set up the dependencies for you.
+<source>
+ln -s ~/.maven/repository/commons-beanutils/jars/commons-beanutils-1.7.0.jar
+ln -s ~/.maven/repository/commons-collections/jars/commons-collections-3.1.jar
+ln -s ~/.maven/repository/commons-digester/jars/commons-digester-1.7.jar
+ln -s ~/.maven/repository/myfaces/jars/myfaces-api-1.1.0.jar
+ln -s ~/.maven/repository/myfaces/jars/myfaces-impl-1.1.0.jar
+ln -s ~/.maven/repository/myfaces/jars/tomahawk-1.1.0.jar
+ln -s ~/.maven/repository/org.apache.portals.bridges/jars/portals-bridges-jsf-1.0.jar
+ln -s ~/.maven/repository/xerces/jars/xerces-2.4.0.jar
+ln -s ~/.maven/repository/xml-apis/jars/xml-apis-2.0.2.jar
+</source>
+			</p>
+			</subsection>
+			<subsection name="7. The WAR file">
+			<p>
+			From the directory jsf-simplest combine the files above into a war file using the command,
+			<source>
+jar cvf ../jsfsimplest.war .
+			</source>
+			</p>
+			</subsection>
+			<subsection name="8. Deploy the WAR file">
+			<p>
+			Copy the war file to <code>$CATALINA_HOME/webapps/jetspeed/WEB-INF/deploy</code>.
+                        Jetspeed-2 will deploy the webapp.
+			</p>
+			</subsection>
+			<subsection name="9. The PSML">
+			<p>
+                        Create the PSML page using the Jetspeed portlet chooser. Login and click on the
+                        edit page icon. Click on the add portlet icon.
+                        Checkbox and add the JSFSimplestPortlet to your page.
+                        Your user must have the permission to edit pages. The user <code>admin</code>
+                        password
+                        <code>admin</code> has permission to edit all pages.
+			</p>
+			</subsection>
+		</section>
+	</body>
+</document>

Modified: portals/bridges/trunk/jsf/xdocs/navigation.xml
URL: http://svn.apache.org/viewvc/portals/bridges/trunk/jsf/xdocs/navigation.xml?rev=425140&r1=425139&r2=425140&view=diff
==============================================================================
--- portals/bridges/trunk/jsf/xdocs/navigation.xml (original)
+++ portals/bridges/trunk/jsf/xdocs/navigation.xml Mon Jul 24 11:27:23 2006
@@ -24,5 +24,10 @@
       <item name="Bridges Home" href="../../index.html"/>
     </links>
       
+    <menu name="JSF Bridge">
+      <item name="Summary" href="index.html"/>
+      <item name="Guide" href="guide.html"/>
+    </menu>      
+            
   </body>
 </project>

Added: portals/bridges/trunk/velocity/xdocs/index.xml
URL: http://svn.apache.org/viewvc/portals/bridges/trunk/velocity/xdocs/index.xml?rev=425140&view=auto
==============================================================================
--- portals/bridges/trunk/velocity/xdocs/index.xml (added)
+++ portals/bridges/trunk/velocity/xdocs/index.xml Mon Jul 24 11:27:23 2006
@@ -0,0 +1,174 @@
+<?xml version="1.0"?>
+<!--
+	Copyright 2006 The Apache Software Foundation
+	
+	Licensed under the Apache License, Version 2.0 (the "License");
+	you may not use this file except in compliance with the License.
+	You may obtain a copy of the License at
+	
+	http://www.apache.org/licenses/LICENSE-2.0
+	
+	Unless required by applicable law or agreed to in writing, software
+	distributed under the License is distributed on an "AS IS" BASIS,
+	WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+	See the License for the specific language governing permissions and
+	limitations under the License.
+-->
+<document>
+	<properties>
+		<title>Jetspeed Simple Velocity Portlet Guide</title>
+		<subtitle>Documentation for Creating a Simple Velocity Portlet</subtitle>
+		<authors>
+			<person name="David Le Strat" email="dlestrat@apache.org" />
+			<person name="Philip Mark Donaghy" email="philip.donaghy@gmail.com" />
+		</authors>
+	</properties>
+	<body>
+		<section name="Jetspeed Simple Velocity Portlet Guide">
+			<p>
+				This guide provides a tutorial for creating a very
+				simple Velocity portlet with one template in the portlet view mode.
+			</p>
+			<subsection name="1. The Portlet Class">
+				<p>
+				Create the file VelocitySimplest.java in a directory called
+				velocity-simplest/WEB-INF/classes:
+				<source>
+public class VelocitySimplest extends org.apache.portals.bridges.velocity.GenericVelocityPortlet
+{
+
+    public void doView(javax.portlet.RenderRequest request, javax.portlet.RenderResponse response)
+                throws javax.portlet.PortletException, java.io.IOException
+    {
+        super.doView(request, response);
+    }
+}
+				</source>
+				</p>
+				<p>
+				Compile the class in the velocity-simplest/WEB-INF/classes directory using the command,
+				<source>
+javac -cp portlet-api-1.0.jar:portals-bridges-velocity-1.0.jar:portals-bridges-common-1.0.jar VelocitySimplest.java
+				</source>
+				</p>
+			</subsection>
+			<subsection name="2. The portlet.xml">
+			<p>
+			Create the file portlet.xml in the velocity-simplest/WEB-INF directory.
+			<source><![CDATA[
+<?xml version="1.0" encoding="UTF-8"?>
+<portlet-app id="velocitysimplest" version="1.0">
+  <portlet id="VelocitySimplest">
+    <portlet-name>VelocitySimplest</portlet-name>
+    <display-name>Velocity Simplest Display Name</display-name>
+    <portlet-class>VelocitySimplest</portlet-class>
+    <init-param>
+        <name>ViewPage</name>
+        <value>/WEB-INF/view/world.vm</value>
+    </init-param>
+    <supports>
+      <mime-type>text/html</mime-type>
+      <portlet-mode>VIEW</portlet-mode>
+    </supports>
+    <supported-locale>en</supported-locale>
+    <portlet-info>
+      <title>Velocity Simplest Title</title>
+      <short-title>Velocity Simplest Short Title</short-title>
+    </portlet-info>
+  </portlet>
+</portlet-app>]]>
+			</source>
+			</p>
+			</subsection>
+			<subsection name="3. The web.xml">
+			<p>
+			Create the file web.xml in the velocity-simplest/WEB-INF directory.
+			<source><![CDATA[
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+                         "http://java.sun.com/dtd/web-app_2_3.dtd">
+<web-app>
+  <display-name>Velocity Simplest</display-name>
+  <description>The world's simplest Velocity portlet</description>
+
+  <!-- Define Velocity Servlet -->
+  <servlet>
+    <servlet-name>velocity</servlet-name>
+    <servlet-class>org.apache.portals.bridges.velocity.BridgesVelocityViewServlet</servlet-class>
+  </servlet>
+
+  <!-- Map *.vm files to Velocity  -->
+  <servlet-mapping>
+    <servlet-name>velocity</servlet-name>
+    <url-pattern>*.vm</url-pattern>
+  </servlet-mapping>
+
+</web-app>]]>
+			</source>
+			</p>
+			</subsection>
+			<subsection name="4. The View">
+			<p>
+                        Create the world.vm file in the velocity-simplest/WEB-INF/view directory. Put
+                        whatever content
+                        you desire in it. Notice that the template file is defined in the portlet init
+                        parameter <code>
+                        ViewPage</code>. The objects <a href="http://portals.apache.org/pluto/multiproject/portlet-api/apidocs/javax/portlet/PortletConfig.html">PortletConfig</a>, <a href="http://portals.apache.org/pluto/multiproject/portlet-api/apidocs/javax/portlet/RenderRequest.html">RenderRequest</a>, and <a href="http://portals.apache.org/pluto/multiproject/portlet-api/apidocs/javax/portlet/RenderResponse.html">RenderResponse</a>
+                        are automatically
+                        placed in the Velocity context for use in Velocity templates. Here is a sample
+                        template showing a few of these objects methods and properties.
+<source>
+$portletConfig.portletName
+$portletConfig.portletContext.serverInfo
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+$renderRequest.portletMode
+$renderResponse.namespace
+</source>
+			</p>
+			</subsection>
+			<subsection name="5. The Dependency JARs">
+			<p>
+                        Copy the commons-beanutils-1.7.0.jar, commons-collections-3.1.jar,
+                        commons-digester-1.7.jar, portals-bridges-velocity-1.0.jar,
+                        velocity-1.4.jar, and velocity-tools-1.1.jar to the velocity-simplest/WEB-INF/lib
+                        directory. IMPORTANT: 
+                        Do NOT put the portlet-api-1.0.jar in the war file. If you have already built
+                        Jetspeed these
+                        jars should be in your Maven repository. If so executing these commands in the lib
+                        directory will set up the dependencies for you.
+<source>
+ln -s ~/.maven/repository/commons-beanutils/jars/commons-beanutils-1.7.0.jar
+ln -s ~/.maven/repository/commons-collections/jars/commons-collections-3.1.jar
+ln -s ~/.maven/repository/commons-digester/jars/commons-digester-1.7.jar
+ln -s ~/.maven/repository/org.apache.portals.bridges/jars/portals-bridges-velocity-1.0.jar
+ln -s ~/.maven/repository/velocity/jars/velocity-1.4.jar
+ln -s ~/.maven/repository/velocity-tools/jars/velocity-tools-1.1.jar
+</source>
+			</p>
+			</subsection>
+			<subsection name="6. The WAR file">
+			<p>
+			From the directory velocity-simplest combine the files above into a war file using the command,
+			<source>
+jar cvf ../velocitysimplest.war .
+			</source>
+			</p>
+			</subsection>
+			<subsection name="7. Deploy the WAR file">
+			<p>
+			Copy the war file to <code>$CATALINA_HOME/webapps/jetspeed/WEB-INF/deploy</code>.
+                        Jetspeed-2 will deploy the webapp.
+			</p>
+			</subsection>
+			<subsection name="8. The PSML">
+			<p>
+                        Create the PSML page using the Jetspeed portlet chooser. Login and click on the
+                        edit page icon.
+                        Your user must have the permission to edit pages. The user <code>admin</code>
+                        password
+                        <code>admin</code> has permission to edit all pages.
+			</p>
+			</subsection>
+		</section>
+	</body>
+</document>

Modified: portals/bridges/trunk/velocity/xdocs/navigation.xml
URL: http://svn.apache.org/viewvc/portals/bridges/trunk/velocity/xdocs/navigation.xml?rev=425140&r1=425139&r2=425140&view=diff
==============================================================================
--- portals/bridges/trunk/velocity/xdocs/navigation.xml (original)
+++ portals/bridges/trunk/velocity/xdocs/navigation.xml Mon Jul 24 11:27:23 2006
@@ -22,6 +22,10 @@
       <item name="Jetspeed 2" href="http://portals.apache.org/jetspeed-2" target="_nw"/>
       <item name="Bridges Home" href="../../index.html"/>
     </links>
-      
+
+    <menu name="Velocity Bridge">
+      <item name="Guide" href="index.html"/>
+    </menu>      
+                  
   </body>
 </project>



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