以不同的方式创建JDBCProvider

2024-05-06 13:34:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要以不同的方式创建jdbc提供程序

第1步是我在WebSphereServer上创建jdbc提供程序的方法。 (一)

AdminTask.createJDBCProvider(['-scope', 'Node='+node,
                                  '-databaseType', 'DB2', 
                                  '-providerType', 'DB2 Universal JDBC Driver Provider', ...  

我需要另一种方法,因为我需要将xml中的值重用到其他代码中 我使用的xml值定义如下

 <type>Node</type> <scopename>somenode</scopename>```
  <type>Servernode</type> <scopename>Node:somenode/Server:someserver</scopename>

我使用oustide函数的作用域

scope = AdminConfig.getid('/Node:'+scope+'/')   
scope = AdminConfig.getid('/ServerCluster:'+scope+'/')

我试图用两种不同的方式创建jdbc,但都没有成功。。。 这是第一次尝试

(二)

n1 = ['name', j_name]
dtyp = ['databaseType', 'DB2']
protyp = ['providerType', 'DB2 Universal JDBC Driver Provider'] ...
jdbcAttrs = [n1, implCN, dtyp, protyp, desc, cpath]
AdminConfig.create('JDBCProvider', scope, jdbcAttrs) 

但错误是为类型“JDBCProvider”-“databaseType”指定的属性无效 它只能创建类名和名称。。。这是一种互动的方式

我的第二次尝试是定义我从外部函数获得的纯范围,该范围用于创建活动规范、共享库等。。。这是合乎逻辑的,因为它们的jython代码是这样定义的

(三)

AdminTask.createJDBCProvider(['-scope', scope, '-databaseType', 'DB2' ,'-providerType', 'DB2 Universal JDBC Driver Provider' ...

但它不起作用,这里出现的错误是配置数据类型无效

enter image description here

ibm论坛上的配置ID与我的相同

有没有办法避免像步骤1那样创建jdbc


Tags: node定义typedriver方式providerdatabaseuniversal
1条回答
网友
1楼 · 发布于 2024-05-06 13:34:50

我发现以编程方式设置项的最简单方法是使用字符串格式,以提高可读性和可维护性。例如:

AdminTask.createJDBCProvider('[-scope Node={node},Server={server} -databaseType DB2 -providerType "DB2 Universal JDBC Driver Provider" -implementationType "XA data source" -name "DB2 Universal JDBC Driver Provider (XA)" -classpath [/work/drivers/db2jcc.jar] -nativePath "" ]'.format(node=xmlParser.get(node), server=xmlParser.get(server)))

相关问题 更多 >