You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by dd...@apache.org on 2006/12/02 07:23:18 UTC

svn commit: r481508 - in /portals/pluto/trunk: maven-pluto-plugin/src/main/resources/ pluto-container/src/main/java/org/apache/pluto/core/ pluto-container/src/main/java/org/apache/pluto/internal/impl/ pluto-portal-driver-impl/src/main/java/org/apache/p...

Author: ddewolf
Date: Fri Dec  1 22:23:16 2006
New Revision: 481508

URL: http://svn.apache.org/viewvc?view=rev&rev=481508
Log:
Page Admin now displays auto-registered portlets

Added:
    portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java   (with props)
    portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java   (with props)
    portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/
    portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp   (with props)
Modified:
    portals/pluto/trunk/maven-pluto-plugin/src/main/resources/versions.properties
    portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java
    portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java
    portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/impl/resource/SupportedModesServiceImpl.java
    portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/AdminPortlet.java
    portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml
    portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/portlet.xml
    portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/web.xml

Modified: portals/pluto/trunk/maven-pluto-plugin/src/main/resources/versions.properties
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/maven-pluto-plugin/src/main/resources/versions.properties?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/maven-pluto-plugin/src/main/resources/versions.properties (original)
+++ portals/pluto/trunk/maven-pluto-plugin/src/main/resources/versions.properties Fri Dec  1 22:23:16 2006
@@ -40,4 +40,4 @@
 junit.version=${junit.version}
 jmock.version=${jmock.version}
 # The version of Pluto's parent POM.
-pluto.version=${pom.parent.version}
+pluto.version=${pom.version}

Modified: portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java (original)
+++ portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/core/PortletContextManager.java Fri Dec  1 22:23:16 2006
@@ -23,6 +23,8 @@
 import org.apache.pluto.spi.optional.PortletRegistryEvent;
 import org.apache.pluto.spi.optional.PortletRegistryListener;
 import org.apache.pluto.spi.optional.PortletRegistryService;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 
 import javax.servlet.ServletContext;
 import java.util.ArrayList;
@@ -41,6 +43,9 @@
  */
 public class PortletContextManager implements PortletRegistryService {
 
+    /** Log Instance */
+    private static final Log LOG = LogFactory.getLog(PortletContextManager.class);
+
     /**
      * The singleton manager instance.
      */
@@ -112,7 +117,7 @@
 
 
     public Iterator getRegisteredPortletApplications() throws PortletContainerException {
-        return portletContexts.keySet().iterator();
+        return portletContexts.values().iterator();
     }
 
     public PortletAppDD getPortletApplicationDescriptor(String name) throws PortletContainerException {
@@ -140,6 +145,8 @@
         while (i.hasNext()) {
             ((PortletRegistryListener) i.next()).portletApplicationRegistered(event);
         }
+
+        LOG.info("Portlet Context '"+context.getApplicationId()+"' registered.");
     }
 
     private void fireRemoved(InternalPortletContext context) {
@@ -151,6 +158,8 @@
         while (i.hasNext()) {
             ((PortletRegistryListener) i.next()).portletApplicationRemoved(event);
         }
+
+        LOG.info("Portlet Context '"+context.getApplicationId()+"' removed.");
     }
 
     class MultiKeyedMap extends HashMap {

Modified: portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java (original)
+++ portals/pluto/trunk/pluto-container/src/main/java/org/apache/pluto/internal/impl/PortletContextImpl.java Fri Dec  1 22:23:16 2006
@@ -97,15 +97,20 @@
      * <li>Attempt to retrieve the contextPath property value from the ServletContext if it exists (Servlet 2.5)</li>
      * <li>Attempt to retrieve the org.apache.pluto.CONTEXT_PATH attribute from the ServletContext</li>
      * <li>If all else fails, use the SerlvetContext.getServletContextName() value</li>
+     * <li>Generate a random string</li>
      *
      * @return the published application Id for this context.
      */
     public String getApplicationId() {
         String applicationId =  getContextPath();
         if(applicationId == null) {
+            applicationId = servletContext.getServletContextName();
+        }
+
+        if(applicationId == null) {
             applicationId = RandomStringUtils.randomAlphanumeric(8);
         }
-        
+
         return applicationId;
     }
 

Modified: portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/impl/resource/SupportedModesServiceImpl.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/impl/resource/SupportedModesServiceImpl.java?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/impl/resource/SupportedModesServiceImpl.java (original)
+++ portals/pluto/trunk/pluto-portal-driver-impl/src/main/java/org/apache/pluto/driver/services/impl/resource/SupportedModesServiceImpl.java Fri Dec  1 22:23:16 2006
@@ -90,6 +90,14 @@
     public boolean isPortletModeSupportedByPortlet(String portletId, String mode) 
     {
         LOG.debug("Is mode [" + mode + "] for portlet [" + portletId + "] supported by the portlet?");
+
+        // hack? or required, can't remember?
+        if(PortletMode.EDIT.toString().equalsIgnoreCase(mode)
+            || PortletMode.HELP.toString().equalsIgnoreCase(mode)
+            || PortletMode.VIEW.toString().equalsIgnoreCase(mode)) {
+            return true;
+        }
+        
         Set supportedModes = (Set)supportedPortletModesByPortlet.get(portletId);
         if (supportedModes == null)
         {
@@ -192,6 +200,10 @@
                 LOG.warn(e);
                 continue;
             }
+
+            if(portletAppDD == null) {
+                continue;
+            }
                         
             // for each portletAppDD, retrieve the portletDD and the supported modes
             Iterator portlets = portletAppDD.getPortlets().iterator();
@@ -217,8 +229,9 @@
                 supportedPortletModesByPortlet.put(
                         PortletWindowConfig.createPortletId(app.getContextPath(), portlet.getPortletName()), 
                         pModes);                     
-            } 
+            }
         }
+
     }
     
     /**

Modified: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/AdminPortlet.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/AdminPortlet.java?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/AdminPortlet.java (original)
+++ portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/AdminPortlet.java Fri Dec  1 22:23:16 2006
@@ -24,36 +24,24 @@
 import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 
-public class AdminPortlet extends GenericPortlet {
+public class AdminPortlet extends GenericPlutoPortlet {
 
 	private static final String VIEW_PAGE = "/WEB-INF/fragments/admin/view.jsp";
 	private static final String EDIT_PAGE = "/WEB-INF/fragments/admin/edit.jsp";
 	private static final String HELP_PAGE = "/WEB-INF/fragments/admin/help.jsp";
 	
 	// GenericPortlet Impl -----------------------------------------------------
-	
-    public void doView(RenderRequest request, RenderResponse response)
-    throws PortletException, IOException {
-        PortletContext context = getPortletContext();
-        PortletRequestDispatcher requestDispatcher =
-        		context.getRequestDispatcher(VIEW_PAGE);
-        requestDispatcher.include(request, response);
+
+
+    public String getViewPage() {
+        return VIEW_PAGE;
     }
 
-    protected void doEdit(RenderRequest request, RenderResponse response)
-    throws PortletException, IOException {
-        PortletContext context = getPortletContext();
-        PortletRequestDispatcher requestDispatcher =
-        		context.getRequestDispatcher(EDIT_PAGE);
-        requestDispatcher.include(request, response);
+    public String getEditPage() {
+        return EDIT_PAGE;
     }
-    
-    protected void doHelp(RenderRequest request, RenderResponse response)
-    throws PortletException, IOException {
-    	PortletContext context = getPortletContext();
-    	PortletRequestDispatcher requestDispatcher =
-    			context.getRequestDispatcher(HELP_PAGE);
-    	requestDispatcher.include(request, response);
+
+    public String getHelpPage() {
+        return HELP_PAGE;
     }
-    
 }

Added: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java?view=auto&rev=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java (added)
+++ portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java Fri Dec  1 22:23:16 2006
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.pluto.driver.portlets;
+
+import javax.portlet.GenericPortlet;
+import javax.portlet.RenderRequest;
+import javax.portlet.RenderResponse;
+import javax.portlet.PortletException;
+import javax.portlet.PortletContext;
+import javax.portlet.PortletRequestDispatcher;
+import java.io.IOException;
+
+
+public abstract class GenericPlutoPortlet extends GenericPortlet {
+
+    public abstract String getViewPage();
+    public abstract String getEditPage();
+    public abstract String getHelpPage();
+
+    public void doView(RenderRequest request, RenderResponse response)
+    throws PortletException, IOException {
+        PortletContext context = getPortletContext();
+        PortletRequestDispatcher requestDispatcher =
+        		context.getRequestDispatcher(getViewPage());
+        requestDispatcher.include(request, response);
+    }
+
+    protected void doEdit(RenderRequest request, RenderResponse response)
+    throws PortletException, IOException {
+        PortletContext context = getPortletContext();
+        PortletRequestDispatcher requestDispatcher =
+        		context.getRequestDispatcher(getEditPage());
+        requestDispatcher.include(request, response);
+    }
+
+    protected void doHelp(RenderRequest request, RenderResponse response)
+    throws PortletException, IOException {
+    	PortletContext context = getPortletContext();
+    	PortletRequestDispatcher requestDispatcher =
+    			context.getRequestDispatcher(getHelpPage());
+    	requestDispatcher.include(request, response);
+    }
+}

Propchange: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/GenericPlutoPortlet.java
------------------------------------------------------------------------------
    svn:keywords = Id Author Date Rev

Added: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java?view=auto&rev=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java (added)
+++ portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java Fri Dec  1 22:23:16 2006
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.pluto.driver.portlets;
+
+
+public class PageAdminPortlet extends GenericPlutoPortlet {
+
+    private static final String VIEW_PAGE = "/WEB-INF/fragments/admin/page/view.jsp";
+    private static final String EDIT_PAGE = "/WEB-INF/fragments/admin/page/edit.jsp";
+    private static final String HELP_PAGE = "/WEB-INF/fragments/admin/page/help.jsp";
+
+
+    public String getViewPage() {
+        return VIEW_PAGE;
+    }
+
+    public String getEditPage() {
+        return EDIT_PAGE;
+    }
+
+    public String getHelpPage() {
+        return HELP_PAGE;
+    }
+}

Propchange: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: portals/pluto/trunk/pluto-portal-driver/src/main/java/org/apache/pluto/driver/portlets/PageAdminPortlet.java
------------------------------------------------------------------------------
    svn:keywords = Id Author Date Rev

Added: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp?view=auto&rev=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp (added)
+++ portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp Fri Dec  1 22:23:16 2006
@@ -0,0 +1,45 @@
+<%--
+Copyright 2004 The Apache Software Foundation
+Licensed  under the  Apache License,  Version 2.0  (the "License");
+you may not use  this file  except in  compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed  under the  License is distributed on an "AS IS" BASIS,
+WITHOUT  WARRANTIES OR CONDITIONS  OF ANY KIND, either  express  or
+implied.
+
+See the License for the specific language governing permissions and
+limitations under the License.
+--%>
+<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
+
+<div>
+  <h2>Portal Pages</h2>
+  <p>
+    <select name="page">
+    <c:forEach items="${driverConfig.pages}" var="page">
+      <option value="<c:out value="${page.name}"/>"><c:out value="${page.name}"/> (<c:out value="${page.uri}"/>)</option>
+    </c:forEach>
+    </select>
+  </p>
+  </div>
+
+<div>
+  <h2>Portlet Applications</h2>
+  <p>
+    <select name="apps" onChange="alert('Once Implemented, you will be able to add this portlet to this page.');">
+    <c:forEach items="${portletContainer.optionalContainerServices.portletRegistryService.registeredPortletApplications}" var="app">
+        <optgroup label="<c:out value="${app.applicationId}"/>">
+            <c:forEach items="${app.portletApplicationDefinition.portlets}" var="portlet">
+                <option value="<c:out value="${portlet.portletName}"/>"><c:out value="${portlet.portletName}"/></option>
+            </c:forEach>
+        </optgroup>
+    </c:forEach>
+    </select>
+  </p>
+</div>
+
+

Propchange: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/fragments/admin/page/view.jsp
------------------------------------------------------------------------------
    svn:keywords = Id Author Date Rev

Modified: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml (original)
+++ portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/pluto-portal-driver-config.xml Fri Dec  1 22:23:16 2006
@@ -37,12 +37,21 @@
     <window-state>maximized</window-state>
     <window-state>minimized</window-state>
   </supports>
-  
+
+
+    <!--
+
+    NOTE: Once all of the services are re-implemented correctly, we will
+    remove this registry from the config. This is because it is no longer
+    necessary, as each portlet registers itself as it starts up!
+    -->
+    
   <portlet-app>
     <context-path>/pluto</context-path>
     <portlets>
       <portlet name="AboutPortlet"/>
       <portlet name="AdminPortlet"/>
+      <portlet name="PlutoPageAdmin"/>
     </portlets>
   </portlet-app>
   
@@ -53,7 +62,7 @@
       <portlet name="TestPortlet2"/>
     </portlets>
   </portlet-app>
-  
+
   <!-- Render configuration which defines the portal pages. -->
   <render-config default="Test Page">
     <page name="Test Page" uri="/WEB-INF/themes/pluto-default-theme.jsp">
@@ -69,6 +78,7 @@
     </page>
     <page name="Pluto Admin" uri="/WEB-INF/themes/pluto-default-theme.jsp">
       <portlet context="/pluto" name="AdminPortlet"/>
+      <portlet context="/pluto" name="PlutoPageAdmin"/>
     </page>
   </render-config>
   

Modified: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/portlet.xml
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/portlet.xml?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/portlet.xml (original)
+++ portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/portlet.xml Fri Dec  1 22:23:16 2006
@@ -21,39 +21,54 @@
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
                         http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd">
-  
-  <portlet>
-    <description>AboutPortletDescription</description>
-    <portlet-name>AboutPortlet</portlet-name>
-    <display-name>About Portlet</display-name>
-    <portlet-class>org.apache.pluto.driver.portlets.AboutPortlet</portlet-class>
-    <supports>
-      <mime-type>text/html</mime-type>
-      <portlet-mode>VIEW</portlet-mode>
-      <portlet-mode>EDIT</portlet-mode>
-      <portlet-mode>HELP</portlet-mode>
-    </supports>
-    <portlet-info>
-      <title>About Apache Pluto</title>
-    </portlet-info>
-  </portlet>
-  
-  <portlet>
-    <description>AdminPortletDescription</description>
-    <portlet-name>AdminPortlet</portlet-name>
-    <display-name>Admin Portlet</display-name>
-    <portlet-class>org.apache.pluto.driver.portlets.AdminPortlet</portlet-class>
-    <supports>
-      <mime-type>text/html</mime-type>
-      <portlet-mode>VIEW</portlet-mode>
-      <portlet-mode>EDIT</portlet-mode>
-      <portlet-mode>HELP</portlet-mode>
-    </supports>
-    <portlet-info>
-      <title>Apache Pluto Portal Admin</title>
-    </portlet-info>
-  </portlet>
-  
+
+    <portlet>
+        <description>AboutPortletDescription</description>
+        <portlet-name>AboutPortlet</portlet-name>
+        <display-name>About Portlet</display-name>
+        <portlet-class>org.apache.pluto.driver.portlets.AboutPortlet</portlet-class>
+        <supports>
+            <mime-type>text/html</mime-type>
+            <portlet-mode>VIEW</portlet-mode>
+            <portlet-mode>EDIT</portlet-mode>
+            <portlet-mode>HELP</portlet-mode>
+        </supports>
+        <portlet-info>
+            <title>About Apache Pluto</title>
+        </portlet-info>
+    </portlet>
+
+    <portlet>
+        <description>AdminPortletDescription</description>
+        <portlet-name>AdminPortlet</portlet-name>
+        <display-name>Admin Portlet</display-name>
+        <portlet-class>org.apache.pluto.driver.portlets.AdminPortlet</portlet-class>
+        <supports>
+            <mime-type>text/html</mime-type>
+            <portlet-mode>VIEW</portlet-mode>
+            <portlet-mode>EDIT</portlet-mode>
+            <portlet-mode>HELP</portlet-mode>
+        </supports>
+        <portlet-info>
+            <title>Apache Pluto Portal Admin</title>
+        </portlet-info>
+    </portlet>
+
+    <portlet>
+        <description>Used to administer pluto pages</description>
+        <portlet-name>PlutoPageAdmin</portlet-name>
+        <display-name>Pluto Page Administration Portlet</display-name>
+        <portlet-class>org.apache.pluto.driver.portlets.PageAdminPortlet</portlet-class>
+        <supports>
+            <mime-type>text/html</mime-type>
+            <portlet-mode>VIEW</portlet-mode>
+            <portlet-mode>EDIT</portlet-mode>
+            <portlet-mode>HELP</portlet-mode>
+        </supports>
+        <portlet-info>
+            <title>Pluto Page Administrator</title>
+        </portlet-info>
+    </portlet>
 </portlet-app>
 
 

Modified: portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/web.xml?view=diff&rev=481508&r1=481507&r2=481508
==============================================================================
--- portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/web.xml (original)
+++ portals/pluto/trunk/pluto-portal/src/main/webapp/WEB-INF/web.xml Fri Dec  1 22:23:16 2006
@@ -85,6 +85,15 @@
         <load-on-startup>1</load-on-startup>
     </servlet>
 
+    <servlet>
+        <servlet-name>PlutoPageAdmin</servlet-name>
+        <servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
+        <init-param>
+            <param-name>portlet-name</param-name>
+            <param-value>PlutoPageAdmin</param-value>
+        </init-param>
+        <load-on-startup>1</load-on-startup>
+    </servlet>
 
     <servlet-mapping>
         <servlet-name>plutoPortalDriver</servlet-name>
@@ -116,7 +125,10 @@
         <url-pattern>/PlutoInvoker/AdminPortlet</url-pattern>
     </servlet-mapping>
 
-
+    <servlet-mapping>
+        <servlet-name>PlutoPageAdmin</servlet-name>
+        <url-pattern>/PlutoInvoker/PlutoPageAdmin</url-pattern>
+    </servlet-mapping>
     <taglib>
         <taglib-uri>http://java.sun.com/portlet</taglib-uri>
         <taglib-location>/WEB-INF/tld/portlet.tld</taglib-location>