On Tue, 2007-06-12 at 10:38 +0200, Ulrich Stärk wrote:
> In case you are using Tomcat try adding URIEncoding="UTF-8" to your
> connector definition in server.xml.
I just tried that, but it does not solve the problem.

I have added a servlet filter that prints the requested uri to
the std out, just to see what is the input for T5.

The URIEncoding="UTF-8" does not change what's printed by the
filter, but the argument that's passed to my page class' onActivate
is different.

Without URIEncoding="UTF-8":

[INFO ] 2007-06-17 22:52:37,956 http-8080-1 
org.comp.proj.presentation.util.EncodingFilter.doFilter:
- uri: /shopping24-shop/search/tr%C3%BCb
- path: null

[INFO ] 2007-06-17 22:52:51,303 http-8080-1 
org.comp.proj.presentation.pages.Search.onActivate:
Got invoked args tr??b

With URIEncoding="UTF-8":

[INFO ] 2007-06-17 22:54:33,398 http-8080-1 
org.comp.proj.presentation.util.EncodingFilter.doFilter:
uri: /shopping24-shop/search/tr%C3%BCb

[INFO ] 2007-06-17 22:54:44,620 http-8080-1 
org.comp.proj.presentation.pages.Search.onActivate:
Got invoked args tr?b


Is there anything else that I could do to get the correct
decoding of the request parameters / uri?

Thanx && cheers,
Martin



> 
> Uli
> 
> On Mo, 11.06.2007, 23:13, Martin Grotzke sagte:
> > Hi,
> >
> > I have currently an encoding issue, but am not really sure what's
> > the reason for this.
> >
> > I have an url that contains a url encoded german umlaut (ü) in UTF-8
> > and looks like the following:
> >
> > http://localhost:8080/app/search/%C3%BCbel (the %C3%BC represents the ü
> > in UTF-8, this url is created by
> > componentResources.createPageLink( "search", new Object[]{ _query } )
> > in the submit method of the search page)
> >
> > Now, when I look in the onActivate(string) method, the string is not
> > "übel" but it's "?bel", both printed via logging as when I inspect the
> > variable during debugging.
> >
> > AFAICS the created url from the page link is correct in terms of utf-8
> > encoding, but the parsed query string seems to be wrong, as it contains
> > only the "?"...
> >
> > We have the following in our AppModule:
> >
> >     public void contributeRequestHandler(
> >             OrderedConfiguration<RequestFilter> configuration,
> >             @InjectService("TimingFilter")
> >             final RequestFilter filter, @InjectService("Utf8Filter")
> >             final RequestFilter utf8Filter ) {
> >         configuration.add( "Timing", filter );
> >         configuration.add( "Utf8Filter", utf8Filter ); // handle UTF-8
> >     }
> >
> >     public RequestFilter buildUtf8Filter(
> >             @InjectService("RequestGlobals")
> >             final RequestGlobals requestGlobals ) {
> >         return new RequestFilter() {
> >             public boolean service( Request request, Response response,
> > RequestHandler handler ) throws IOException {
> >                 requestGlobals.getHTTPServletRequest().setCharacterEncoding(
> > "UTF-8" );
> >                 return handler.service( request, response );
> >             }
> >         };
> >     }
> >
> >     public static PageResponseRenderer decoratePageResponseRenderer(
> >             @InjectService("PageMarkupRenderer")
> >             final PageMarkupRenderer markupRenderer,
> >             @InjectService("MarkupWriterFactory")
> >             final MarkupWriterFactory markupWriterFactory, final Object
> > delegate ) {
> >
> >         return new PageResponseRenderer() {
> >             public void renderPageResponse( Page page, Response response )
> >                     throws IOException {
> >                 MarkupWriter writer =
> > markupWriterFactory.newMarkupWriter();
> >                 markupRenderer.renderPageMarkup( page, writer );
> >                 PrintWriter pw = response
> >                         .getPrintWriter( "text/html; charset=UTF-8" );
> >                 writer.toMarkup( pw );
> >                 pw.flush();
> >             }
> >         };
> >     }
> >
> > Is there anything wrong, or what am I missing?
> >
> > Thanx && cheers,
> > Martin
> >
> >
> >
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
-- 
Martin Grotzke
http://www.javakaffee.de/blog/

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to