![JAR search and dependency download from the Maven repository](/logo.png)
net.sf.wcfart.wcf.charset.package.html Maven / Gradle / Ivy
Forces the request encoding to UTF-8 or another configurable character encoding.
Problem: in servlet 2.3, when {@link javax.servlet.ServletResponse#setLocale(java.util.Locale)}
is called, the character encoding is changed implicit in an unspecified way.
To prevent this, this wrapper does not forward the setLocale call.
All JSTL fmt:xxx actions call setLocale on the response, which causes
the problem.
This package uses a response wrapper that does not allow the character encoding to be changed.
Also the filter sets the Request encoding to UTF-8 (or another configurable charset)
because most browsers dont follow the
http spec and do not send a content-type header
when submitting a form. They use the
character encoding of the page that contained the form.
The encoding is configurable as filter init parameter encoding
,
via the property tbeller.charset
. If the filter is installed,
it defaults to UTF-8, otherwise it defaults to ISO-8859-1.
The filter automatically changes (or adds) the response encoding
of one configurable content-type. If the filter init-param
contentType
is set to text/html
,
then a response content type will of "text/html; charset=iso-8859-1"
will be changed into "text/html; charset=utf-8".
The ContentTypeTag sets the content-type and character encoding of the response
to the given type.
Filter example:
<filter>
<filter-name>CharsetFilter</filter-name>
<filter-class>net.sf.wcfart.wcf.charset.CharsetFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>ISO-8859-2</param-value>
<description>character encoding that this filter will enforce</description>
</init-param>
<init-param>
<param-name>contentType</param-name>
<param-value>text/html</param-value>
<description>this content type will be set to the above encoding automatically, e.g. "text/html; charset=iso-8859-1" will become "text/html; charset=utf-8"</description>
</init-param>
</filter>
see JSTL spec, section 8.4 and fmt:requestEncoding
@see javax.servlet.ServletResponse#setLocale(java.util.Locale)
@see net.sf.wcfart.tbutils.res
© 2015 - 2025 Weber Informatics LLC | Privacy Policy