Dear Wiki user, You have subscribed to a wiki page or wiki category on "Tapestry Wiki" for change notification.
The following page has been changed by DavidPeterson: http://wiki.apache.org/tapestry/Utf8EncodingInT5 ------------------------------------------------------------------------------ - = How to use UTF-8 encoding in T5 = + Renamed to Tapestry5Utf8Encoding for naming consistency - At the time of writing, T5 (version 5.0.5-SNAPSHOT) doesn't have built-in support for UTF-8 encoding, but this will certainly be included in one of the upcoming releases. - - In the meantime, follow the instructions below to use "foreign" characters, i.e. ones outside ISO-8859-1. - - == In your AppModule.java file, add the following methods == - - - {{{ - - 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(); - } - }; - } - - }}} - - == Now update your contributeRequestHandler() method == - - (Note that in earlier versions this was called contributeRequestFilters.) - - {{{ - - public void contributeRequestHandler(OrderedConfiguration<RequestFilter> configuration, - @InjectService("TimingFilter") final RequestFilter timingFilter, - @InjectService("Utf8Filter") final RequestFilter utf8Filter) - { - configuration.add("Utf8Filter", utf8Filter); // handle UTF-8 - configuration.add("Timing", timingFilter); - } - - }}} - --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
