我面临一个与UTF-8编码有关的奇怪问题。
Tech Stack- IBM WAS 8.0,IBM JPA jar,SQL Server 2008
我在两个不同的基础设施上部署了相同的应用程序。我试图将xml作为xml数据类型列中的字符串保存到数据库中。但是,它适用于一个应用程序而没有任何问题,但在另一个应用程序中给出以下异常:
Caused by: org.apache.openjpa.persistence.PersistenceException: XML parsing: line 1, character 38, unable to switch the encoding {prepstmnt -99242622 UPDATE T_QT SET QT_STTS_NM = ?, QT_XML_TXT = ?, QT_NUM = ?, UPDT_TS = ? WHERE QT_ID = ? [params=?, ?, ?, ?, ?]} [code=9402, state=S0001]
尝试了以下分析问题的方法:
-Dclient.encoding.override=UTF-8 –Dfile.encoding=UTF-8
SQL_Latin1_General_CP1_CI_AS
请帮助我确定应用程序或数据库服务器配置中是否还有其他任何内容或与JPA之外的应用程序服务器库相关的任何内容都可能导致此问题。
提前致谢!