예: Java Management Extensions API 및 wsadmin 스크립팅 도구를 사용하여 JDBC 제공자 및 데이터 소스 작성

다음 샘플 코드는 데이터 소스를 작성하는 데 사용되는 JACL(wsadmin - 스크립트 도구) 스크립트입니다.

이 스크립트를 사용하여 템플리트를 제공하지 않는 제품에 대한 데이터 소스만 작성할 수 있습니다. WebSphere® Application Server가 지원하는 모든 JDBC 제공자의 경우, 제품에서 해당 데이터 소스 템플리트를 제공합니다. createUsingTemplate 명령을 사용하여 이들 데이터 소스를 설정하는 방법에 대한 지시사항에 대해서는 wsadmin 도구를 사용한 구성 오브젝트 작성 주제를 참조하십시오. 지원되는 JDBC 제공자의 전체 목록(및 따라서 템플리트를 사용하여 작성되어야 하는 데이터 소스의 전체 목록)에 대해서는 제공자별 데이터 소스 최소 필수 설정 주제를 참조하십시오.

이 스크립트는 다음 샘플 JDBC 오브젝트를 설정합니다.
  • fvtDS_1 데이터 소스 작성
  • 4.0 데이터 소스 fvtDS_3 작성
  • fvtDS_1로 링크된 CMP(Container-Managed Persistence) 데이터 소스 작성
주의: 나중에 데이터 소스와 연관된 JDBC 제공자의 기본 라이브러리 경로 또는 클래스 경로를 수정하는 경우 새 구성을 적용하려면 이 JDBC 제공자 범위 내의 모든 애플리케이션 서버를 다시 시작해야 합니다. 그렇지 않으면, 데이터 소스 장애 메시지를 수신합니다.
#AWE --  Set up XA DB2 data sources, both Version 4.0 and  Connector architecture (JCA)-compliant data sources


#UPDATE THESE VALUES:
#The classpath that will be used by your database driver
set driverClassPath "c:/sqllib/java/db2java.zip"

set server "server1"

set fvtbase "c:/wssb/fvtbase"

#Users and passwords..
set defaultUser1 "dbuser1"
set defaultPassword1 "dbpwd1"
set aliasName "alias1"

set databaseName1 "jtest1"
set databaseName2 "jtest2"
#END OF UPDATES

puts "Add an alias alias1"
set cell [$AdminControl getCell]  
set sec [$AdminConfig getid /Cell:$cell/Security:/]

#---------------------------------------------------------
# Create a JAASAuthData object for component-managed authentication 
#---------------------------------------------------------
puts "create JAASAuthData object for alias1" 

set alias_attr    [list alias $aliasName]
set desc_attr     [list description "Alias 1"]
set userid_attr   [list userId $defaultUser1]
set password_attr [list password $defaultPassword1]
set attrs [list $alias_attr $desc_attr $userid_attr $password_attr]

set authdata [$AdminConfig  create JAASAuthData $sec $attrs] 
$AdminConfig save

set dm [$AdminControl queryNames type=Server,name=dmgr,*]
$AdminControl invoke $dm restart "true true"

puts "Installing DB2 datasource for XA"

puts "Finding the old JDBCProvider.."
#Remove the old jdbc provider...
set jps [$AdminConfig list JDBCProvider]
foreach jp $jps {
 set jpname [lindex [lindex [$AdminConfig show $jp {name}] 0] 1]
 if {($jpname == "FVTProvider")} {
  puts "Removing old JDBC Provider"
  $AdminConfig remove $jp
  $AdminConfig save
 }
}


#Get the server name...
puts "Finding the server $server"
set servlist [$AdminConfig list Server]
set servsize [llength $servlist]
foreach srvr $servlist {
 set sname [lindex [lindex [$AdminConfig show $srvr {name}] 0] 1]
 if {($sname == $server)} {
                puts "Found server $srvr"
  set serv $srvr
 }
}

set desiredNodeName "myNode"
puts "Finding the Node"
set nodelist [$AdminConfig list Node]
foreach node $nodelist {
  set nodename [lindex [lindex [$AdminConfig show $node {name}] 0] 1]
  if {($nodename == $desiredNodeName)} {
    puts "node = $node"
          break
  }
}  

puts "Finding the Resource Adapter"
set ralist [$AdminConfig list J2CResourceAdapter $node]
set ralistlen [llength $ralist]
foreach ra $ralist {
  set raname [lindex [lindex [$AdminConfig show $ra {name}] 0] 1]
  if {($raname == "WebSphere Relational Resource Adapter")} {
    set rsadapter $ra
  }
}
[AIX Solaris HP-UX Linux Windows][z/OS]
#Create a JDBC Provider for the data sources
puts "Creating the provider for COM.ibm.db2.jdbc.DB2XADataSource"
set attrs1 [subst {{classpath $driverClassPath} 
	{implementationClassName COM.ibm.db2.jdbc.DB2XADataSource}{name "FVTProvider2"} 
	{description "DB2 JDBC Provider"} {xa "true"}}]
set provider1 [$AdminConfig create JDBCProvider $serv $attrs1]
[IBM i]
#Create an iSeries JDBC Provider for the data sources
puts "Creating the provider for com.ibm.db2.jdbc.app.UDBXADataSource"
set attrs1 [subst {{classpath $driverClassPath} 
	{implementationClassName com.ibm.db2.jdbc.app.UDBXADataSource}{name "FVTProvider2"} 
	{description "DB2 UDB for iSeries JDBC Provider"} {xa "true"}}]
set provider1 [$AdminConfig create JDBCProvider $serv $attrs1]
#Create the first data source
puts "Creating the datasource fvtDS_1"
set attrs2 [subst {{name fvtDS_1} {description "FVT DataSource 1"}}]
set ds1 [$AdminConfig create DataSource $provider1  $attrs2]

#Set the properties for the data source.
set propSet1 [$AdminConfig create J2EEResourcePropertySet $ds1 {}]

set attrs3 [subst {{name databaseName} {type java.lang.String} {value $databaseName1}}]
$AdminConfig create J2EEResourceProperty $propSet1 $attrs3

set attrs10 [subst {{jndiName jdbc/fvtDS_1} {statementCacheSize 10} 
	{datasourceHelperClassname com.ibm.websphere.rsadapter.DB2DataStoreHelper} 
	{relationalResourceAdapter {$rsadapter}} {authMechanismPreference "BASIC_PASSWORD"} 
	{authDataAlias  $aliasName}}]
$AdminConfig modify $ds1 $attrs10


#Create the connection pool object
$AdminConfig create ConnectionPool $ds1 {{connectionTimeout 1000} 
	{maxConnections 30} {minConnections 1} {agedTimeout 1000} 
	{reapTime 2000} {unusedTimeout 3000} }


#Create the 4.0 data sources
puts "Creating the 4.0 datasource fvtDS_3"
set ds3 [$AdminConfig create WAS40DataSource $provider1 {{name fvtDS_3} {description "FVT 4.0 DataSource"}}]

#Set the properties on the data source
set propSet3 [$AdminConfig create J2EEResourcePropertySet $ds3 {}]

#These attributes should be the same as fvtDS_1
set attrs4 [subst {{name user} {type java.lang.String} {value $defaultUser1}}]
set attrs5 [subst {{name password} {type java.lang.String} {value $defaultPassword1}}]
$AdminConfig create J2EEResourceProperty $propSet3 $attrs3
$AdminConfig create J2EEResourceProperty $propSet3 $attrs4
$AdminConfig create J2EEResourceProperty $propSet3 $attrs5
set attrs10 [subst {{jndiName jdbc/fvtDS_3} {databaseName $databaseName1}}]
$AdminConfig modify $ds3 $attrs10

$AdminConfig create WAS40ConnectionPool $ds3 {{orphanTimeout 3000} {connectionTimeout 1000} 
	{minimumPoolSize 1} {maximumPoolSize 10} {idleTimeout 2000}}

#Add a CMP connection factory for the JCA-compliant data source. This step is not necessary for 
#Version 4 data sources, as they contain built-in CMP connection factories.
puts "Creating the CMP Connector Factory for fvtDS_1"
set attrs12 [subst {{name "FVT DS 1_CF"} {authMechanismPreference BASIC_PASSWORD} 
	{cmpDatasource $ds1} {authDataAlias $aliasName}}]
set cf1 [$AdminConfig create CMPConnectorFactory $rsadapter $attrs12]

#Set the properties for the data source.
$AdminConfig create MappingModule $cf1 {{mappingConfigAlias "DefaultPrincipalMapping"} {authDataAlias "alias1"}}

$AdminConfig save

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rdat_scriptool
파일 이름:rdat_scriptool.html