tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 50504] New: Allow setting query string character set trough request attribute
Date Tue, 21 Dec 2010 09:16:22 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=50504

           Summary: Allow setting query string character set trough
                    request attribute
           Product: Tomcat 7
           Version: 7.0.5
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: Catalina
        AssignedTo: dev@tomcat.apache.org
        ReportedBy: kiralyattila.hu@gmail.com


Currently tomcat is using ISO-8859-1 by default to decode query parameters.
This can be modified with connector attributes like URIEncoding and
useBodyEncodingForURI, however these are server wide settings and affect every
web application served trough that connector.

I suggest an alternative, optional way: to define query encoding with a special
request attribute. It has the benefit that it allows to use different query
parameter encoding per web application (per request). So a new application can
use UTF-8 without effecting old ones.

Jetty has a similar approach: it is using
"org.eclipse.jetty.server.Request.queryEncoding" for that (however in Jetty
UTF-8 is the default encoding for query parameters).
This is also similar to how content type charset is set for UTF-8 POST-s (using
request.setCharacterEncoding()).

Without this in mixed environments (where already existing applications are
served with the default settings of tomcat) new, UTF-8 based applications can
not use query parameters because browsers are using the served html page's
character set to encode query parameters (the same they are doing with POST
bodies).

I am attaching a patch containing the suggested changes with a new junit test.
I named the special request attribute
"org.apache.tomcat.request.query_encoding".

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


Mime
View raw message