taylor      2004/04/06 21:15:32

  Modified:    portal/src/java/org/apache/jetspeed/engine/servlet
                        ServletRequestImpl.java
  Log:
  issue Js2-4 - patch from Ate Douma

  

  PR:

  Obtained from:

  Submitted by: 

  Reviewed by:  

  CVS: ----------------------------------------------------------------------

  CVS: PR:

  CVS:   If this change addresses a PR in the problem report tracking

  CVS:   database, then enter the PR number(s) here.

  CVS: Obtained from:

  CVS:   If this change has been taken from another system, such as NCSA,

  CVS:   then name the system in this line, otherwise delete it.

  CVS: Submitted by:

  CVS:   If this code has been contributed to Apache by someone else; i.e.,

  CVS:   they sent us a patch or a new module, then include their name/email

  CVS:   address here. If this is your work then delete this line.

  CVS: Reviewed by:

  CVS:   If we are doing pre-commit code reviews and someone else has

  CVS:   reviewed your changes, include their name(s) here.

  CVS:   If you have not had it reviewed then delete this line.

  
  Revision  Changes    Path
  1.9       +37 -35    
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/engine/servlet/ServletRequestImpl.java
  
  Index: ServletRequestImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/engine/servlet/ServletRequestImpl.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- ServletRequestImpl.java   31 Mar 2004 01:19:24 -0000      1.8
  +++ ServletRequestImpl.java   7 Apr 2004 04:15:32 -0000       1.9
  @@ -17,11 +17,15 @@
   
   import java.util.Collections;
   import java.util.Enumeration;
  +import java.util.HashMap;
  +import java.util.Iterator;
   import java.util.Map;
   
   import javax.servlet.http.HttpServletRequest;
   import javax.servlet.http.HttpServletRequestWrapper;
   
  +import org.apache.jetspeed.container.url.PortalURL;
  +import org.apache.jetspeed.request.JetspeedRequestContext;
   import org.apache.pluto.om.window.PortletWindow;
   
   /**
  @@ -69,57 +73,55 @@
   
       }
   
  -    public Map getParameterMap()
  +    public Map getParameterMap() 
       {
  -        /*
  -         * DST TODO: REMOVING this code for now so that FORM post parameters are 
passed on.
  -         * I will schedule time to rewrite and ensure it works with the spec 
  -         * 
           //get control params
  -        if (portletParameters == null)
  +        if (portletParameters == null) 
           {
  -
               portletParameters = new HashMap();
   
  -            Iterator iterator = control.getRenderParamNames(portletWindow);
  -            while (iterator.hasNext())
  +            JetspeedRequestContext context = (JetspeedRequestContext)
  +                  getAttribute("org.apache.jetspeed.request.RequestContext");
  +            if (context != null) 
               {
  -                String name = (String) iterator.next();
  -
  -                String[] values = control.getRenderParamValues(portletWindow, name);
  -
  -                portletParameters.put(name, values);
  +                PortalURL url = context.getPortalURL();
  +                Iterator iter = url.getRenderParamNames(portletWindow);
  +                while (iter.hasNext()) 
  +                {
  +                    String name = (String) iter.next();
  +                    String[] values = url.getRenderParamValues(
  +                            portletWindow, name);
  +                    portletParameters.put(name, values);
   
  +                }
               }
   
               //get request params
  -            String pid = control.getPIDValue();
  -            String wid = portletWindow.getId().toString();
  -            if (pid.equals(wid))
  +            for (Enumeration parameters = super.getParameterNames();  
parameters.hasMoreElements(); ) 
               {
  -                for (Enumeration parameters = super.getParameterNames(); 
parameters.hasMoreElements();)
  +                String paramName = (String) parameters.nextElement();
  +                String[] paramValues = (String[]) super
  +                        .getParameterValues(paramName);
  +                String[] values = (String[]) portletParameters.get(paramName);
  +
  +                if (values != null) 
                   {
  -                    String paramName = (String) parameters.nextElement();
  -                    String[] paramValues = (String[]) 
super.getParameterValues(paramName);
  -                    String[] values = (String[]) portletParameters.get(paramName);
  -
  -                    if (values != null)
  -                    {
  -                        String[] temp = new String[paramValues.length + 
values.length];
  -                        System.arraycopy(paramValues, 0, temp, 0, 
paramValues.length);
  -                        System.arraycopy(values, 0, temp, paramValues.length, 
values.length);
  -                        paramValues = temp;
  -                    }
  -                    portletParameters.put(paramName, paramValues);
  +                    String[] temp = new String[paramValues.length
  +                            + values.length];
  +                    System.arraycopy(paramValues, 0, temp, 0,
  +                            paramValues.length);
  +                    System.arraycopy(values, 0, temp, paramValues.length,
  +                            values.length);
  +                    paramValues = temp;
                   }
  +                portletParameters.put(paramName, paramValues);
               }
           }
  -
           return Collections.unmodifiableMap(portletParameters);
  -        */
  -        return Collections.unmodifiableMap(super.getParameterMap());
  +        // return Collections.unmodifiableMap(super.getParameterMap().keySet());
  +        
       }
  -
  +        
       public Enumeration getParameterNames()
       {
           return Collections.enumeration(this.getParameterMap().keySet());
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to