Hi Francois, we're currently living with a really ugly hack: we use a patched version of TapestryInternalUtils, with the methods urlEncode and urlDecode changed [1].
For us this is still an issue we want to investigate, I believe this is an issue in combination with mod_jk. But my memory is really bad, so I will have to start again investigating. Are you sure this issue is solved in the latest version of T5? So that you can even have slashes in your activation parameters? Cheers, Martin [1] private static final String SLASH_REPLACEMENT_CHAR = "" + 127; private static final String SLASH_REPLACEMENT_CHAR_ENC = UrlUtf8Encoder.encode(SLASH_REPLACEMENT_CHAR); public static String urlEncode(String input) { try { String res = CODEC.encode(url); if (StringUtils.isNotEmpty(res)) { res = res.replace("+", "%20"); res = res.replace("%2F", SLASH_REPLACEMENT_CHAR_ENC); } return res; } catch (EncoderException e) { LOG.error("Could not encode URL: "+ url, e); return url; } } public static String urlDecode(String input) { // only decode slashes String decoded = input.replace(SLASH_REPLACEMENT_CHAR, "/"); return decoded; } On Mon, 2008-01-28 at 17:19 +0100, Francois Armand wrote: > Martin Grotzke wrote: > > Hi, > > > > Hi Martin, > > > I just want to pickup this topic in a new thread, to make sure > > it's noticed - thx to Uli's suggestion in the previous thread :) > > > > At first a short summary again: > > - T5 (the PageRenderDispatcher) tries to decode activation context > > arguments (in convertActivationContext). > > [...] > > Our encoding is UTF-8 btw. > > > > My question is: why does PageRenderDispatcher.convertActivationContext > > try to decode the already decoded string again? I asume there's *some* > > reason for this ;) > > > Sorry to resurrect this old post, but I encounter the very same bug. I > know it is corrected in recent version of T5 (after 5.0.8, I believe) > but for now, I'm stuck with 5.0.6. > > So, to bypass it, I contribute to master dispatcher a > PageRenderDispatcher without the double decoding, but now it seems to be > worst : > - it almost work but sometimes (I think it's when I call > ComponentResources#createPageLink or similar methods), spaces are > encoded with "+", but the "+" are not decoded. So, returned link are not > understood by Tapestry, but if a replace "+" by "%20" or " ", everything > works. > - changing the order of utf8filter (with "after:*" or "before:*" in > configuration) doesn't seem to do anything > > > I believe I forgot to switch a configuration to UTF-8, somewhere. But > I don't know where :/ > > So, Martin, have you find a way to have it to work ? Have you any idea ? > > It's a really important bug for us :/ > > Thanks, > -- Martin Grotzke http://www.javakaffee.de/blog/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]