[CONF] Confluence Changes in the last 24 hours

2007-08-09 Thread confluence
-
This is a daily summary of all recent changes in Confluence.

-
Updated Spaces:
-

Apache Geronimo Development (GMOxDEV) 
http://cwiki.apache.org/confluence/display/GMOxDEV
|
|-Pages Added or Edited in This Space
 |-- Building Apache Geronimo was last edited by jdillon (07:23 PM).
 |   http://cwiki.apache.org/confluence/display/GMOxDEV/Building+Apache+Geronimo

OpenJPA (openjpa) http://cwiki.apache.org/confluence/display/openjpa
|
|-Pages Added or Edited in This Space
 |-- APIDiscussionFollowUp was created by pcl (09:15 AM).
 |   http://cwiki.apache.org/confluence/display/openjpa/APIDiscussionFollowUp
 |-- OpenJPA Up Close and Personal was last edited by pcl (09:32 AM).
 |   
http://cwiki.apache.org/confluence/display/openjpa/OpenJPA+Up+Close+and+Personal

Apache Camel (CAMEL) http://cwiki.apache.org/confluence/display/CAMEL
|
|-Pages Added or Edited in This Space
 |-- Xml Reference was last edited by jstrachan (09:19 AM).
 |   http://cwiki.apache.org/confluence/display/CAMEL/Xml+Reference

Apache CXF 2.0 Documentation (CXF20DOC) 
http://cwiki.apache.org/confluence/display/CXF20DOC
|
|-Pages Added or Edited in This Space
 |-- WSDL to Java was last edited by mmao (11:27 PM).
 |   http://cwiki.apache.org/confluence/display/CXF20DOC/WSDL+to+Java
 |-- Server HTTP Transport was last edited by njiang (06:59 PM).
 |   http://cwiki.apache.org/confluence/display/CXF20DOC/Server+HTTP+Transport
 |-- Client HTTP Transport was last edited by njiang (06:50 PM).
 |   http://cwiki.apache.org/confluence/display/CXF20DOC/Client+HTTP+Transport
 |-- WS-Security was last edited by andreasmyth (03:45 AM).
 |   http://cwiki.apache.org/confluence/display/CXF20DOC/WS-Security
 |-- JAX-WS Configuration was last edited by andreasmyth (03:19 AM).
 |   http://cwiki.apache.org/confluence/display/CXF20DOC/JAX-WS+Configuration

Apache Struts 2 Plugin Registry (S2PLUGINS) 
http://cwiki.apache.org/confluence/display/S2PLUGINS
|
|-Pages Added or Edited in This Space
 |-- JSCalendar 0.1 Plugin Released was created by [EMAIL PROTECTED] (06:13 AM).
 |   
http://cwiki.apache.org/confluence/display/S2PLUGINS/2007/08/08/JSCalendar+0.1+Plugin+Released

Apache Geronimo Project Management (GMOxPMGT) 
http://cwiki.apache.org/confluence/display/GMOxPMGT
|
|-Pages Added or Edited in This Space
 |-- Release Branching Process was last edited by pkashyap (09:03 AM).
 |   
http://cwiki.apache.org/confluence/display/GMOxPMGT/Release+Branching+Process

Apache Struts 2 Documentation (WW) http://cwiki.apache.org/confluence/display/WW
|
|-Pages Added or Edited in This Space
 |-- Creating and Signing a Distribution was last edited by husted (06:14 PM).
 |   
http://cwiki.apache.org/confluence/display/WW/Creating+and+Signing+a+Distribution

Apache Wicket (WICKET) http://cwiki.apache.org/confluence/display/WICKET
|
|-Pages Added or Edited in This Space
 |-- Wicket SVN was last edited by syl (01:05 AM).
 |   http://cwiki.apache.org/confluence/display/WICKET/Wicket+SVN

Apache Felix (FELIX) http://cwiki.apache.org/confluence/display/FELIX
|
|-Pages Added or Edited in This Space
 |-- iPOJO Tutorial (0.7.3) was last edited by clement.escoffier (11:22 PM).
 |   http://cwiki.apache.org/confluence/display/FELIX/iPOJO+Tutorial+%280.7.3%29

Apache FTPServer Project (FTPSERVER) 
http://cwiki.apache.org/confluence/display/FTPSERVER
|
|-Pages Added or Edited in This Space
 |-- Building was last edited by ngn (11:50 PM).
 |   http://cwiki.apache.org/confluence/display/FTPSERVER/Building
 |-- Downloads was last edited by ngn (11:48 PM).
 |   http://cwiki.apache.org/confluence/display/FTPSERVER/Downloads

OpenEJB (OPENEJB) http://cwiki.apache.org/confluence/display/OPENEJB
|
|-Pages Added or Edited in This Space
 |-- The Team was created by karan_malhi (08:18 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/The+Team
 |-- IRC was created by karan_malhi (08:18 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/IRC
 |-- Issue Tracking was created by karan_malhi (08:18 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/Issue+Tracking
 |-- Repository was created by karan_malhi (08:17 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/Repository
 |-- How to contribute was created by karan_malhi (08:17 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/How+to+contribute
 |-- Netbeans (D) was created by karan_malhi (08:16 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/Netbeans+%28D%29
 |-- IntelliJ  IDEA (D) was created by karan_malhi (08:16 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/IntelliJ++IDEA+%28D%29
 |-- Eclipse (D) was created by karan_malhi (08:15 PM).
 |   http://cwiki.apache.org/confluence/display/OPENEJB/Eclipse+%28D%29
 |-- Developers (IDE) was created by karan_malhi (08:15 PM).
 |   http:

svn commit: r564120 - in /struts/struts2/trunk/plugins/portlet/src: main/java/org/apache/struts2/portlet/ main/java/org/apache/struts2/portlet/dispatcher/ main/java/org/apache/struts2/portlet/result/

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 00:14:51 2007
New Revision: 564120

URL: http://svn.apache.org/viewvc?view=rev&rev=564120
Log:
WW-2052 Put location from renderDirect action in session instead of render 
parameter

Modified:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletActionConstants.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/result/PortletResultTest.java

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletActionConstants.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletActionConstants.java?view=diff&rev=564120&r1=564119&r2=564120
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletActionConstants.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletActionConstants.java
 Thu Aug  9 00:14:51 2007
@@ -103,4 +103,14 @@
  * [EMAIL PROTECTED] 
org.apache.struts2.portlet.context.PortletActionContext}.
  */
 String DEFAULT_ACTION_FOR_MODE = "struts.portlet.defaultActionForMode";
+
+/**
+ * Key for request attribute indicating if the action has been reset. 
+ */
+String ACTION_RESET = "struts.portlet.actionReset";
+
+/**
+ * Key for session attribute indicating the location of the render direct 
action.
+ */
+String RENDER_DIRECT_LOCATION = "struts.portlet.renderDirectLocation";
 }

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java?view=diff&rev=564120&r1=564119&r2=564120
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/DirectRenderFromEventAction.java
 Thu Aug  9 00:14:51 2007
@@ -23,6 +23,10 @@
 import com.opensymphony.xwork2.Action;
 
 import java.io.Serializable;
+import java.util.Map;
+
+import org.apache.struts2.interceptor.SessionAware;
+import org.apache.struts2.portlet.PortletActionConstants;
 
 /**
  * When a portlet is targetted for an event, the portlet will 
receive two
@@ -38,7 +42,7 @@
  * specifying this action and the location of the view, which then will be 
executed in the
  * following render request.
  */
-public class DirectRenderFromEventAction implements Action, Serializable {
+public class DirectRenderFromEventAction implements SessionAware, 
PortletActionConstants, Action, Serializable {
 
 private static final long serialVersionUID = -1814807772308405785L;
 
@@ -54,15 +58,6 @@
 }
 
 /**
- * Set the location of the view.
- *
- * @param location The location to set.
- */
-public void setLocation(String location) {
-this.location = location;
-}
-
-/**
  * Always return success.
  *
  * @return SUCCESS
@@ -70,4 +65,8 @@
 public String execute() throws Exception {
 return SUCCESS;
 }
+
+   public void setSession(Map session) {
+   location = (String)session.get(RENDER_DIRECT_LOCATION);
+   }
 }

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java?view=diff&rev=564120&r1=564119&r2=564120
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/result/PortletResult.java
 Thu Aug  9 00:14:51 2007
@@ -21,6 +21,7 @@
 package org.apache.struts2.portlet.result;
 
 import java.io.IOException;
+import java.util.Map;
 import java.util.StringTokenizer;
 
 import javax.portlet.ActionResponse;
@@ -48,7 +49,7 @@
  * Result type that includes a JSP to render.
  *
  */
-public class PortletResult extends StrutsResultSupport {
+public class PortletResult extends StrutsResultSupport implements 
PortletActionConstants {
 
 private static final long serialVersionUID = 434251393926178567L;
 
@@ -131,11 +132,12 @@
 // View is rendered

svn commit: r564246 - /struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 08:36:52 2007
New Revision: 564246

URL: http://svn.apache.org/viewvc?view=rev&rev=564246
Log:
WW-1989,WW-2053 Provide "mock" implentation of servlet classes wrapping the 
portlet classes. Eases reuse of components/interceptors that has references to 
servlet api objects.

Added:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletConfig.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletContext.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletInputStream.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletOutputStream.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequest.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletRequestDispatcher.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletServletResponse.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/package.html

Added: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java?view=auto&rev=564246
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java
 (added)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/servlet/PortletHttpSession.java
 Thu Aug  9 08:36:52 2007
@@ -0,0 +1,214 @@
+/*
+ * $Id: $
+ *
+ * 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.
+ */
+package org.apache.struts2.portlet.servlet;
+
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.List;
+
+import javax.portlet.PortletSession;
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpSession;
+import javax.servlet.http.HttpSessionContext;
+
+/**
+ * Wrapper object exposing a [EMAIL PROTECTED] PortletSession} as a [EMAIL 
PROTECTED] HttpSession} instance.
+ * Clients accessing this session object will in fact operate on the
+ * [EMAIL PROTECTED] PortletSession} object wrapped by this session object.
+ */
+public class PortletHttpSession implements HttpSession {
+
+   private PortletSession portletSession;
+
+   public PortletHttpSession(PortletSession portletSession) {
+   this.portletSession = portletSession;
+   }
+
+   /*
+* (non-Javadoc)
+* 
+* @see javax.servlet.http.HttpSession#getAttribute(java.lang.String)
+*/
+   public Object getAttribute(String name) {
+   return portletSession.getAttribute(name);
+   }
+
+   /*
+* (non-Javadoc)
+* 
+* @see javax.servlet.http.HttpSession#getAttributeNames()
+*/
+   public Enumeration getAttributeNames() {
+   return portletSession.getAttributeNames();
+   }
+
+   /*
+* (non-Javadoc)
+* 
+* @see javax.servlet.http.HttpSession#getCreationTime()
+*/
+   public long getCreationTime() {
+   return portletSession.getCreationTime();
+   }
+
+   /*
+* (non-Javadoc)
+* 
+* @see javax.servlet.http.HttpSession#getId()
+*/
+   public String getId() {
+   return portletSession.getId();
+   }
+
+   /*
+* (non-Javadoc)
+* 
+* @see javax.servlet.http.HttpSession#getLastAccessedTime()
+*/
+   public long getLastAccessedTime() {
+   return portletSession.getLastAccessedTime();
+   }
+
+   /*
+* (non-Javadoc)
+   

svn commit: r564279 - /struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 10:00:49 2007
New Revision: 564279

URL: http://svn.apache.org/viewvc?view=rev&rev=564279
Log:
Added method to get the portlet context

Modified:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java?view=diff&rev=564279&r1=564278&r2=564279
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/context/PortletActionContext.java
 Thu Aug  9 10:00:49 2007
@@ -25,11 +25,13 @@
 import javax.portlet.ActionRequest;
 import javax.portlet.ActionResponse;
 import javax.portlet.PortletConfig;
+import javax.portlet.PortletContext;
 import javax.portlet.PortletRequest;
 import javax.portlet.PortletResponse;
 import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 
+import org.apache.struts2.StrutsStatics;
 import org.apache.struts2.dispatcher.mapper.ActionMapping;
 import org.apache.struts2.portlet.PortletActionConstants;
 
@@ -192,6 +194,14 @@
  */
 public static Map getModeNamespaceMap() {
 return (Map)getContext().get(MODE_NAMESPACE_MAP);
+}
+
+/**
+ * Get the portlet context.
+ * @return The portlet context.
+ */
+public static PortletContext getPortletContext() {
+   return 
(PortletContext)getContext().get(StrutsStatics.STRUTS_PORTLET_CONTEXT);
 }
 
 }




svn commit: r564280 - /struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 10:06:07 2007
New Revision: 564280

URL: http://svn.apache.org/viewvc?view=rev&rev=564280
Log:
WW-1989,WW-2053,WW-2096 Push action on stack instead of action proxy. Also use 
the new wrapper servlet objects to support components/interceptors that rely on 
the servlet classes.

Modified:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java?view=diff&rev=564280&r1=564279&r2=564280
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/dispatcher/Jsr168Dispatcher.java
 Thu Aug  9 10:06:07 2007
@@ -21,6 +21,7 @@
 package org.apache.struts2.portlet.dispatcher;
 
 import java.io.IOException;
+import java.util.Collection;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Locale;
@@ -37,6 +38,9 @@
 import javax.portlet.RenderRequest;
 import javax.portlet.RenderResponse;
 import javax.portlet.WindowState;
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -55,18 +59,21 @@
 import org.apache.struts2.portlet.PortletSessionMap;
 import org.apache.struts2.portlet.context.PortletActionContext;
 import org.apache.struts2.portlet.context.ServletContextHolderListener;
-import org.apache.struts2.portlet.util.HttpServletRequestMock;
+import org.apache.struts2.portlet.servlet.PortletServletContext;
+import org.apache.struts2.portlet.servlet.PortletServletRequest;
+import org.apache.struts2.portlet.servlet.PortletServletResponse;
 import org.apache.struts2.util.AttributeMap;
 
-import com.opensymphony.xwork2.util.FileManager;
-import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.ActionContext;
 import com.opensymphony.xwork2.ActionProxy;
 import com.opensymphony.xwork2.ActionProxyFactory;
+import com.opensymphony.xwork2.ValidationAware;
 import com.opensymphony.xwork2.config.ConfigurationException;
 import com.opensymphony.xwork2.inject.Container;
+import com.opensymphony.xwork2.util.FileManager;
 import com.opensymphony.xwork2.util.LocalizedTextUtil;
 import com.opensymphony.xwork2.util.TextUtils;
+import com.opensymphony.xwork2.util.ValueStack;
 
 /**
  * 
@@ -339,11 +346,22 @@
  */
 public HashMap createContextMap(Map requestMap, Map parameterMap,
 Map sessionMap, Map applicationMap, PortletRequest request,
-PortletResponse response, PortletConfig portletConfig, Integer 
phase) {
+PortletResponse response, PortletConfig portletConfig, Integer 
phase) throws IOException {
 
 // TODO Must put http request/response objects into map for use with
+   HttpServletResponse dummyResponse = new 
PortletServletResponse(response);
+   HttpServletRequest dummyRequest = new PortletServletRequest(request, 
getPortletContext());
+   ServletContext dummyServletContext = new 
PortletServletContext(getPortletContext());
+   if(EVENT_PHASE.equals(phase)) {
+   dummyRequest = dispatcherUtils.wrapRequest(dummyRequest, 
dummyServletContext);
+   }
 // ServletActionContext
 HashMap extraContext = new HashMap();
+// The dummy servlet objects. Eases reuse of existing interceptors 
that uses the servlet objects.
+extraContext.put(StrutsStatics.HTTP_REQUEST, dummyRequest);
+extraContext.put(StrutsStatics.HTTP_RESPONSE, dummyResponse);
+extraContext.put(StrutsStatics.SERVLET_CONTEXT, dummyServletContext);
+// End dummy servlet objects
 extraContext.put(ActionContext.PARAMETERS, parameterMap);
 extraContext.put(ActionContext.SESSION, sessionMap);
 extraContext.put(ActionContext.APPLICATION, applicationMap);
@@ -400,13 +418,13 @@
 Map sessionMap, Map applicationMap, String portletNamespace,
 Integer phase) throws PortletException {
 LOG.debug("serviceAction");
-HashMap extraContext = createContextMap(requestMap, parameterMap,
-sessionMap, applicationMap, request, response,
-getPortletConfig(), phase);
 String actionName = mapping.getName();
 String namespace = mapping.getNamespace();
 Dispatcher.setInstance(dispatcherUtils);
 try {
+HashMap extraContext = createContextMap(requestMap, parameterMap,
+sessionMap, applicationMap, request, response,
+   

svn commit: r564282 - in /struts/struts2/trunk/plugins/portlet/src: main/java/org/apache/struts2/portlet/interceptor/ main/resources/ test/java/org/apache/struts2/portlet/interceptor/

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 10:15:28 2007
New Revision: 564282

URL: http://svn.apache.org/viewvc?view=rev&rev=564282
Log:
WW-2097 New "aware" interfaces and interceptor. The PortletAwareInterceptor 
replaces the PortletPreferencesInterceptor.

Added:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletContextAware.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletRequestAware.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletResponseAware.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptorTest.java
Modified:
struts/struts2/trunk/plugins/portlet/src/main/resources/struts-plugin.xml

Added: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java?view=auto&rev=564282
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java
 (added)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletAwareInterceptor.java
 Thu Aug  9 10:15:28 2007
@@ -0,0 +1,84 @@
+/*
+ * $Id: $
+ *
+ * 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.
+ */
+package org.apache.struts2.portlet.interceptor;
+
+import javax.portlet.PortletContext;
+import javax.portlet.PortletRequest;
+import javax.portlet.PortletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.struts2.StrutsStatics;
+import org.apache.struts2.interceptor.PrincipalAware;
+import org.apache.struts2.portlet.PortletActionConstants;
+
+import com.opensymphony.xwork2.ActionContext;
+import com.opensymphony.xwork2.ActionInvocation;
+import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
+
+public class PortletAwareInterceptor extends AbstractInterceptor implements 
PortletActionConstants, StrutsStatics {
+
+   private static final long serialVersionUID = 2476509721059587700L;
+   
+   private static final Log LOG = 
LogFactory.getLog(PortletAwareInterceptor.class);
+
+   /**
+ * Sets action properties based on the interfaces an action implements. 
Things like application properties,
+ * parameters, session attributes, etc are set based on the implementing 
interface.
+ *
+ * @param invocation an encapsulation of the action execution state.
+ * @throws Exception if an error occurs when setting action properties.
+ */
+public String intercept(ActionInvocation invocation) throws Exception {
+final Object action = invocation.getAction();
+final ActionContext context = invocation.getInvocationContext();
+
+if (action instanceof PortletRequestAware) {
+PortletRequest request = (PortletRequest) context.get(REQUEST);
+((PortletRequestAware) action).setPortletRequest(request);
+}
+
+if (action instanceof PortletResponseAware) {
+PortletResponse response = (PortletResponse) context.get(RESPONSE);
+((PortletResponseAware) action).setPortletResponse(response);
+}
+if (action instanceof PrincipalAware) {
+PortletRequest request = (PortletRequest) context.get(REQUEST);
+((PrincipalAware) action).setPrincipalProxy(new 
PortletPrincipalProxy(request));
+}
+if (action instanceof PortletContextAware) {
+PortletContext portletContext = (PortletContext) 
context.get(STRUTS_PORTLET_CONTEXT);
+((PortletContextAware) action).setPortletContext(portletContext);
+}
+if (action instanceof PortletPrefere

svn commit: r564283 - /struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesInterceptor.java

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 10:16:06 2007
New Revision: 564283

URL: http://svn.apache.org/viewvc?view=rev&rev=564283
Log:
WW-2097 The PortletAwareInterceptor replaces the PortletPreferencesInterceptor.

Removed:

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/interceptor/PortletPreferencesInterceptor.java



svn commit: r564287 - /struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 10:29:01 2007
New Revision: 564287

URL: http://svn.apache.org/viewvc?view=rev&rev=564287
Log:
WW-2096 Missing test-change that subclipse didn't pick up...

Modified:

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java

Modified: 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java?view=diff&rev=564287&r1=564286&r2=564287
==
--- 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/dispatcher/Jsr168DispatcherTest.java
 Thu Aug  9 10:29:01 2007
@@ -171,7 +171,7 @@
 initRequest(requestParams, new HashMap(), new HashMap(), new 
HashMap(), PortletMode.VIEW, WindowState.NORMAL, true, null);
 setupActionFactory("/view", "testAction", "success", 
ValueStackFactory.getFactory().createValueStack());
 Constraint[] paramConstraints = new Constraint[] {
-eq(PortletActionConstants.EVENT_ACTION), 
same(mockActionProxy.proxy()) };
+eq(PortletActionConstants.EVENT_ACTION), 
same(mockAction.proxy()) };
 
 mockSession.expects(once()).method("setAttribute").with(
 paramConstraints);




svn commit: r564485 - in /struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet: PortletRequestMapTest.java PortletSessionMapTest.java

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 23:37:07 2007
New Revision: 564485

URL: http://svn.apache.org/viewvc?view=rev&rev=564485
Log:
WW-1836 Order of the entries in the entry set is not guaranteed.

Modified:

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java

Modified: 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java?view=diff&rev=564485&r1=564484&r2=564485
==
--- 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java
 Thu Aug  9 23:37:07 2007
@@ -96,12 +96,22 @@
 assertEquals(2, entries.size());
 Iterator it = entries.iterator();
 Map.Entry entry = (Map.Entry)it.next();
-assertEquals("testAttribute1", entry.getKey());
-assertEquals("testValue1", entry.getValue());
+checkEntry(entry);
 entry = (Map.Entry)it.next();
-assertEquals("testAttribute2", entry.getKey());
-assertEquals("testValue2", entry.getValue());
+checkEntry(entry);
 
 }
+
+   private void checkEntry(Map.Entry entry) {
+   if(entry.getKey().equals("testAttribute1")) {
+   assertEquals("testValue1", entry.getValue());
+}
+else if(entry.getKey().equals("testAttribute2")) {
+   assertEquals("testValue2", entry.getValue());
+}
+else {
+   fail("Unexpected entry in etry set: " + entry);
+}
+   }
 
 }

Modified: 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java?view=diff&rev=564485&r1=564484&r2=564485
==
--- 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java
 Thu Aug  9 23:37:07 2007
@@ -99,12 +99,23 @@
 assertEquals(2, entries.size());
 Iterator it = entries.iterator();
 Map.Entry entry = (Map.Entry)it.next();
-assertEquals("testAttribute1", entry.getKey());
-assertEquals("testValue1", entry.getValue());
+checkEntry(entry);
 entry = (Map.Entry)it.next();
-assertEquals("testAttribute2", entry.getKey());
-assertEquals("testValue2", entry.getValue());
+checkEntry(entry);
 
 }
+
+   private void checkEntry(Map.Entry entry) {
+   if(entry.getKey().equals("testAttribute1")) {
+   assertEquals("testValue1", entry.getValue());
+}
+else if(entry.getKey().equals("testAttribute2")) {
+   assertEquals("testValue2", entry.getValue());
+}
+else {
+   fail("Unexpected entry in etry set: " + entry);
+}
+   }
+
 
 }




svn commit: r564476 - in /struts/struts2/trunk/plugins/portlet: ./ src/main/java/org/apache/struts2/portlet/ src/test/java/org/apache/struts2/portlet/

2007-08-09 Thread nilsga
Author: nilsga
Date: Thu Aug  9 23:07:48 2007
New Revision: 564476

URL: http://svn.apache.org/viewvc?view=rev&rev=564476
Log:
WW-1836 Refactored unit tests for PortletSessionMap and PortletRequestMap. Also 
removed some unecessary logging.

Added:

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletRequest.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletSession.java
Modified:
struts/struts2/trunk/plugins/portlet/pom.xml

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java

struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletRequestMapTest.java

struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/PortletSessionMapTest.java

Modified: struts/struts2/trunk/plugins/portlet/pom.xml
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/pom.xml?view=diff&rev=564476&r1=564475&r2=564476
==
--- struts/struts2/trunk/plugins/portlet/pom.xml (original)
+++ struts/struts2/trunk/plugins/portlet/pom.xml Thu Aug  9 23:07:48 2007
@@ -112,6 +112,13 @@
 test
 

+
+log4j
+log4j
+1.2.9
+test
+
+   
 
 
 org.springframework

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java?view=diff&rev=564476&r1=564475&r2=564476
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletRequestMap.java
 Thu Aug  9 23:07:48 2007
@@ -49,15 +49,6 @@
  */
 public PortletRequestMap(PortletRequest request) {
 this.request = request;
-if(LOG.isDebugEnabled()) {
-LOG.debug("Dumping request parameters: ");
-Iterator params = request.getParameterMap().keySet().iterator();
-while(params.hasNext()) {
-String key = (String)params.next();
-String val = request.getParameter(key);
-LOG.debug(key + " = " + val);
-}
-}
 }
 
 /**

Modified: 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java?view=diff&rev=564476&r1=564475&r2=564476
==
--- 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java
 (original)
+++ 
struts/struts2/trunk/plugins/portlet/src/main/java/org/apache/struts2/portlet/PortletSessionMap.java
 Thu Aug  9 23:07:48 2007
@@ -52,15 +52,6 @@
  */
 public PortletSessionMap(PortletRequest request) {
 this.session = request.getPortletSession();
-if(LOG.isDebugEnabled()) {
-LOG.debug("Dumping session info: ");
-Enumeration enumeration = session.getAttributeNames();
-while(enumeration.hasMoreElements()) {
-String key = (String)enumeration.nextElement();
-Object val = session.getAttribute(key);
-LOG.debug(key + " = " + val);
-}
-}
 }
 
 /**

Added: 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletRequest.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletRequest.java?view=auto&rev=564476
==
--- 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletRequest.java
 (added)
+++ 
struts/struts2/trunk/plugins/portlet/src/test/java/org/apache/struts2/portlet/MockPortletRequest.java
 Thu Aug  9 23:07:48 2007
@@ -0,0 +1,165 @@
+package org.apache.struts2.portlet;
+
+import java.security.Principal;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.portlet.PortalContext;
+import javax.portlet.PortletMode;
+import javax.portlet.PortletPreferences;
+import javax.portlet.PortletRequest;
+import javax.portlet.PortletSession;
+import javax.portlet.WindowState;
+
+public class MockPortletRequest implemen