You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Ognjen Blagojevic (JIRA)" <ji...@apache.org> on 2014/12/24 14:59:13 UTC
[jira] [Created] (OPENJPA-2552) When reading orm.xml encoding
defined in prolog should be taken into account
Ognjen Blagojevic created OPENJPA-2552:
------------------------------------------
Summary: When reading orm.xml encoding defined in prolog should be taken into account
Key: OPENJPA-2552
URL: https://issues.apache.org/jira/browse/OPENJPA-2552
Project: OpenJPA
Issue Type: Bug
Affects Versions: 2.3.0
Reporter: Ognjen Blagojevic
File orm.xml may contain JPQL or SQL queries with string literals with non-ASCII characters, e.g.
<named-native-query name="test">
<query>
select 'ћирилица'
</query>
</named-native-query>
Note the string literal with cyrillic letters.
If JVM variable file.encoding is set to something different (e.g. -Dfile.encoding=ISO-8859-1) from encoding of the file, specified in prolog of orm.xml (e.g. UTF-8), OpenJPA will respect file.encoding setting, which will demage string literals.
According to XML specification, OpenJPA should respect encoding as specified in prolog.
The problematic method seems to be: org.apache.openjpa.lib.meta.XMLMetaDataParser. parse(MetaDataIterator itr, boolean stopFirst), which opens InputStreamReader with default encoding from file.encoding variable.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)