Julien can explain this in more detail, but the short is: yes, this is expected.
The Portlet Spec demands that the request params are only available to the PortletRequest, if they were added to a RenderURL or ActionURL in the Protlet that will receive that request. In other words: Portlets are not allowed to see the HttpServletRequest's parameters.
does that make sense ?
...I tried ;)
Yes, it is logical :).
So there's no way to pass some parameters to portlets while constructing an URL to another page?
there's always a way ;) In this case it's just not a standard way. You can always look at the way the portal is building URLs, it's no secret. The issue is that this can change with any version.....
You mean parsing request.getURL()? Or maybe looking at request.getPortletSession()? All I want to do is to create a link to a page with some parameters that I can read in portlets.
did someone find out what Holzner meant. A smal code sample would have been great!
The PortletSession does not return any parameters nor attributes. Parsing the Url isn't realy the convenient way to getting parameters (stepping back to stone age?)
I understand that form variables are not passed to the portlets and one need to pass the variables using renderURL tag.
<portlet:renderURL><portlet:param name="variableName" value="variableValue"/></portlet:renderURL>
The question I have is how do I set this variable to the value I get from a textBox or hidden variable or a java script variable using the renderURL tag.
Thank you very much.