我使用weblogic 10. 它提供了一个Oracle JDBC驱动程序10.2.0.2(在weblogic home的server/lib中)。Weblogic服务器lib VS实例libext
实际上有人在工作中很久以前就在实例文件夹中放入了一个10.2.0.3驱动程序。
但是在生产中,我们得到了一个jdbc驱动程序堆栈(nullpointer:O),并且通过逆向工程,似乎我们使用的是驱动程序10.2.0.2。
我们知道我们可以更改weblogic的服务器/ lib中的驱动程序,但我想了解。
是不是libext应该重写像META-INF的服务器库libs覆盖libext?
通过我们正处于一个奇怪的现象方式: - 我们有2个EAR,并在这些2完全相同的待遇,一个有时会扔Oracle驱动程序空指针,而另一个没有 - 我不知道一个耳朵不使用10.2.0.2,而另一个耳朵使用10.2.0.3(我看到一个修复的bug,可以适应我们这个版本的问题)。 - 我需要看起来更好,但乍一看,双耳使用完全相同的数据源设置在weblogic JNDI资源
任何想法?
其实我在10.2.0.3版本说明中的错误固定的看到: 4688156 NullPointerException异常可能,如果发生网络错误 - >我认为这是我们得到了什么? 同样的Weblogic文档本身是最高审计机关要更新我们可以用驱动程序替换server/lib中的文件 我完全不知道为什么它会使用一个驱动程序作为耳朵,另一个用于其他驱动程序......这是我发现的唯一可以解释为什么常见处理(初始化一个翻译缓存)可以在一个耳朵上工作,而不是在另一个耳机上工作(在应用程序启动时失败大约40%)... – 2010-06-09 10:12:15
但实际上我的问题是不知道将jdbc驱动程序放在解压缩文件中是否是一种好的做法,但如果它应该重写weblogic提供的oracle jdbc驱动程序:) – 2010-06-09 11:29:14
我想你有你的答案:“有时候”。我认为这不是一个非常令人满意的答案。从lib/ext中删除JAR - 除了Sun的扩展外,你不应该放置任何东西。对于不懂CLASSPATH或认为自己聪明的人来说,这并不意味着成为拐杖。 – duffymo 2010-06-09 13:29:59