Dears,
I have checked documentation/FAQ/WEB/archives but it didn't help to resolve
the following trouble:
I have a java servlet which is currently deployed on Oracle Application
Server 10g R3 with jdk 1.5u19 on RHEl 5.7 and one works fine with Oracle
Application Server.
The servlet works with Oracle Database which has cyrillic single-byte
codepage CL8MSWIN1251.
The servlet was migrated from Oracle Application Server 10g R3 to Tomcat
7.0.47.
I use Tomcat 7.0.47 with jdk-1.6u38 on RHEl 5.7.
The servlet works fine with Tomcat 7 except only trouble with some
characters displaiyng.

The point is that there is a special language driver for Windows  which
provides Kazakh extension for codepage Windows-1251.
The language driver works in single-byte codepage named RK-1048 which is
almost the same as widely known Windows-1251 codepage.
Only difference between Windows-1251 and RK-1048 is that RK-1048 has
several specific Kazakh letters added (Kazakh alphabet equals Russian
alphabet plus several specific letters of Kazakh language).

The trouble is that specific Kazakh letters are not displaying correctly in
servlet on Tomcat 7 but on Oracle Application Server all specific Kazakh
letters are displayed correctly.
Servlet operates by GET-requests when send data to server.
So in my understanding I must get Tomcat worked in Windows-1251 for
GET-requests. Also, UTF-8 is not suit for me as database is in single-byte
codepage.
>From Tomcat 7 documentation:
"....There are two ways to specify how GET parameters are interpreted:
1.Set the URIEncoding attribute on the <Connector> element in server.xml to
something specific (e.g. URIEncoding="UTF-8").
2.Set the useBodyEncodingForURI attribute on the <Connector> element in
server.xml to true. This will cause the Connector to use the request body's
encoding for
GET parameters."

I have tried URIEncoding and useBodyEncodingForURI on http-connector but it
doesn't help.

    <Connector port="7785" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="Windows-1251"
    />

    or

    <Connector port="7785" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               useBodyEncodingForURI="true"
    />

    or
    <Connector port="7785" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               URIEncoding="Windows-1251"
               useBodyEncodingForURI="true"
    />

Why Oracle Application Server works fine with RK-1048 codepage but Tomcat
7.0.47 does not ?

Kind regards,
Timur

Reply via email to