`

MyEclipse配置hibernate,连接oracle,报错误的解决及分析

    博客分类:
  • java
阅读更多
这周在讲hibernate框架,在配置hibernate连接oracle数据库时,同学们按照步骤一步步的配置,但是总结连接不成功提示下面的错误:
    Error while performing database login with the myoracle driver:
    ORA-00604:error occurred at recursive SQL level 1
    ORA-12705:Cannot access NLS data files or invalid environment specified

下面是针对这个问题的解决和一些分析:

分析问题1: MyEclipse 语言和 oracle 10g 冲突。
          但是oracle能够正常使用,问题应该出在MyEclipse这边。
分析问题2:查看MyEclipse的版本,如果是5.0版本
解决方法如下:
         (1).在windows XP控制面板中修改区域和语言选项,把"区域选项"中的"标准和格式"自定义为"英语(美国)";
(2).在MyEclipse中help菜单>About MyEclipse...>点击"Configuration Details",设置其中的两个值:
osgi.nl=en_US
user.language=en
这样就可以在MyEclipse Database Explorer中顺利建立oracle连接了.
分析问题3:如果MyEclipse版本是6.0及以上版本。
解决方法如下:
          在你安装的MyEclipse的目录下查找eclipse.ini的文件,将"-Duser.language=en"修改为"-Duser.language=zh"。问题解决。

分析原因:主要原因是MyEclipse在启动时候,语言编码是在[MyEclipse路径]\eclipse\eclipse.ini文件中加载的。 而国别编码是从系统的区域设置中得到的。如果MyEclipse默认启动参数为"-Duser.language=en",而操作系统设为"中文(中国)"MyEclipse加载后的信息就是"en_CN",这样就会出现上述问题,所以只要将两边的设置改成一致的,就可以解决上述问题. 你也可以就系统的区域设置定为"中文(中国)",修改eclipse.ini文件,将"-Duser.language=en"修改为"-Duser.language=zh",这样在MyEclipse加载后的Configuration Details信息就统一为zh_CN,即"osgi.nl=zh_CN".
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics