I see what you're saying, you are using Tapestry's URLEncoder.  When I do that, 
j...@gmail.com becomes: joe$0040gmail.com

When I pass that like this: /thanks?email=joe$0040gmail.com it indeed works.

Unfortunately (for me), I get this parameter passed from non-Tapestry code, and 
the rest of the internet uses %-encoding 
(http://tools.ietf.org/html/rfc3986#section-2), which makes this a problem for 
me, especially since this seems to be one of the few places where Tapestry 
gives me no way to intercept this behavior (typically Tapestry is GREAT about 
that).

I *think* that the bug report (https://issues.apache.org/jira/browse/TAP5-1768) 
that his had been addressed in TS 5.3.1, but it still doesn't seem to work.

Maybe I am posting to the wrong list?

Thanks!
Jochen


On Jan 16, 2012, at 8:52 AM, Lenny Primak wrote:

> I do the same thing (but have embedded slashes (/) instead of the '@' sign)
> and it works perfectly.
> 
> On Jan 16, 2012, at 11:47 AM, Jochen Frey wrote:
> 
>> That's exactly what I did (see my example below where I show the encoded 
>> parameter), which is why the email is sent as: /thanks?email=joe%40gmail.com 
>> (and not as j...@gmail.com), but it still breaks.  
>> 
>> It looks to me like https://issues.apache.org/jira/browse/TAP5-1768 may not 
>> be fixed (or not fixed correctly) in TS 5.3.1?
>> 
>> Any help appreciated!
>> Jochen
>> 
>> On Jan 16, 2012, at 6:18 AM, Lenny Primak wrote:
>> 
>>> The query parameter needs to b e URLencoded otherwise it won't pass 
>>> validation, which is exactly what happens in your code. Use 
>>> URLencoder.encode() or similar. 
>>> 
>>> 
>>> 
>>> On Jan 16, 2012, at 12:23 AM, Jochen Frey <joc...@jochenfrey.com> wrote:
>>> 
>>>> Hi!
>>>> 
>>>> I am using a form to get e-mail signups into salesforce.com.  This 
>>>> mechanism requires to pass a callback URL which salesforce redirects the 
>>>> browser to on completion of the action.  I want this callback to have the 
>>>> signup email as a query parameter:
>>>> 
>>>> ... /thanks?email=joe%40gmail.com
>>>> 
>>>> Hence in the receiving page I have an @ActivationRequestParameter
>>>> 
>>>> 
>>>> public class Thanks {
>>>> @ActivationRequestParameter
>>>> @Property
>>>> private String email;
>>>> 
>>>> 
>>>> When I do this, I get ComponentEventException:
>>>> org.apache.tapestry5.runtime.ComponentEventException
>>>> Input string 'j...@gmail.com' is not valid; the character '@' at position 
>>>> 4 is not valid.
>>>> ...
>>>> 
>>>> 
>>>> Stacktrace:
>>>> Stack trace
>>>> org.apache.tapestry5.internal.services.URLEncoderImpl.decode(URLEncoderImpl.java:144)
>>>> org.apache.tapestry5.internal.transform.ActivationRequestParameterWorker$2.handleEvent(ActivationRequestParameterWorker.java:128)
>>>> org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$TransformationSupportImpl$1$1.invoke(ComponentInstantiatorSourceImpl.java:443)
>>>> org.apache.tapestry5.internal.services.ComponentInstantiatorSourceImpl$TransformationSupportImpl$1.advise(ComponentInstantiatorSourceImpl.java:439)
>>>> org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
>>>> 
>>>> Am I doing something wrong, or is the the same bug as mentioned here: 
>>>> https://issues.apache.org/jira/browse/TAP5-1768
>>>> 
>>>> I am using TS 5.3.1.  Suggestions welcome!
>>>> 
>>>> Thanks!!!
>>>> Jochen
>>>> 
>>>> ---
>>>> joc...@jochenfrey.com
>>>> +1.415.366.0450
>>>> @jochen_frey
>>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>> 
>> 
>> 
>> ---
>> joc...@jochenfrey.com
>> +1.415.366.0450
>> @jochen_frey
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 


---
  joc...@jochenfrey.com
  +1.415.366.0450
  @jochen_frey


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to