Weblogic 10.3.1与Oracle BPM 10.3.1之间的互操作性

时间:2010-04-06 15:53:34

标签: oracle migration weblogic-10.x bpm ora-17004

我将在WLS 10.0上运行的ALBPM 6.5迁移到在WLS 10.3.1上运行的Oracle BPM 10.3.1

我在使用Oracle驱动程序时遇到了一些问题,因为旧的驱动程序(weblogic.jdbcx.oracle.OracleDataSource)肯定已从服务器中删除,并且不再受支持。相反,我使用了瘦驱动程序(oracle.jdbc.xa.OracleXADataSource),数据库迁移成功执行但在此之后,当我尝试在WebLogic中部署引擎时,我得到了与驱动程序相关的异常:

[     (cont)     ] Main: Caused by: weblogic.application.ModuleException: [HTTP:101216]Servlet: "engineStartup" failed to preload on startup in Web application: "/albpmServices/albpm_engine".                                  
[     (cont)     ] Main: fuego.directory.DirectoryRuntimeException: Exception [java.sql.SQLException: Invalid column type].                                                                                                      
[     (cont)     ] Main:        at fuego.directory.DirectoryRuntimeException.wrapException(DirectoryRuntimeException.java:85)                                                                                                    
[     (cont)     ] Main:        at fuego.directory.provider.jdbc.oracle.OraclePersistenceManager.mapSQLException(OraclePersistenceManager.java:145)                                                                              
[     (cont)     ] Main:        at fuego.directory.provider.jdbc.datadirect.oracle.DataDirectOraclePersistenceManager.mapSQLException(DataDirectOraclePersistenceManager.java:51)                                                
[     (cont)     ] Main:        at fuego.directory.provider.jdbc.JDBCServiceAccessor.mapSQLException(JDBCServiceAccessor.java:78)                                                                                                
[     (cont)     ] Main:        at fuego.directory.provider.jdbc.JDBCObjectPropertiesAccessor.fetchAllDirectoryProperties(JDBCObjectPropertiesAccessor.java:442)                                                                 
[     (cont)     ] Main:        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 

我正在寻找解决方案,但所有人都指向使用旧驱动程序,我认为在Oracle完全删除它之后强制服务器使用此驱动程序并不是一个好习惯。 有任何建议或类似经历??

2 个答案:

答案 0 :(得分:0)

执行数据库跟踪以查看它在fetchAllDirectoryProperties调用中尝试执行的查询,该调用产生java.sql.SQLException: Invalid column type错误。这应该指出哪些表/列会给您带来麻烦,并且应该更容易找到潜在的驱动程序或升级问题。

另外,在第5/6页的下面的文档中,它提到使用瘦驱动程序时必须设置属性defaultNChar = true:

http://www.oracle.com/technology/products/bpm/bpm10gr3technicalarticles/OracleBPMClusteringTips.pdf

Oracle BPM支持多语言功能。所有模式都准备好了 存储双字节代码以确保数据完整性,而不管位置和区域设置如何 使用OBPM的地方。使用Oracle Internal JDBC驱动程序时(Oracle BPM 10gR3群集配置提示中的OEM) DataDirect),一切都是自动准备的。但是,在使用Oracle时 精简JDBC驱动程序,必须为正确的数据添加以下属性 转换:“defaultNChar = true”

答案 1 :(得分:0)

我已经看到weblogic驱动程序也会导致问题。试试oracle thin driver oracle.jdbc.OracleDriver 我认为这是套件中某些产品的官方WebLogic文档的一部分,例如门户网站http://download.oracle.com/docs/cd/E13218_01/wlp/docs100/db/oracle.html#wp1077052