From: | Dino Nardini <dino(at)rivendellsoftware(dot)com> |
---|---|
To: | Kris Jurka <books(at)ejurka(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: pg jdbc driver |
Date: | 2004-08-09 01:22:41 |
Message-ID: | 5.2.0.9.2.20040808221302.01b22fd8@pop.rivendellsoftware.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Yes, I have the database encoding set to SQL_ASCII, which hasn't been a
problem with ColdFusion 5. As you say, the server has been blindly passing
the data back and forth.
However, when I tested the same data with ColdFusion MX (built on a Java
platform), I ran into problems. The french characters were either throwing
"Invalid character..." errors, or displaying as garbage. I'm guessing that
CFMX was trying to convert the characters from SQL_ASCII to something else
(UTF-8?) somewhere between the database and the web page.
I've managed to get CF5 installed on the new server for now, but I plan to
do some more testing with CFMX. Probably have to dump the database,
re-create with UNICODE encoding, and restore.
I suspected that the problem originated with encoding at the CFMX level,
but I wanted to cover all bases.
Thanks for the feedback.
Cheers... Dino
At 07:14 PM 08/08/2004 -0500, you wrote:
>On Sat, 7 Aug 2004, Dino Nardini wrote:
>
> > [Could the JDBC driver be causing the problems I'm seeing with my
> > website after moving from ColdFusion with ODBC? ]
>
>Unlikely. A common problem people find when using PostgreSQL's JDBC
>driver is that they have setup their database with SQL_ASCII encoding
>which doesn't have any information on what high-bit characters actually
>represent. Many applications are OK with this and blindly pass data back
>and forth, but Java requires having correctly encoded data and the JDBC
>driver will error out with something like "Invalid character data was
>found..." You reported problems correctly displaying this data, not an
>error, so I doubt that is the issue.
>
>As I mentioned Java is (sometimes painfully) encoding aware. I'm not
>familar with ColdFusion, but you likely need to set the page encoding
>correctly for converting Java Strings into bytes. This can be
>accomplished in a number of ways, for example set globally via the
>file.encoding system property or on per page basis via methods in
>javax.servlet.ServletResponse such as setCharacterEncoding,
>setContentType, and setLocale.
>
>Kris Jurka
_____________________________________
Rivendell Software - Dynamic Web Solutions
http://www.rivendellsoftware.com
Tel 902.461.1697
Fax 902.461.3765
From | Date | Subject | |
---|---|---|---|
Next Message | Kris Jurka | 2004-08-09 01:23:58 | Re: pg jdbc driver |
Previous Message | Tom Lane | 2004-08-09 00:27:05 | Re: Error >>syntax error<< at >>$1<< at character 53 |