Skip to main content

[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

  • From: "Neil Griffin (JIRA)" < >
  • To:
  • Subject: [JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters
  • Date: Tue, 30 Jul 2013 15:00:25 +0000 (UTC)
  • Auto-submitted: auto-generated


    [ 
https://java.net/jira/browse/PORTLETSPEC3-8?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=366956#action_366956
 ] 

Neil Griffin commented on PORTLETSPEC3-8:
-----------------------------------------

Regarding the following sentence:

{quote}Contents of this map may be modified, but modifying the map does not 
directly affect the render parameters. In order to set the parameters to the 
values in the modified map, the setRenderParameters(Map) with the modified 
map as a parameter must be used.{quote}

Using the "Set Parms direct Map #1" (case 4) and "Set Parms direct Map#2" 
(case 5) buttons, I found that modifying the following code *will indeed 
cause the underlying map to be changed on Liferay Portal*:

{code}actionResponse.getRenderParameterMap().put("privateRenderParameter3", 
values);{code}

It is possible that portlet developers have been calling 
getRenderParameterMap().put(name, value) in order to set values, and changing 
to an immutable map would cause legacy applications to be 
non-backward-compatible.

Because of this, my vote would be that interpretation be left to the 
implementation, rather than tighten-up the Spec requirement. Therefore I 
would recommend changing part of the sentence to the following:

"modifying the map is implementation dependent and therefore may or may not 
directly affect the render parameters. In order to guarantee that the 
modified map affects the render parameters, the setRenderParameters(Map) with 
the modified map as a parameter must be used."


> Errata: Clarify inconsistencies regarding getting and setting parameters
> ------------------------------------------------------------------------
>
>                 Key: PORTLETSPEC3-8
>                 URL: https://java.net/jira/browse/PORTLETSPEC3-8
>             Project: portletspec3
>          Issue Type: Improvement
>          Components: JSR 286 Portlet Specification Errata
>            Reporter: msnicklous
>            Assignee: msnicklous
>            Priority: Minor
>
> Reading the spec document on parameters and comparing it with the javadoc on
> "get...Parameter..." and "set...Parameter..." calls on various Response, 
> Request, and
> URL classes, it seems to me that there are a number of inconsistencies that 
> should
> be addressed, for example:
> # Is a parameter allowed to have a value of null?
> # Under which cases (if any) should setting a parameter to a value of null 
> remove the parameter?
> # In which cases exactly are public parameters get and set?
> # In which cases are public render parameters set or updated?
> # In which cases are public render parameters removed?
> # Should the "getParameterMap" methods always return an immutable map?
> # probably more that I haven't noticed yet ... 
> To #6 - 
> {noformat}
> The javadoc for PortletRequest.getParameterMap states:
> -------------------------
>     Returns:
>         an immutable Map containing parameter names as keys and parameter 
> values as map 
>         values, or an empty Map if no parameters exist. 
>         The keys in the parameter map are of type String. 
>         The values in the parameter map are of type String array (String[]).
> -------------------------
> While the javadoc for BaseURL.getParameterMap states:
> -------------------------
> Returns:
>     Map containing parameter names as keys and parameter values as map 
>     values, or an empty Map if no parameters exist. 
>     The keys in the parameter map are of type String. 
>     The values in the parameter map are of type String array (String[]).
> -------------------------
> {noformat}
> Shouldn't the returned Map values be consistently immutable? 
> If not, and if we want to be able to update the actual parameters by 
> updating the
> Map returned by BaseURL.getParameterMap, it needs to be described clearly.

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

        


[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

msnicklous (JIRA) 07/26/2013

<Possible follow-up(s)>

[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

Neil Griffin (JIRA) 07/30/2013

[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

msnicklous (JIRA) 07/31/2013

[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

msnicklous (JIRA) 07/31/2013

[JIRA] Commented: (PORTLETSPEC3-8) Errata: Clarify inconsistencies regarding getting and setting parameters

andre.hagemeier (JIRA) 07/31/2013
 
 
Close
loading
Please Confirm
Close