This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I'm migrating a servlet/JSP application from ISO-8859-1 to UTF-8. I use Mysql 5.0.45 which is UTF-8 configured and Tomcat 5.5.12. I manage to read UTF-8 characters from database and display them in HTML page. Submitting form data with UTF-8 character is also successful. The problem is when i execute an update query, UTF-8 characters in SQL request are damaged. Problem occurs in JVM around DBCP and jdbc driver, not in database.
I tested direct use of driver with DriverManager like this : Connection co = DriverManager.getConnection(...,...,...); co.createStatement().executeUpdate(query); and it's ok, UTF-8 characters are written correctly in database.
If i use connection from DBCP pool, character UTF-8 are considered as ISO 8859-1.
If a run Tomcat with -Dfile.encoding=UTF-8 JVM option, everything is ok ; but i can't use this work around because other applications use ISO 8859-1.
Someone has idea ? Thank's in advance
Joined: Oct 30, 2007
When i use directly DBCP in my application to obtain connection, characters are well encoded in UTF-8. When i use datasource which is set up in Tomcat, character are damaged with ISO 8859-1 encoding. It seems that using Datasource is the cause of problems...
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com