We experienced a similar problem with the character encoding on the http request processed by Cocoon. We also were attempting to use UTF-8 encoding but found that the encoding would always default to ISO-8859-1. Looking at the request in a debugger, we found that the actual http request wrapped by the Cocoon HttpRequest did not have the character encoding properly set. We corrected this by modifying CocoonServlet to set the character encoding on the wrapped request to the form-encoding value specified in the web.xml. In order to set the character encoding, we needed to use the 2.3 version of the servlet jar. This solved our encoding problems for page display and for request parameter interpretation.
We understand that this is not directly on point with your problem, but perhaps it may provide a basis for thought.
Good luck.
Theresa
-----Original Message-----
From: Lopke,
Michael [mailto:[EMAIL PROTECTED]
Sent: Monday, January 24, 2005
7:18 PM
To: [email protected]
Subject: RE: ESQL and
utf-8 encoding
String debug_thing =EsqlHelper.getStringFromByteArray( _esql_query.getResultSet().getBytes
("display"),
""
+ "UTF-8"
,"");
-----Original Message-----
From: Lopke, Michael
Sent: Friday, January 21, 2005 10:20 AM
To: [email protected]
Subject: ESQL and utf-8 encodingHi,
Has anyone here used esql with data that is utf-8 encoded? I'm able to connect to my database and get the correct data but it appears that somewhere along the way the data is being interpreted as iso-8859-1 encoding. I'm not sure if I got all of the configurations correct.
For example, the Chinese character.
éShows up as this.
ÃâÂÃ
In my sitemap.xmap I have the following:
<map:generators default="file">
<map:generator label="content,data" logger="sitemap.generator.file" name="file" pool-grow="4" pool-max="32" pool-min="8" src=""/><map:generator label="content,data" logger="sitemap.generator.serverpages" name="xsp" pool-grow="2" pool-max="32" pool-min="4" src=""/>
</map:generators>
â
<map:serializers default="html">
...
<map:serializer name="xml"
src=""
mime-type="text/xml; charset=utf-8">
<encoding>UTF-8</encoding>
</map:serializer>
</map:serializers>â.
<!-- the XSP pages -->
<map:match pattern="*.xml">
<map:generate type="xsp" src=""/>
<map:serialize type="xml"/>
</map:match>The snippit in my xsp file looks like this:
...
<esql:results>
<esql:row-results>
<data>
<esql:get-string column="display">
<esql:encoding>UTF-8</esql:encoding>
</esql:get-string >
</data>
</esql:row-results>
</esql:results>
âIt looks like the generator is interpreting the data as iso-8859-1 and passing it through the pipe as such. If I take the same data and put it into an xml file as my source but modify the encoding at the top to iso-8859-1, I can duplicate the problem.
Thanks,
Mike Lopke
