portals-bridges-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ate Douma (JIRA)" <bridges-...@portals.apache.org>
Subject [jira] Commented: (PB-43) Http request parameters are missing in JSP
Date Fri, 09 Jun 2006 19:14:30 GMT
    [ http://issues.apache.org/jira/browse/PB-43?page=comments#action_12415600 ] 

Ate Douma commented on PB-43:
-----------------------------

Ah, sorry for the initial misreading, although the conclusion still stands: its a feature,
no bug :)

Automatically putting (all) request parameters into the url as renderParameters is a very,
very bad idea!
RenderParameters usually all are stored in the resulting request url, and that the same applies
for other portlets on the page too
Note: Jetspeed also allows session based storage, I don't know about Liferay.
As the formal size limit for an url is 4k (and lots of browsers only support up to 2k), it
quickly becomes problematic if you have many portlets on a page
and/or post large sized parameters (like multi-line comments, file uploads etc.).

Now, for a specific portlet which *knows* its only using a limited and a small set of request
parameters, transforming all parameters to render parameters
might be a quick and easy solution.
But this definitely is not the general case.

Furthermore, I strongly advise against such usage of request parameters.
In JSR-168 portlet land, you really should stick to a proper MVC implementation and handling
of your application logic,
meaning:
- use the ActionRequest for processing posted form data and updating your model
- use the RenderRequest to query your model to determine what should be presented in your
view
This way, you really don't need the original request parameters anymore in the RenderRequest,
although you might need to communicate some context
information (like the id of an article to display) and for that you can use a renderParameter.

But If you really do want to pass on the request parameters to the RenderRequest, I'd say
put the whole map (ActionRequest.getParameterMap()) into your
portlet session and retrieve it again from the RenderRequest. You can even easily write a
base portlet doing that automatically for you if you really want that.
I myself really have no intension for providing such a logic to the Struts Bridge or any other
(portlet) framework for that matter as I consider it bad practice.    


> Http request parameters are missing in JSP
> ------------------------------------------
>
>          Key: PB-43
>          URL: http://issues.apache.org/jira/browse/PB-43
>      Project: Portals Bridges
>         Type: Bug

>   Components: struts
>  Environment: LifeRay 3.6.1
> portals-bridges-struts 1.2.7-1.0
>     Reporter: Konstantin Pavlov

>
> Request parameters, passed to the ActionRequest are missing in the RenderRequest (I need
to get an access to the request parameters from within JSP/my custom tags).
> The solution is to make StrutsPortlet to copy(put) all parameters from ActionRequest
to ActionResponse, using ActionResponse.setRenderParameter(...).
> See JSR-Specification: "PLT.12.2.3 Render Parameters".

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: bridges-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: bridges-dev-help@portals.apache.org


Mime
View raw message