Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python WSadmin TypeError:序列下标必须是整数或使用AdminConfig.modify的切片_Python_Websphere_Jython_Wsadmin_Ibm Was - Fatal编程技术网

Python WSadmin TypeError:序列下标必须是整数或使用AdminConfig.modify的切片

Python WSadmin TypeError:序列下标必须是整数或使用AdminConfig.modify的切片,python,websphere,jython,wsadmin,ibm-was,Python,Websphere,Jython,Wsadmin,Ibm Was,我试图在Jython中创建一个脚本,将一些应用程序从WAS7迁移到WAS8.5。创建数据源后,我被这个错误卡住了大约2个小时:TypeError:sequence subscript必须是整数或slice 问题出现在第25行,我不知道如何解决它。如果你需要更多的信息,请告诉我。 请帮帮我!多谢各位 我的代码: if ( len(OracleDataSourceList) > 0 ): dbuserList=AdminTask.listAuthDataEntries() for dataSo

我试图在Jython中创建一个脚本,将一些应用程序从WAS7迁移到WAS8.5。创建数据源后,我被这个错误卡住了大约2个小时:TypeError:sequence subscript必须是整数或slice

问题出现在第25行,我不知道如何解决它。如果你需要更多的信息,请告诉我。 请帮帮我!多谢各位

我的代码:

if ( len(OracleDataSourceList) > 0 ):
dbuserList=AdminTask.listAuthDataEntries()
for dataSource in OracleDataSourceList:
    datasourceName=dataSource[0]
    dsJNDIName=dataSource[1]
    compAuthAlias=dataSource[2]
    providerName=dataSource[3]
    dataStoreHelperClassName=dataSource[4]
    description=dataSource[5]
    databaseURL=dataSource[6]
    databaseMaxConnections=dataSource[7]
    databaseMinConnections=dataSource[8]
    databaseconnTimeout=dataSource[9]
    databasereapTime=dataSource[10]
    databaseunusedTimeout=dataSource[11]
    databaseagedTimeout=dataSource[12]

    #Create Data Source
    dataSourceId = AdminJDBC.createDataSourceAtScope( scope, providerName, datasourceName, dsJNDIName, dataStoreHelperClassName, databaseURL, [['componentManagedAuthenticationAlias',compAuthAlias],['containerManagedPersistence','true'],['description',description]])

    #Modify connection pool
    connectionPoolList = AdminConfig.list('ConnectionPool', dataSourceId)
    connectionPoolList = AdminUtilities.convertToList(connectionPoolList)
    connectionPoolId = connectionPoolList[0]
    AdminConfig.modify(connectionPoolId, [["maxConnections", databaseMaxConnections]\
                                          ["minConnections", databaseMinConnections]\
                                          ["connTimeout", databaseconnTimeout]\
                                          ["reapTime", databasereapTime]\
                                          ["unusedTimeout", databaseunusedTimeout]\
                                          ["agedTimeout", databaseagedTimeout]\
                                         ])
print 'Saving configuration...'
AdminConfig.save()
print "Configuration saved."
错误:

WASX7017E: Exception received while running file "createDataSource.py"; exception information: com.ibm.bsf.BSFException: exception from Jython:
Traceback (innermost last):
   File "<string>", line 25, in ?
TypeError: sequence subscript must be integer or slice
WASX7017E:运行文件“createDataSource.py”时收到异常;异常信息:com.ibm.bsf.BSFException:来自Jython的异常:
回溯(最里面的最后一个):
文件“”,第25行,在?
TypeError:序列下标必须是整数或切片
我解决了这个问题

将第25:31行替换为:

AdminConfig.modify(connectionPoolId, [["maxConnections", databaseMaxConnections], ["minConnections", databaseMinConnections], ["connectionTimeout", databaseconnTimeout], ["reapTime", databasereapTime], ["unusedTimeout", databaseunusedTimeout], ["agedTimeout", databaseagedTimeout]])