问题:在生产环境中有两台WEB服务器,分别为227和228,部署的应用代码都是每日同步的,两边完全一致,但是某些页面查询数据时,227无结果,并且后台报java数组越界的错误,而228一切正常。经开发人员对页面程序进行调整后,增加容错处理,227查询恢复正常,但是查询结果中的日期值显示为英文,而228则是正常的2014-01-01字样的格式。

227环境:
weblogic  8.1.0.0
JDK  jdk141_03
228环境:
weblogic  8.1.6.0
JDK  jdk142_11
解决过程:
开始怀疑是JDK版本不一致引起的,就拷贝了228的JDK环境到227主机,并修改startWeblogic.sh,启动时报连接池的错误。然后查看两边的config.xml配置文件,发现两边使用的数据库驱动不一样,227使用的是“weblogic.jdbc.oci.Driver”,228使用的是“oracle.jdbc.driver.OracleDriver”,后修改227的驱动为oracle的JDBC,重启后恢复正常。
 
驱动位置:
在安装weblogic的时候装有第三方驱动位于WL_HOME\server\ext\jdbc,若要使用这里的驱动有两个办法:
1)在启动脚本CLASSPATH中添加驱动变量;2)把驱动jar包拷贝至系统驱动目录下WL_HOME\server\lib
 
配置方法:
oracle JDBC的thin方式
[连接池属性值]
URL : jdbc:oracle:thin:@IP Address:1521:orcl
Driver Classes : oracle.jdbc.driver.OracleDriver
Properties (key=value): user=数据库用户名
password=密码
dll=ocijdbc8 (可不填)
protocol=thin (可不填)
posted on 2015-02-02 16:25  lzc_jack  阅读(927)  评论(0编辑  收藏  举报