| |
  |
|
Conditions préalables concernant le pilote
Le pilote DirXML® pour JDBC exige les éléments suivants :
- eDirectoryTM 8.6.1 ou version ultérieure
- DirXML 1.1a ou version ultérieure
- ConsoleOne® 1.3.4
- Un pilote JDBC/ODBC d'un fabricant tiers
Plates-formes prises en charge
Le pilote s'exécute sur toutes les plates-formes dotées de fonctions DirXML, dont Windows* NT/2000, NetWare®, Solaris* et Linux*.
Bases de données prises en charge
Le pilote utilise l'API JDBC 1.0 pour exécuter des instructions SQL et extraire des métadonnées d'une base de données. À ce titre, une base de données doit être accessible à JDBC. Les bases de données suivantes ont été testées et sont recommandées pour une utilisation avec ce produit :
- IBM* DB2 Universal Database (UDB) 7.2 ou version ultérieure
- Microsoft* SQL Server 2000, Service Pack 2 ou version ultérieure
- Oracle* 8i, version 3 (8.1.7)
- Oracle* 9i, version 2 (9.2.0.1) ou ultérieure
- Sybase* Adaptive Server Enterprise (ASE) 12.5 ou version ultérieure
- MySQL 3.23
- Informix Dynamic Server (IDS) 9.3 ou version ultérieure
Vous pouvez utiliser d'autres bases de données, à condition qu'elles répondent aux conditions minimales requises :
- Prise en charge de la grammaire de premier niveau SQL-92.
- Prise en charge des déclencheurs ou d'une fonctionnalité d'audit permettant la capture et la réplication d'événements (sur le canal Éditeur uniquement).
Pilotes JDBC de fabricants tiers recommandés
Les pilotes de fabricants tiers doivent être compatibles avec JDBC 1.0.
Les pilotes tiers suivants ont été testés et sont recommandés pour une utilisation avec le pilote DirXML pour JDBC :
- Pilote JDBC Oracle 8i (8.1.7.1)
- Pilote JDBC Oracle 9i (9.2.0.1)
- Pilote JDBC IBM pour DB2 UDB
- BEA* Weblogic Type 4 jDriver pour Microsoft SQL Server 7/2000. Ce pilote doit être acquis séparément.
- Pilote JDBC Sybase jConnect 5.5
- Pilote Microsoft* SQL Server 2000 pour JDBC
Les pilotes tiers suivants ont été testés, mais ne sont pas recommandés pour une utilisation avec ce produit :
- Pilote ODBC Microsoft pour SQL Server
Novell conseille vivement d'utiliser les pilotes tiers recommandés dans la mesure du possible.
Conditions minimales requises pour les pilotes de fabricants tiers
Il se peut que le pilote ne fonctionne pas avec tous les pilotes de fabricants tiers. Si vous choisissez d'utiliser un autre pilote de fabricant tiers, celui-ci doit répondre aux conditions suivantes pour fonctionner avec le pilote DirXML pour JDBC :
- Prise en charge des méthodes de métadonnées requises.
Pour obtenir la dernière liste des appels de méthode java.sql.DatabaseMetaData obligatoires et facultatifs effectués par le pilote, reportez-vous à l'Méthodes java.sql.DatabaseMetaData . Cette liste de conditions pourra être augmentée dans les versions ultérieures. Toutes les méthodes java.sql.DatabaseMetaData en tant que telles doivent être prises en charge. Si le pilote tiers ne satisfait pas à ces conditions, il pourra être nécessaire d'en acquérir un autre par la suite.
- Renvoi de données précises des instructions de sélection.
- Exécution correcte des instructions d'insertion, de mise à jour et de suppression émises par le pilote.
Pour une liste complète des méthodes JDBC utilisées par le pilote, reportez-vous à l'Méthodes JDBC . Consultée parallèlement à la documentation des pilotes de fabricants tiers, cette liste peut permettre d'identifier d'éventuelles incompatibilités.
Considérations relatives à l'utilisation de pilotes de fabricants tiers
- Comme le pilote dépend des pilotes de fabricants tiers, tout bogue survenant dans ces pilotes est susceptible d'empêcher le bon fonctionnement du pilote. Pour vous aider à déboguer les pilotes de fabricants tiers, la sortie de trace du pilote a été améliorée pour inclure des messages de trace JDBC de niveau API et de pilote de fabricants tiers.
- La prise en charge des procédures stockées et les capacités de connexion (en particulier, la reconnexion) sont des sources d'échec possibles.
Utilisation d'un pilote ODBC
En raison de l'instabilité accrue liée à l'utilisation d'un pilote ODBC et des problèmes connus posés par le pilote de pont JDBC-ODBC du JRE (Java Runtime Environment - Environnement d'exécution Java) 1.3.x , Novell recommande vivement d'utiliser un pilote JDBC pur Java (type 3 ou 4) lorsque cela est possible.
Le principal inconvénient à utiliser un pilote ODBC natif est une plus grande instabilité. Des erreurs dans les bibliothèques natives importées par l'intermédiaire du pont risquent de mettre l'annuaire hors service.
Utilisation du pilote de pont JDBC-ODBC de Sun
Il se peut que le pilote et le pilote de pont JDBC-ODBC ne fonctionnent pas avec tous les pilotes ODBC de fabricants tiers. La liste des conditions requises pour les pilotes de fabricants tiers s'applique également aux pilotes ODBC et JDBC. Pour plus de détails, reportez-vous à Pilotes JDBC de fabricants tiers recommandés.
- Si vous optez pour le pilote ODBC de Microsoft pour SQL Server (SQLSRV32.DLL), Novell recommande d'installer la dernière version de Microsoft Data Access Components (MDAC).
- La dernière version du pilote de pont compris dans l'environnement JRE 1.3.x contient un défaut connu relatif aux paramètres de procédure stockée IN OUT. L'appel d'une procédure stockée avec des paramètres IN OUT se traduit par une violation de l'accès à la mémoire et par la mise hors service de l'annuaire. Pour éviter ce problème, il est recommandé d'utiliser la version 1.2.2 du JRE avec DirXML. Cette solution a néanmoins pour effet de réduire les performances de tous les pilotes exécutés sur le serveur. DirXML prend uniquement en charge l'utilisation de Hotspot avec JRE version 1.3.x ou ultérieure.
Sécurité
Pour garantir l'établissement d'une connexion sûre entre le pilote et un pilote JDBC tiers, Novell recommande d'exécuter le pilote à distance.
Problèmes connus
Cette section liste les problèmes connus du pilote.
Généralités
- Lors de l'utilisation de colonnes d'horodatage comme clés primaires avec les types d'événement 5 et 6, les valeurs d'horodatage placées dans la table de consignation des événements doivent être au format réglementaire ODBC (c'est-à-dire, aaaa-mm-jj hh:mm:ss.fffffffff). Certaines bases de données, comme Sybase et DB2, possèdent des formats d'horodatage propriétaire dont la syntaxe ne peut pas être analysée par la classe java.sql.Timestamp.
IBM DB2
- Après avoir appliqué un kit de mise à jour IBM à votre serveur DB2, vous devez utiliser le fichier db2java.zip mis à jour sur le serveur de base de données sur lequel le pilote est installé. Sinon, vous risquez de recevoir des erreurs de connexion, du type « CLI0601E Invalid statement handle or statement is closed. » (CLI0601E Identificateur d'instruction non valide ou instruction fermée)
Pont JDBC-ODBC
- La dernière version du pilote de pont JDBC-ODBC compris dans l'environnement JRE 1.3.x contient un défaut connu relatif aux paramètres de procédure stockée IN OUT. L'appel d'une procédure stockée avec des paramètres IN OUT se traduit par une violation de l'accès à la mémoire et par la mise hors service de l'annuaire. Pour éviter ce problème, il est recommandé d'utiliser la version 1.2.2 du JRE avec DirXML. Cette solution a néanmoins pour effet de réduire les performances de tous les pilotes exécutés sur le serveur. DirXML prend en charge uniquement l'utilisation de Hotspot avec JRE version 1.3.x ou ultérieure.
Oracle
- Vous pouvez rencontrer des problèmes liés à une utilisation intensive de l'UC lors de l'exécution d'instructions SQL incorporées, sauf si vous associez un attribut jdbc:type à chaque élément jdbc:statement. De façon générale, le problème peut être évité en attribuant la valeur single au paramètre de pilote <handle-stmt-results>.
- La version 8.1.6 du pilote JDBC Oracle comporte un bogue qui influe sur l'acheminement des données via le canal Éditeur. Des valeurs NULL incorrectes sont renvoyées par certains champs dans le journal des événements, alors que leurs valeurs sont en fait non NULL.
La conséquence directe est que le pilote considère plusieurs lignes comme NOOP (« No Operation ») et les ignore, puis il génère un document de canal Éditeur incomplet. Les versions antérieures peuvent également présenter ce même problème. Il est donc recommandé d'utiliser la version 8.1.7 qui est compatible en amont avec la plupart des versions d'Oracle 8.
- Pour vous connecter à d'anciennes versions d'Oracle sur NetWare (par exemple, 8.0.3x), vous devez utiliser le pilote JDBC CLASS111.zip fourni sur le CD d'installation d'Oracle.
Microsoft SQL Server
- Le pilote ODBC de Microsoft pour SQL renvoie un type java.sql.Types.OTHER ambigu pour les types de données NVARCHAR, NTEXT et UNIQUEIDENTIFIER. Or, le pilote suppose que le type java.sql.Types.OTHER est NVARCHAR ou NTEXT. En tant que tel, le type UNIQUEIDENTIFIER n'est pas pris en charge.
Sybase
- Pour assurer un comportement de remplissage/troncature conforme à la norme ANSI des valeurs binaires, les colonnes binaires (autres que les images) doivent être exactement de la même taille que l'attribut eDirectory qui leur est assigné, contraintes NOT NULL et ajoutées à la règle de création de l'objet Éditeur ou Abonné. Si elles sont contraintes NULL, les zéros de droite, qui sont significatifs pour eDirectory, seront tronqués. Si les colonnes binaires dépassent la taille de leurs attributs eDirectory respectifs, des 0 supplémentaires seront ajoutés à la fin de la valeur.
Limites
La section suivante liste les limites connues du pilote.
- Le pilote ne prend pas en charge l'utilisation d'identificateurs de base de données délimités.
- La synchronisation directe (à l'aide de vues) ne prend pas en charge la synchronisation des attributs à valeurs multiples ou référentiels.
- Les bases de données Informix Dynamic Server créées avec l'option LOG MODE ANSI ne sont pas prises en charge. Les bases créées avec cette option exigent l'utilisation d'identificateurs délimités pour les noms d'utilisateur ou de schéma. Pour le moment, le pilote ne prend pas en charge les identificateurs délimités.
- L'acheminement des données via le canal Éditeur n'est pas pris en charge sur MySQL en raison de l'absence de prise en charge des déclencheurs dans la version 3.23.
- Les types de données JDBC 2.0 ne sont pas pris en charge.
| |
  |
|