2.8.0
Date de publication : 29 Avril 2004 - build 0186
Cette version apporte de nouvelles fonctionnalités de rafraîchissement du cache webMethods MDM et de rechargement du référentiel ainsi que de nombreuses améliorations des fonctionnalités existantes. Par ailleurs le référentiel webMethods MDM a été réorganisé afin de permettre un packaging plus simple et une intégration plus facile avec les outils de gestion de versions et de configurations. Une journalisation systématique des modifications persistantes du référentiel est assurée afin qu'un suivi ou un contrôle détaillé par utilisateur puisse être effectué.
webMethods Master Data Manager
Nouvelles fonctionnalités
Barre "webMethods MDM Developers"
La barre développeur est affichée en mode développement. Elle permet d'accéder au guide utilisateur complet, au javadoc et assiste le développement en proposant des actions telles que la génération Java ou la synchronisation avec le modèle d'adaptation.
Voir Assistant développeur
Bouton "Rafraîchir modèle" (mode développement)
Ce bouton est accessible dans la barre "développeur".
Scénario type : Le développeur fait évoluer le modèle de données (ajout d'un noeud par exemple). Il désire que cette évolution soit immédiatement visible dans webMethods Master Data Manager, sans redémarrer le serveur d'applications.
Bouton "Générer Java" (mode développement)
Il est désormais possible de générer les types Java spécifiés par le modèle d'adaptation à partir de webMethods Master Data Manager. Le bouton est accessible dans la barre "développeur".
Voir Génération Java (bindings).
Bouton "Rafraîchir connecteurs"
Scénario type : Un paramètre persisté par le back-end (hors référentiel MDM) est mis à jour. L’utilisateur de webMethods Master Data Manager veut que la mise à jour du back-end soit immédiatement effective dans les vues MDM, sans redémarrer le serveur d’applications.
Améliorations diverses, corrections de bugs
Support des transactions longues
L'accès au contenu des adaptations supporte désormais les transactions longues. Si un même contenu d'adaptation est mis à jour en parallèle par deux sessions HTTP, la première mise à jour réussit mais la seconde échouera.
Une transaction longue consiste en deux transactions : une première transaction d'accès en lecture qui permet d'afficher le contenu sélectionné dans webMethods Master Data Manager ; une seconde transaction d'accès en mise en jour qui a lieu à la validation de la saisie effectuée dans webMethods Master Data Manager. Etant donné que l'intervalle de temps entre ces deux transactions peut être relativement important (au plus la durée d'expiration de session) et que le référentiel sous-jacent peut être mis à jour de diverses manières, la stratégie de contrôle consiste à exploiter un identifiant unique de persistence (last commit id) en vérifiant que cet identifiant est identique entre la première transaction et la seconde (un identifiant distinct implique que l'entité à mettre à jour a été modifiée par une autre source).
Tri des adaptations
Les adaptations sont désormais triées dans l'ordre alphabétique dans les différents arbres de webMethods Master Data Manager.
Cas d'une adaptation dont le modèle est en erreur
Auparavant, quand le modèle d'une adaptation (schéma XML) avait une erreur de compilation, l'utilisateur était bloqué sur la liste des adaptations. Désormais, il peut la sélectionner dans un mode restreint où seuls la page de description et le rapport de compilation sont disponibles.
Rapport de compilation plus complet
Le rapport de compilation d'une adaptation affiche désormais le détail des erreurs de compilation des composants utilisés. Par exemple, si un schéma XML utilisé est en erreur, ses erreurs sont affichées.
Adaptation sans libellé
La création d'une adaptation supporte désormais qu'aucun libellé ne soit fourni. Le libellé est donc optionnel. S'il n'est pas présent, seule la référence est utilisée pour l'affichage de l'adaptation.
Locale non définie
Le cas où la locale d'une adaptation est indéfinie (valeur "nulle") n'est plus considéré comme une erreur de compilation. Par défaut, la locale est alors celle définie par 'module.xml'.
Voir Modules webMethods MDM : Déclaration.
webMethods MDM Engine
Nouvelles fonctionnalités
Sans objet.
Améliorations diverses, corrections de bugs
Informations de configuration
Sur l'onglet d'accueil les informations de configurations webMethods MDM ont été enrichies.
API d'adaptation
Evolution des APIs
Classe Adaptation
La méthode isObsolete()
a été ajoutée :
elle permet de déterminer si une version plus récente de l'adaptation
est disponible.
Classe ReadContext
La méthode toHtmlString()
a été ajoutée
(c'est l'équivalentfonctionnel de la balise <border>
).
Classe AdaptationNode
La signature de la méthode getChildNode(aPath)
a été
modifiée : elle lève désormais l'exception PathAccessException
au lieu de CannotAccessToCustomizationNodeException
.
Utilisation d'une adaptation incohérente
En cas d'utilisation d'une adaptation en erreur, des exceptions explicites sont désormais levées :
- exception
com.softwareag.mdm.adaptation.AdaptationError
: classe abstraite, superclasse commune aux deux classes qui suivent ; - exception
com.softwareag.mdm.adaptation.UnavailableContentError
: exception levée si l'adaptation est en erreur sévère ; - exception
com.softwareag.mdm.adaptation.UndefinedSchemaError
: exception levée si aucun nom de schéma associé n'est défini.
Etant donné que l'usage d'une adaptation requiert que sa cohérence soit d'abord vérifiée, ces exceptions ne peuvent être levées qu'en outrepassant cette règle. Autrement dit, elles indiquent un viol de précondition d'appel.
Scripts Ant de génération Java
Il est désormais possible de générer les types Java spécifiés
par le modèle d'adaptation directement par le "job" <generateJava/>
.
Le "job" <generateJavaPathConstants/>
est déprécié
en conséquence.
Voir Utilisation de Ant.
Améliorations diverses, corrections de bugs
Balise JSP <debug/>
Cette balise affichie désormais le contenu complet de l'adaptation courante dans un tableau HTML hiérarchique.
Balise JSP <border>
Auparavant, une exception était si le noeud d'adaptation référencé
par la balise <border>
était indéfini (valeur
"nulle"). Désormais, un template vide est affiché.
Taglib JSP
Le fichier 'mdm.tld' qui spécifie les balises webMethods MDM a été revu, chaque a désormais une description.
Modèles d'adaptation
Nouvelles fonctionnalités
Génération Java
La spécification des types Java à générer à partir du schéma XML est désormais incluse directement dans le schéma XML. Celle-ci est en effet spécifiée par l'élément <binding> en annotation du schéma.
Voir Génération Java (bindings).
Améliorations diverses, corrections de bugs
Chargement des schémas XML - espaces de nommage
Pour les espaces de nommage identifiés par les URI 'http://www.w3.org/2001/XMLSchema' et 'urn:mdm-schemas:common_1.0', si les préfixes associés ne sont pas respectivement 'xs' et 'mdm', un message d'erreur explicite est ajouté.
Chargement des schémas XML - types non supportés
En cas d'utilisation d'un type XML Schema non supporté, le message d'erreur est plus explicite.
Administration et référentiel
Historisation pour le suivi d'activité
Toute modification persistente du référentiel est désormais systématiquement journalisée dans un fichier XML.
Voir Référentiel : Historisation.
Changement de référentiel à chaud
Si la propriété mdm.repository.directory
du fichier
mdm.properties
est modifiée à chaud, alors les actions
suivantes sont entreprises :
- Le rechargement de l'ensemble du référentiel est effectué : les adaptations utilisées avant l'action sont marquées comme obsolètes.
- Les sessions des utilisateurs de webMethods Master Data Manager et de webMethods MDM Engine sont interrompues. Les utilisateurs doivent en conséquence se reloguer.
Cette fonctionnalité permet de répondre au scénario type suivant : une nouvelle version du référentiel, testée en intégration est déployée en production. L’exploitant veut déployer cette nouvelle versoin, sans redémarrer le serveur d’applications et en conservant la possibilité de revenir rapidement sur l’ancienne version en cas de problème.
Voir Référentiel : Changement à chaud.
Migration du référentiel
Le référentiel interne webMethods MDM a été profondément réorganisé. D'une part le packaging est plus orienté par arbre d'adaptations, d'autre part, il est plus facile d'intégrer le référentiel dans un outil de gestion de versions et de configurations.
La migration du référentiel est transparente. Elle a lieu au démarrage de webMethods MDM.
Persistence XML et encodage
Les ressources sauvegardées en XML sont désormais systématiquement encodées en UTF-8 (auparavant l'encodage dépendait de la plate-forme d'exécution).
Modification de 'mdm.properties'
Si le fichier 'mdm.properties' est mis à jour, les informations de configuration
de webMethods MDM sont systématiquement réaffichées dans le journal
(catégorie mdm.log4j.category.log.kernel
).
Informations de configuration
Les informations de configuration webMethods MDM affichées dans le journal (catégorie
mdm.log4j.category.log.kernel
) ont été complétées.
Installation
Bibliothèques requises
Les 3 bibliothèques suivantes sont requises par cette version de webMethods MDM :
- Document Object Model, Level 2 Core (DOM2), version 2.0
Packagesorg.w3c.dom
Référence : http://www.w3c.org/DOM/
- Simple API for XML (SAX2), version 2.0
Packagesorg.xml.sax
Référence : http://www.saxproject.org/
- Java API for XML Processing (JAXP), version 1.1
Packagesjavax.xml
Référence : http://java.sun.com/xml/jaxp.html