Groupe de commandes JDBCProviderManagement pour l'objet AdminTask

Le langage de script Jython ou Jacl en mode interactif permet de configurer l'accès aux données et les sources de données à l'aide de scripts. Les commandes et paramètres du groupe JDBCProviderManagement peuvent être utilisés pour créer ou répertorier les sources de données ainsi que les fournisseurs JDBC (Java™ Database Connectivity).

Le groupe de commandes JDBCProviderManagement de l'objet AdminTask inclut les commandes suivantes :

createDatasource

La commande createDatasource crée une nouvelle source de données pour accéder au stockage dorsal de données. Les composants de l'application utilisent la source de données pour accéder aux instances de connexion de votre base de données.

Objet cible

ID objet fournisseur JDBC - L'objet de configuration du fournisseur JDBC auquel appartiendra la nouvelle source de données.

Paramètres requis

- name
Nom de la source de données. (Chaîne, obligatoire)
-jndiName
Nom JNDI (Java Naming and Directory Interface). (Chaîne, obligatoire)
-dataStoreHelperClassName
Nom de la classe d'implémentation DataStoreHelper qui étend les capacités de la classe d'implémentation du pilote JDBC sélectionné pour exécuter les fonctions spécifiques à la base de données. WebSphere Application Server met à disposition un ensemble de classes d'implémentation DataStoreHelper pour chaque pilote de fournisseur JDBC pris en charge. (Chaîne, obligatoire)
configureResourceProperties
Etape de commande qui configure les propriétés des ressources requises par la source de données. (Obligatoire) Vous pouvez spécifier les paramètres suivants pour cette étape :
name
Nom de la propriété des ressources. (Chaîne, obligatoire)
type
Type de la propriété des ressources. (Chaîne, obligatoire)
value
Valeur de la propriété des ressources. (Chaîne, obligatoire)

Paramètres facultatifs

-description
Description de la source de données. (Chaîne, facultatif)
-category
Chaîne que vous pouvez utiliser pour classifier un groupe de sources de données. (Chaîne, facultatif)
-componentManagedAuthenticationAlias
Alias utilisé pour effectuer l'authentification auprès de la base de données lors de l'exécution. Il n'est utilisé que lorsque la référence de ressource d'application utilise res-auth=Application. (Chaîne, facultatif)
-containerManagedPersistence
Paramètre spécifiant si cette source de données est utilisée pour la persistance gérée par conteneur des beans enterprise. La valeur par défaut est true. (Booléen, facultatif)

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask createDatasource "DB2 Universal JDBC Driver Provider (XA)(cells/myCell|resources.xml#
    JDBCProvider_1180538152781)" {-name 
    "DB2  Universal JDBC Driver XA DataSource" -jndiName s1 -dataStoreHelperClassName
     com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
     -componentManagedAuthenticationAlias myCellManager01/a1 -xaRecoveryAuthAlias myCellManager01/a1 -configureResourceProperties 
    {{databaseName java.lang.String db1} {driverType java.lang.Integer 4} {serverName java.lang.String  dbserver1} {portNumber java.lang.Integer 50000}}}
  • A l'aide de la chaîne Jython :
    AdminTask.createDatasource('DB2 Universal JDBC Driver Provider(XA) (cells/myCell|resources.xml
    #JDBCProvider_1180501752515)', '[-name 
    "DB2 Universal JDBC Driver XA DataSource 2" -jndiName ds2 -dataStoreHelperClassName 
    com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper
     -componentManagedAuthenticationAlias myCellManager01/a1 -xaRecoveryAuthAlias myCellManager01/a1 -configureResourceProperties 
    [[databaseName java.lang.String db1] [driverType java.lang.Integer 4] [serverName java.lang.String  dbserver1] [portNumber java.lang.Integer 50000]]]') 
  • Avec une liste Jython :
    AdminTask.createDatasource('DB2 Universal JDBC Driver Provider(XA) (cells/myCell|resources.xml#
    JDBCProvider_1180501752515)', ['-name', '
    DB2  Universal JDBC Driver XA DataSource 2', '-jndiName', 'ds2', '-dataStoreHelperClassName',
     'com.ibm.websphere.rsadapter.DB2UniversalDataStoreHelper', '-componentManagedAuthenticationAlias',
     'myCellManager01/a1',
     '-xaRecoveryAuthAlias', 'myCellManager01/a1', '-configureResourceProperties', '[[databaseName java.lang.String db1] 
    [driverType java.lang.Integer 4] [serverName java.lang.String  dbserver1] [portNumber java.lang.Integer 50000]]']) 

Exemple d'utilisation en mode interactif :

  • Avec Jacl :
    $AdminTask createDatasource {-interactive}
  • Avec Jython :
    AdminTask.createDatasource('-interactive')
Eviter les incidents Eviter les incidents: Tenez compte des points suivants quand vous utilisez la commande createDatasource :
  • Quand vous créez un source de données prenant en charge la persistance gérée par conteneur, la commande createDatasource crée deux objets dans la configuration de la portée cible : la source de données désirée et une fabrique de connecteurs CMP qui est utilisée expressément par le conteneur. Vous devez exécuter la commande remove séparément sur l'objet de la source de données et sur l'objet de la fabrique de connecteurs CMP pour supprimer la source de données de la configuration.
    Le script suivant montre comment utiliser Jacl pour supprimer l'objet CMPConnectorFactory de la configuration quand vous supprimez une source de données qui prend en charge la persistance gérée par conteneur :
    # The following script removes a data source from the configuration,
    # including the associated CMP connector factory
    #
    # Set this variable to the ID string of the data source to remove
    set ds_to_remove "configID_of_my_data_source_to_remove"
    puts "Data source to remove='$ds_to_remove'"
    
    # Find and remove the CMPConectorFactory associated with the datasource to remove
    foreach cmp_cf [$AdminConfig list CMPConnectorFactory] {
      set cmp_ds [lindex [$AdminConfig showAttribute $cmp_cf cmpDatasource] 0]
      if { [string compare $cmp_ds $ds_to_remove] == 0 } {
        puts "Found CMPConnectorFactory for data source $ds_to_remove"
        puts "Removing the CMPConnectorFactory '$cmp_cf'"
        $AdminConfig remove $cmp_cf
        puts "'$cmp_cf' is removed."
        break
      }
    }
    
    puts "Removing the data source '$ds_to_remove'"
    $AdminConfig remove $ds_to_remove
    puts "'$ds_to_remove' is removed."
    
    #$AdminConfig save
  • La commande createDatasource n'aboutit pas si vous créez une source de données sur un fournisseur JDBC qui n'existe pas ou qui n'a pas l'attribut providerType. Cette erreur peut se produire si vous avez créé le fournisseur JDBC avec la méthode AdminConfig create JDBCProvider de l'API JMX. Cette méthode crée le fournisseur JDBC mais n'y ajoute pas l'attribut providerType.
    Dans ce cas, la commande createDatasource va générer l'erreur suivante :
    "ADMF0006E: Step configureResourceProperties of command createDatasource is not found"

    Pour corriger ce problème, utilisez les commandes du groupe JDBCProviderManagement, en particulier les commandes AdminTask createJDBCProvider et createDatasource. Les commandes AdminTask sont conçues pour s'utiliser conjointement.

    Les méthodes de l'API JMX AdminConfig "create JDBCProvider" et "create Datasource", qui prennent en charge la version 5.1 et les versions suivantes, sont aussi conçues pour s'utiliser conjointement. Les scripts qui utilisent les méthodes de l'API JMX ne doivent pas utiliser les commandes AdminTask.

  • La commande createDatasource n'aboutit pas si l'ID objet fournisseur JDBC que vous indiquez lors de la création de la source de données ne correspond pas à l'ID du fournisseur JDBC. Si l'ID objet fournisseur JDBC et l'ID du fournisseur JDBC ne correspondent pas, vous pouvez obtenir l'ID correct à partir des résultats de la commande createJDBCProvider. Indiquez donc cet ID lorsque vous utilisez la commande createDatasource. Si vous avez déjà créé le fournisseur JDBC, utilisez la commande listJDBCProviders pour répertorier l'ID correct.
gotcha

createJDBCProvider

La commande createJDBCProvider crée un nouveau fournisseur JDBC (Java Database Connectivity) à l'aide duquel vous pouvez vous connecter à une base de données relationnelle pour accéder aux données.

Objet cible

Aucun

Paramètres requis

-scope
Portée du nouveau fournisseur JDBC. Indiquez la portée au format type=nom. Type peut être Cellule, Noeud, Serveur, Application ou Cluster, et name correspond au nom de l'instance spécifique de la cellule, du noeud, du serveur, de l'application ou du cluster utilisé. La valeur par défaut est none. (Chaîne, obligatoire)
-databaseType
Type de base de données utilisé par le fournisseur JDBC. Par exemple, DB2, Derby, Informix, Oracle, etc. (Chaîne, obligatoire)
-providerType
Type de fournisseur JDBC qui sera utilisé par le fournisseur JDBC. (Chaîne, obligatoire)
-implementationType
Type d'implémentation pour ce fournisseur JDBC. Utilisez Source de données du pool de connexions si votre application est exécutée dans une transaction à phase unique ou locale. Sinon, utilisez source de données XA pour une exécution dans une transaction globale. (Chaîne, obligatoire)

Paramètres facultatifs

-classpath
Liste des chemins d'accès ou des noms de fichiers JAR qui indiquent l'emplacement des classes du fournisseur de ressources. (Chaîne, facultatif)
-description
Description du fournisseur JDBC. (Chaîne, facultatif)
-implementationClassName
Nom de classe Java de l'implémentation du pilote JDBC. (Chaîne, facultatif)
-name
Nom du fournisseur JDBC. La valeur par défaut est la valeur du modèle du fournisseur. (Chaîne, facultatif)
-nativePath
Liste des chemins d'accès qui, ensemble, spécifient l'emplacement des bibliothèques natives du fournisseur de ressources. (Chaîne, facultatif)
-isolated
Spécifie si le fournisseur JDBC se charge dans le chargeur de classes. La valeur par défaut est false. Vous ne pouvez spécifier de chemin natif pour un fournisseur JDBC isolé. (Booléen, facultatif)

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask createJDBCProvider {-scope Cell=my02Cell -databaseType DB2 -providerType "DB2 Universal JDBC Driver Provider" 
    -implementationType "XA data source" -name "DB2 Universal JDBC Driver Provider (XA)"-description 
    "XA DB2 Universal JDBC Driver-compliant Provider. Les sources de données créées dans le cadre de ce fournisseur prennent en charge l'utilisation de XA pour exécuter le traitement de validation en 2 phases. L'utilisation du pilote de type 2 sur WAS z/OS n'est pas prise en charge pour les sources de données créées dans le cadre de ce fournisseur." 
    -classpath {"${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar;${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar;
    ${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cisuz.jar"} -nativePath {"${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}"}}
  • A l'aide de la chaîne Jython :
    AdminTask.createJDBCProvider('[-scope Cell=myCell -databaseType DB2 -providerType "DB2 Universal JDBC Driver Provider"
     -implementationType "XA datasource" -name "DB2 Universal JDBC Driver Provider (XA)" 
    -description "XA DB2 Universal JDBC 
    Driver-compliant Provider. 
    Les sources de données créées dans le cadre de ce fournisseur prennent en charge l'utilisation de XA pour exécuter le traitement de validation en 2 phases. L'utilisation du pilote
     de type 2 sur WAS z/OS n'est pas prise en charge pour les sources de données créées dans le cadre de ce fournisseur." -classpath
     ${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar;${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar;
    ${DB2UNIVERSAL_JDBC_DRIVER_PATH}/
    db2jcc_license_cisuz.jar -nativePath ${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}]')
  • Avec une liste Jython :
    AdminTask.createJDBCProvider(['-scope', 'Cell=myCell', '-databaseType', 'DB2', '-providerType', 
    'DB2 Universal JDBC Driver Provider',
     '-implementationType', 'XA data source', '-name', 'DB2 Universal JDBC Driver Provider (XA)',
     '-description', 'XA DB2 Universal 
    JDBC Driver-compliant Provider. Les sources de données créées dans le cadre de ce fournisseur prennent en charge l'utilisation de XA pour exécuter le traitement de validation en 2 phases. L'utilisation du 
    drtype de pilote 2 sur WAS z/OS n'est pas pris en charge pour les sources de données créées sous ce fournisseur.', '-classpath',
      '${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar;
    ${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar;${DB2UNIVERSAL_JDBC_DRIVER_PATH}/
    db2jcc_license_cisuz.jar', '-nativePath', '${DB2UNIVERSAL_JDBC_DRIVER_NATIVEPATH}']) 

Exemple d'utilisation en mode interactif :

  • Avec Jacl :
    $AdminTask createJDBCProvider {-interactive}
  • Avec Jython :
    AdminTask.createJDBCProvider('-interactive')

deleteDatasource

La commande deleteDatasource supprime une source de données dans un fournisseur JDBC dans une portée spécifique.

Objet cible

ID objet de source de données : Objet de configuration de la source de données à supprimer.

Paramètres requis

Aucune.

Paramètres facultatifs

Aucune.

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask deleteDatasource "DB2 Universal JDBC Driver Provider (XA)(cells/myCell|resources.xml
    #DataSource_1170538153781)"
  • A l'aide de la chaîne Jython :
    AdminTask.deleteDatasource('DB2 Universal JDBC Driver Provider (XA)(cells/myCell|resources.xml#
    DataSource_1170538153781)')

Résultat :

La source de données est supprimée sur la portée spécifiée. De plus, si la source de données correspond à une source de données DB2 configurée comme pilote JDBC de Type 4 et activée pour la redirection du client, le nom JNDI spécifié dans la zone du nom JNDI de la liste de serveurs pour la redirection du client ou dans la propriété personnalisée de la source de données clientRerouteServerListJNDIName est délié.

Pour sauvegarder les modifications apportées par cette commande, appelez la commande "save" de l'objet AdminConfig. Si les modifications ne sont pas sauvegardées, le nom JNDI de la liste de serveurs pour la redirection du client doit être lié de nouveau en établissant une connexion de test avec la source de données ou en redémarrant le serveur.

deleteJDBCProvider

La commande deleteJDBCProvider supprime un fournisseur JDBC et ses sources de données dans une portée définie.

Objet cible

ID objet de fournisseur JDBC : Objet de configuration du fournisseur JDBC à supprimer.

Paramètres requis

Aucune.

Paramètres facultatifs

Aucun.

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask deleteJDBCProvider "DB2 Universal JDBC Driver Provider
     (XA)(cells/myCell|resources.xml#JDBCProvider_1180538152781)"
  • A l'aide de la chaîne Jython :
    AdminTask.deleteJDBCProvider('DB2 Universal JDBC Driver Provider (XA)
    (cells/myCell|resources.xml#JDBCProvider_1180538152781)')

Résultat :

Le fournisseur JDBC est supprimé dans la portée spécifiée. Si le fournisseur JDBC est un fournisseur de base de données DB2, pour chaque source de données du fournisseur JDBC configurée comme pilote JDBC de Type 4 et activée pour la redirection du client, le nom JNDI spécifié dans la zone du nom JNDI de la liste de serveurs pour la redirection du client ou dans la propriété personnalisée de la source de données clientRerouteServerListJNDIName est délié.

Pour sauvegarder les modifications apportées par cette commande, appelez la commande "save" de l'objet AdminConfig. Si les modifications ne sont pas sauvegardées, les noms JNDI de la liste de serveurs pour la redirection du client doivent être liés de nouveau en établissant une connexion de test avec les sources de données du fournisseur JDBC ou en redémarrant le serveur.

listDatasources

La commande listDatasources permet de répertorier les sources de données contenues dans la portée spécifiée.

Objet cible

Aucun

Paramètres requis

Aucune.

Paramètres facultatifs

-scope
Portée des sources de données à répertorier. Indiquez la portée au format type=nom. Type peut être Cellule, Noeud, Serveur, Application ou Cluster, et name correspond au nom de l'instance spécifique de la cellule, du noeud, du serveur, de l'application ou du cluster utilisé. La valeur par défaut est All. (Chaîne, facultatif)

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask listDatasources {-scope Cell=my02Cell}
  • A l'aide de la chaîne Jython :
    AdminTask.listDatasources('[-scope Cell=my02Cell]')
  • Avec une liste Jython :
    AdminTask.listDatasources('-scope', 'Cell=my02Cell')

Exemple d'utilisation en mode interactif :

  • Avec Jacl :
    $AdminTask listDatasources {-interactive}
  • Avec Jython :
    AdminTask.listDatasources('-interactive')

listJDBCProviders

La commande listJDBCProviders répertorie les fournisseurs JDBC contenus dans la portée spécifiée.

Objet cible

Aucun

Paramètres requis

Aucune.

Paramètres facultatifs

-scope
Portée des fournisseurs JDBC à répertorier. Indiquez la portée au format type=nom. Type peut être Cellule, Noeud, Serveur, Application ou Cluster, et name correspond au nom de l'instance spécifique de la cellule, du noeud, du serveur, de l'application ou du cluster utilisé. La valeur par défaut est All. (Chaîne, facultatif)

Exemples

Exemple d'utilisation en mode de traitement par lots :

  • Avec Jacl :
    $AdminTask listJDBCProviders {-scope Cell=my02Cell}
  • A l'aide de la chaîne Jython :
    AdminTask.listJDBCProviders('-scope Cell=my02Cell')
  • Avec une liste Jython :
    AdminTask.listJDBCProviders(['-scope', 'Cell=my02Cell'])

Exemple d'utilisation en mode interactif :

  • Avec Jacl :
    $AdminTask listJDBCProviders {-interactive}
  • Avec Jython :
    AdminTask.listJDBCProviders('-interactive')

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rxml_atjdbcprovider
Nom du fichier : rxml_atjdbcprovider.html