tapestry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thiago H. de Paula Figueiredo (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (TAP5-1803) URL encoding in ActivationRequestParameter is very strict
Date Wed, 13 Jul 2016 21:56:20 GMT

    [ https://issues.apache.org/jira/browse/TAP5-1803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15375842#comment-15375842
] 

Thiago H. de Paula Figueiredo commented on TAP5-1803:
-----------------------------------------------------

Hello, [~jkemnade] and [~kaosko]!

To be honest, in hindsight, I'm not sure why {{URLEncoder}} is used over anything which goes
into or comes from request parameters, making them not work as anyone would expect. Regarding
handling of empty string vs null, I don't think Tapestry should do any encoding about it:
if no query parameter with that name, field receives null; if query parameter with that name
but no value, field receives whatever the contributed {{ValueEncoder}} is for its Java type.
{{URLEncoder}} usage makes sense for activation contexts, and query parameters are most definitely
*not* activation context.

Cheers!

> URL encoding in ActivationRequestParameter is very strict
> ---------------------------------------------------------
>
>                 Key: TAP5-1803
>                 URL: https://issues.apache.org/jira/browse/TAP5-1803
>             Project: Tapestry 5
>          Issue Type: Bug
>          Components: tapestry-core
>    Affects Versions: 5.3.1, 5.4
>            Reporter: David Canteros
>              Labels: @ActivationRequestParameter, InvalidaArgumenteException, URLEncoder,
>
> The URLEncoder that perform the URL encoding process does not include the following "unreserved
characters" : 	 
>  !  ~  *  ' (  )	 
> (see rfc2396 Uniform Resource Identifiers (URI): Generic Syntax, item 2.3)
> 	 
> Because the fix of TAP5-1768, from v5.3.1 the @ActivationRequestParameter requires this
enconding, which becomes incompatible with the standard.
> Thus, any URL which contains those symbols will throw an InvalidaArgumenteException.
Tapestry should consider that the ActivationRequestParameter is a standar way of parameter
sending, and the parameters sent in this way probably not have the "strict" coding process
of the URLEncoder.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message