You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2005/01/17 09:45:41 UTC

svn commit: r125403 - in cocoon/trunk/src/blocks/portal/java/org/apache/cocoon: components/modules/input components/variables portal/components/modules/input portal/coplet/adapter/impl portal/event/aspect/impl portal/impl portal/layout portal/layout/renderer/aspect/impl portal/profile portal/profile/impl

Author: cziegeler
Date: Mon Jan 17 00:45:38 2005
New Revision: 125403

URL: http://svn.apache.org/viewcvs?view=rev&rev=125403
Log:
Fix copying of profile
Modified:
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java
   cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/modules/input/PortletURLModule.java	Mon Jan 17 00:45:38 2005
@@ -113,16 +113,16 @@
             if (name.length() > 0) {
                 parameters.put(PortletEnvironment.PARAMETER_PATH_INFO, name);
             }
-            for (Iterator i = parameters.keySet().iterator(); i.hasNext();) {
-                String param = (String) i.next();
-                Object values = parameters.get(param);
+            for (Iterator i = parameters.entrySet().iterator(); i.hasNext();) {
+                Map.Entry me = (Map.Entry)i.next();
+                String param = (String)me.getKey();
+                Object values = me.getValue();
                 if (values instanceof String) {
                     url.setParameter(param, (String) values);
                 } else {
                     url.setParameter(param, (String[]) values);
                 }
             }
-
             return url.toString();
         }
         if (name.startsWith(PREFIX_RENDER)) {

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/NOPVariableResolver.java	Mon Jan 17 00:45:38 2005
@@ -63,4 +63,5 @@
     public String resolve() throws PatternException {
         return this.expression;
     }
+
 }

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/components/variables/PreparedVariableResolver.java	Mon Jan 17 00:45:38 2005
@@ -58,6 +58,7 @@
     
     public PreparedVariableResolver(String expr, ServiceManager manager, Context context) 
     throws PatternException {
+        
         super(null);
         this.expression = expr;
         this.manager = manager;

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/components/modules/input/SkinModule.java	Mon Jan 17 00:45:38 2005
@@ -25,10 +25,11 @@
 import org.apache.avalon.framework.service.ServiceSelector;
 import org.apache.cocoon.components.modules.input.InputModule;
 import org.apache.cocoon.portal.PortalService;
+import org.apache.cocoon.portal.layout.Layout;
 import org.apache.cocoon.portal.layout.SkinDescription;
 
 /**
- * FIXME We can use the module chaining!
+ * This input module provides information about the current selected skin
  * 
  * @version CVS $Id: SkinModule.java,v 1.4 2005/01/07 10:21:46 cziegeler Exp $
  */
@@ -77,11 +78,21 @@
 
             portalService = (PortalService)this.manager.lookup(PortalService.ROLE);
 
+            String skinName = null;
             // get the current skin
-            // TODO
-            String skinName = (String)this.globalModule.getAttribute("skin", modeConf, objectModel);
+            // the skin is stored as a parameter on the root layout
+            // if not, the global module is used
+            // fallback is: common
+            final Layout rootLayout = portalService.getComponentManager().getProfileManager().getPortalLayout(null, null);
+            if ( rootLayout != null ) {
+                skinName = (String)rootLayout.getParameters().get("skin");
+            }
+            // use the global module
+            if ( skinName == null ) {
+                skinName = (String)this.globalModule.getAttribute("skin", modeConf, objectModel);
             if ( skinName == null ) {
-                skinName = "basic";
+                skinName = "common";
+            }
             }
             
             // find the correct skin
@@ -100,6 +111,14 @@
                     return desc.getBasePath();
                 } else if ( "skin.thumbnailpath".equals(name) ) {
                     return desc.getThumbnailPath();
+                } else if ( name.startsWith("skin.thumbnailuri.") ) {
+                    String selectedSkinName = name.substring(name.lastIndexOf(".")+ 1, name.length());
+                    for(Iterator it = portalService.getSkinDescriptions().iterator(); it.hasNext();) {
+                        SkinDescription selected = (SkinDescription) it.next();
+                        if(selected.getName().equals(selectedSkinName)) {
+                            return selected.getBasePath() + "/"  + selected.getThumbnailPath(); 
+                }
+            }
                 }
             }
             return null;

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/coplet/adapter/impl/ApplicationCopletAdapter.java	Mon Jan 17 00:45:38 2005
@@ -94,7 +94,7 @@
                 Boolean addParams = (Boolean)this.getConfiguration(coplet, "appendParameters");
                 if ( addParams != null && addParams.booleanValue() ) {
                     final StringBuffer uri = new StringBuffer(event.getLink());
-                    boolean hasParams = (uri.indexOf("?") != -1);
+                    boolean hasParams = (uri.toString().indexOf("?") != -1);
                     
                     // append parameters - if any
                     final Map objectModel = ContextHelper.getObjectModel(this.context);

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/event/aspect/impl/RequestParameterEventAspect.java	Mon Jan 17 00:45:38 2005
@@ -54,12 +54,10 @@
             }
         } else {
             List list = (List) request.getAttribute("org.apache.cocoon.portal." + parameterName);
-            if (list != null)
-            {
+            if (list != null) {
                 Event[] events = (Event[]) list.toArray(new Event[0]);
                 final Publisher publisher = context.getEventPublisher();
-                for (int i = 0; i < events.length; i++)
-                {
+                for (int i = 0; i < events.length; i++) {
                     publisher.publish(events[i]);
                 }
             }

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/impl/DefaultLinkService.java	Mon Jan 17 00:45:38 2005
@@ -141,8 +141,7 @@
             if (!comparableEvent || !current.equalsEvent((ComparableEvent) event)) {
                 if (hasParams) {
                     buffer.append('&');
-                }
-                else {
+                } else {
                     buffer.append('?');
                 }
                 buffer.append((String) objects[1]).append('=').append(SourceUtil.encode((String) objects[2]));
@@ -208,8 +207,7 @@
             if (!found) {
                 if (hasParams) {
                     buffer.append('&');
-                }
-                else {
+                } else {
                     buffer.append('?');
                 }
                 buffer.append((String) objects[1]).append('=').append(SourceUtil.encode((String) objects[2]));
@@ -223,12 +221,10 @@
             final Object current = iter.next();
             if (current instanceof Event) {
                 hasParams = this.addEvent(buffer, (Event) current, hasParams);
-            }
-            else if (current instanceof ParameterDescription) {
+            } else if ( current instanceof ParameterDescription ) {
                 if (hasParams) {
                     buffer.append('&');
-                }
-                else {
+                } else {
                     buffer.append('?');
                     hasParams = true;
                 }
@@ -388,4 +384,4 @@
         }
         return parameterName;
     }
-}
\ No newline at end of file
+}

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/AbstractLayout.java	Mon Jan 17 00:45:38 2005
@@ -42,13 +42,6 @@
     
     protected Map parameters = new LinkedMap();
 
-    /*
-     * Default constructor
-     */
-    public AbstractLayout() {
-        
-    }
-
     /* (non-Javadoc)
      * @see org.apache.cocoon.portal.layout.Parameters#getParameters()
      */

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/Item.java	Mon Jan 17 00:45:38 2005
@@ -43,8 +43,10 @@
 	 */
 	public final void setLayout(Layout layout) {
 		this.layout = layout;
+		if(layout != null) {
 		layout.setParent(this);
 	}
+	}
     
     public final CompositeLayout getParent() {
         return this.parentLayout;
@@ -71,6 +73,7 @@
             Item clone = (Item)this.clone();
             if ( this.layout != null ) {
                 clone.layout = this.layout.copy();
+                clone.layout.setParent(clone);
             }
             clone.parentLayout = parent;
             return clone;

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCompositeAspect.java	Mon Jan 17 00:45:38 2005
@@ -40,7 +40,7 @@
  * @author <a href="mailto:cziegeler@s-und-n.de">Carsten Ziegeler</a>
  * @author <a href="mailto:volker.schmitt@basf-it-services.com">Volker Schmitt</a>
  * 
- * @version CVS $Id: AbstractCompositeAspect.java,v 1.7 2004/04/25 20:09:34 haul Exp $
+ * @version CVS $Id$
  */
 public abstract class AbstractCompositeAspect
     extends AbstractAspect {
@@ -81,9 +81,11 @@
      * renderer for a layout to render it.
      */
     protected void processLayout(Layout layout, PortalService service, ContentHandler handler) throws SAXException {
-        final String rendererName = layout.getRendererName();
-        final Renderer renderer = service.getComponentManager().getRenderer(rendererName);
-        renderer.toSAX(layout, service, handler);
+        if ( layout != null ) {
+            final String rendererName = layout.getRendererName();
+            final Renderer renderer = service.getComponentManager().getRenderer(rendererName);
+            renderer.toSAX(layout, service, handler);
+       }
     }
 
 }

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/ProfileManager.java	Mon Jan 17 00:45:38 2005
@@ -116,14 +116,6 @@
     Collection getCopletDatas();
     
     /**
-     * Copy the current (default) layout and store it under
-     * the provided key.
-     * The copy includes copying of layout objects (with attached
-     * items) and coplet instance datas.
-     */
-    Layout copyProfile(String layoutKey);
-    
-    /**
      * Store the provided profile under the layoutKey.
      * This method can be used to overwrite a profile with another
      * one.

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java	Mon Jan 17 00:45:38 2005
@@ -108,17 +108,4 @@
         // overwrite in subclass
     }
 
-    /* (non-Javadoc)
-     * @see org.apache.cocoon.portal.profile.ProfileManager#copyProfile(java.lang.String)
-     */
-    public Layout copyProfile(String layoutKey) {
-        throw new RuntimeException("Copy profile is not implemented.");
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.cocoon.portal.profile.ProfileManager#storeProfile(org.apache.cocoon.portal.layout.Layout, java.lang.String)
-     */
-    public void storeProfile(Layout rootLayout, String layoutKey) {
-        throw new RuntimeException("Store profile is not implemented.");
-    }
 }

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/AbstractUserProfileManager.java	Mon Jan 17 00:45:38 2005
@@ -411,4 +411,25 @@
         }
     }
     
+    /* (non-Javadoc)
+     * @see org.apache.cocoon.portal.profile.ProfileManager#storeProfile(org.apache.cocoon.portal.layout.Layout, java.lang.String)
+     */
+    public void storeProfile(Layout rootLayout, String layoutKey) {
+        PortalService service = null;
+        
+        try {
+            service = (PortalService) this.manager.lookup(PortalService.ROLE);
+            if ( null == layoutKey ) {
+                layoutKey = service.getDefaultLayoutKey();
+            }
+
+            final String layoutAttributeKey = "Layout:" + layoutKey;
+            
+            service.setAttribute(layoutAttributeKey, rootLayout);
+        } catch (Exception ce) {
+            throw new CascadingRuntimeException("Exception during loading of profile.", ce);
+        } finally {
+            this.manager.release(service);
+        }
+    }
 }

Modified: cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java
Url: http://svn.apache.org/viewcvs/cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java?view=diff&rev=125403&p1=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java&r1=125402&p2=cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java&r2=125403
==============================================================================
--- cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java	(original)
+++ cocoon/trunk/src/blocks/portal/java/org/apache/cocoon/portal/profile/impl/StaticProfileManager.java	Mon Jan 17 00:45:38 2005
@@ -364,4 +364,12 @@
             this.manager.release(service);
         }
     }
+    
+    
+    /* (non-Javadoc)
+     * @see org.apache.cocoon.portal.profile.ProfileManager#storeProfile(org.apache.cocoon.portal.layout.Layout, java.lang.String)
+     */
+    public void storeProfile(Layout rootLayout, String layoutKey) {
+        throw new RuntimeException("The static profile manager does not support the storeProfile() method.");
+    }
 }