Yup. That did it. I am going to do more tests, at the server and session
level, to see if I can get Tomcat to grab the character set from the user
that launches Tomcat.

But for the time being, changing:

InputStreamReader in = new InputStreamReader(is);

... to:

InputStreamReader in = new InputStreamReader(is,"ISO-8859-1");

... does the trick.

I feel like I have tempted the Gods of Struts!
-Bob

----- Original Message -----
From: "Robert Bowen" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, March 13, 2003 4:11 PM
Subject: struts include tag "broken"?


> This is exactly what's tripping me up, I think! I am trying to include a
> page, using the struts <include> tag, of a struts forward, but the
included
> page is displayed incorrectly; all the accented and "strange" characters
> show up as question marks.
>
> After struggling with the setLocale(), setContentType(), and
> setCharacterEndoing() methods of the request and response objects, trying
to
> use the page directive and meta-tag for content at the jsp level,
installing
> filters at the web.xml level, defining character set environment variables
> for the user that launches Tomcat, and trying every other scrap of code I
> found on the net (including
> String(request.getParameter().getBytes("8859_1"), "UTF-8")) I have given
up!
> Nothing I do changes anything! The included page will NOT display accented
> characters. This same page, however, when not "included", is displayed
> correctly.
>
> So I was looking at the struts source code wondering how the include tag
> works (at least in 1.1), when I saw the following line:
>
> InputStreamReader in = new InputStreamReader(is); // FIXME - encoding
>
> It turns out that there 4 constructors for InputStreamReader, one of which
> accepts as a parameter a character set! But struts uses the default
> constructor which (I imagine) creates an InputStreamReader using the
default
> character set of either the machine or the session.(BTW, everything works
> fine in Windows, it's when I port the app to Linux, which has the american
> character set as its default, that I start to have problems ...)
>
> Could this be the answer I am looking for? What especially interests me is
> the "// FIXME - encoding" comment. Does this mean what I think it does,
that
> someone is aware that this should be changed, that you should be able to
> pass the character set parameter?
>
> I hope so! In the mean time I have decided to make the change myself,
> compile and create a new struts jar file to see if it works. I don't like
> the idea of tinkering with struts source code but I am past desperation!
>
> If anyone knows anything about this issue I would cede you my first born
to
> know how else it can be resolved. Incidentally, this is NOT a db issue! As
I
> said, the page generated by the struts forward is displayed correctly,
both
> dynamic content from the db as well as static content.
>
> I'll keep the list informed of my progress.
>
> Thanks to all,
> Bob
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to