2010-07-12 64 views
0

我有這樣的持久化單元:問題上的持久性單元和Oracle NLS

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"> 
<persistence-unit name="HIAEWebservice"> 
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> 
<class>alsc.ws.persistence.InCareAdmission</class> 
<class>alsc.ws.persistence.InCareCancelSchedule</class> 
<class>alsc.ws.persistence.InCareSchedule</class> 
    <properties> 
    <property name="eclipselink.jdbc.driver" value="oracle.jdbc.OracleDriver" /> 
    <property name="eclipselink.jdbc.url" value="jdbc:oracle:thin:@192.168.163.67:1521:EMRPPROD" /> 
    <!-- I work in this example without user/password.--> 
    <property name="eclipselink.jdbc.user" value="interface_hiae" /> 
    <property name="eclipselink.jdbc.password" value="interpprod" /> 
    </properties> 
</persistence-unit> 
</persistence> 

我得到這個錯誤,當我嘗試插入Oracle數據庫:

ORA-00604: error occurred at recursive SQL level 1 
ORA-12705: Cannot access NLS data files or invalid environment specified 

在我的服務器我不有Oracle客戶端..我認爲這是問題,但有沒有我不需要使用Oracle客戶端的解決方案?

謝謝你的答案

回答

0

據我所知,您的服務器不需要它的Oracle客戶端使用瘦客戶端驅動程序來運行。

但是,Oracle驅動程序似乎在尋找NLS數據文件。 classes12.jar(對於Java 1.2-1.3),ojdbc14.jar(對於Java 1.4),ojdbc5.jar(對於Java 5)或ojdbc6.jar(對於Java 6)可能具有或不具有它們,具體取決於版本。

對於有他們作爲甲骨文的JDBC driver download page單獨下載的,讓他們依賴於Oracle版本和Java版本命名爲nls_charset11.jarnls_charset12.jar,或orai18n.jar