TIBCO EBX®
Documentation > Manuel de référence > Intégration
Mode navigationDocumentation > Manuel de référence > Intégration

Utiliser TIBCO EBX® comme composant web

Présentation

EBX® peut être utilisé comme composant web d'une interface utilisateur, appelé par protocole HTTP. Un composant web EBX® peut être intégré à n'importe quelle application accessible via un navigateur web compatible. Ce mode d'accès permet de profiter des fonctionnalités majeures d'EBX®, telles que l'authentification utilisateur, la validation des données, ainsi que la génération automatique de l'interface utilisateur, tout en permettant également d'axer la navigation utilisateur sur certains éléments du référentiel.

Les composants web d'EBX® sont généralement intégrés à la structure intranet de l'organisation ou aux applications qui gèrent l'attribution de tâches spécifiques aux utilisateurs.

Intégration des composants web d'EBX® à des applications

Une application web qui appelle un composant web d'EBX® peut être :

  1. Une application non-Java, le cas le plus basique étant une page HTML statique.

    Dans ce cas, l'application doit envoyer une requête HTTP qui respecte les spécifications de requête du composant web EBX®.

  2. Une application Java, par exemple :

    • Une application web Java exécutée sur la même instance de serveur d'application que le référentiel EBX® qu'il référence ou sur une instance de serveur d'application différente.

    • Un Service utilisateur ou un Widget personnalisé EBX®, auquel cas la nouvelle session héritera automatiquement de la session parent d'EBX®.

Note

En Java, la méthode recommandée pour établir des requêtes HTTP qui appellent les composants web d'EBX® est la classe UIHttpManagerComponent dans l'API.

Sélection de l'élément de référentiel et du périmètre

Quand un composant web d'EBX® est appelé, l'utilisateur doit d'abord être authentifié dans la session HTTP nouvellement instanciée. Le composant web sélectionne alors un élément du référentiel et l'affiche conformément au paramètre de mise en page du scope défini dans la requête.

Le paramètre firstCallDisplay peut changer cet affichage automatique en fonction de sa valeur.

Les éléments du référentiel qui peuvent être sélectionnés sont les suivants :

Le périmètre, défini par le paramètre 'scope', détermine quelle partie de l'interface est affichée à l'utilisateur et définit les limites de navigation de l'utilisateur pendant la session. Le périmètre par défaut utilisé par le composant web est le plus petit possible dépendant de l'entité ou du service sélectionnés ou invoqués par la requête.

Voir aussi
Voir aussi

Il est également possible de sélectionner une perspective particulière ainsi qu’une action de perspective.

Par défaut, la sélection de l'élément est faite dans le cadre de la perspective de l'utilisateur si le périmètre de l'affichage ("scope") est complet ("full").

Voir aussi

Sélection combinée

Une URL de composant Web peut spécifier une perspective ainsi qu’une action ou une entité (espace de données, jeu de données, etc). Ainsi, pour un composant Web ayant dans son URL une perspective et une entité (mais pas d’action), si une action de la perspective correspond à cette entité, alors cette action est automatiquement sélectionnée.

Sinon, si aucune action ne correspond à cette entité, aucune action n'est sélectionnée mais l’entité est ouverte.

Si une action est spécifié en même temps qu’une entité, cette dernière est ignorée et l’action sera sélectionnée.

Cas particulier

Si l'entité cible est un enregistrement et qu'une action correspond à la table de l'enregistrement, alors cette action est sélectionnée et l'enregistrement sera ouvert à l'intérieur de l'action.

De même, si un bon de travail est ciblé par le composant Web, et si une action de type « inbox » existe dans la perspective, alors cette action sera sélectionnée et le bon de travail sera ouvert à l'intérieur de l'action.

Limitations connues

Si le composant Web spécifie un prédicat pour filtrer une table, il faut que l'action de perspective spécifie exactement le même prédicat pour pouvoir être sélectionnée.

De même, si l'action spécifie un prédicat de filtrage sur une table, le composant Web doit spécifier exactement le même prédicat pour que la correspondance soit établie.

Caractéristiques de la requête

URL de base

Dans un déploiement par défaut, l'URL de base doit avoir la forme suivante :

http://<host>[:<port>]/ebx/

Note

L'URL de base doit faire référence au servlet FrontServlet, défini dans le descripteur de déploiement /WEB-INF/web.xml de l'application web ebx.war.

Authentification de l'utilisateur et paramètres d'informations de la session

Paramètre

Description

Requis

login et password, ou un jeton utilisateur lié au répertoire

Définit les propriétés d'authentification de l'utilisateur. Si le login/mot de passe ou le jeton utilisateur lié au répertoire ne sont pas fournis, l'utilisateur sera invité à s'authentifier via la page de connexion du référentiel.

Voir Directory pour plus d'informations.

Non

trackingInfo

Définit les informations de suivi de la nouvelle session. Les informations de suivi sont recueillies dans les tables de l'historique. Parallèlement, ces informations peuvent être utilisées pour restreindre programmatiquement les autorisations d'accès.

Voir AccessRule pour plus d'informations.

Non

redirect

L'URL vers laquelle l'utilisateur sera redirigé à la fin de la session du composant, lorsqu'il clique sur le bouton 'Fermer'. Le bouton 'Fermer' est systématiquement affiché lors de la sélection d'enregistrements, cependant il faut toujours spécifier via le paramètre closeButton si l'affichage doit être maintenu dans les autres cas.

Pour plus d'informations, voir Exit policy.

Non

locale

Spécifie la locale à utiliser. La valeur est soit en-US soit fr-FR.

Non, la locale par défaut est celle enregistrée pour l'utilisateur.

Entité et paramètres de sélection du service

Paramètre

Description

Requis

branch

Sélectionne l'espace de données spécifié.

Non

version

Sélectionne l'image d'espace de donnée spécifiée.

Non

instance

Sélectionne le jeu de données spécifié. La valeur doit être la référence d'un jeu de données qui existe dans l'espace de données ou dans l'image sélectionnés.

Seulement si xpath ou viewPublication sont spécifiés.

viewPublication

Définit le nom de publication de la vue tabulaire ou hiérarchique à appliquer au contenu choisi.

Ce nom de publication est celui déclaré lors de la publication de la vue. Il se trouve dans l'espace 'Administration' sous Configuration des vues > Vues.

Tous les paramètres de la vue, tels que ses filtres, l'ordre de tri et les colonnes affichées, sont appliqués au résultat. Un espace de données et un jeu de données doivent être sélectionnés afin que cette vue s'applique. Le choix d'une table cible n'est pas nécessaire, puisqu'elle peut être automatiquement déterminée sur la base de la définition de la vue. Ce paramètre peut être associé au prédicat spécifié dans le paramètre xpath en tant qu'opération logique 'AND'.

Non

xpath

Définit la sélection d'un noeud dans le jeu de données.

La valeur peut être un chemin absolu valide situé dans le jeu de données sélectionné. L'écriture doit être conforme à un XPath simplifié, avec une syntaxe abrégée.

Il peut aussi s'agir d'un prédicat entouré par "[" and "]" si une table peut être automatiquement sélectionnée à l'aide d'autres paramètres de composants web (par exemple, viewPublication ou workflowView).

Voir aussi XPath supported syntax pour la syntaxe XPath

Voir UIHttpManagerComponent.setPredicate pour plus d'informations.

Non

service

Définit le service auquel accéder.

Pour plus d'informations sur les services utilisateurs intégrés, voir Services built-in.

Dans l'API Java, voir ServiceKey pour plus d'informations.

Non

workflowView

Définit la section du workflow à sélectionner.

Voir WorkflowView pour plus d'informations.

Non

perspectiveName

Définit le nom de la perspective à sélectionner.

Si ce paramètre est défini, le paramètre scope ne pourra prendre que deux valeurs : full et data.

Seulement si perspectiveActionId ou perspectiveActionName est spécifié.

perspectiveActionId

Déprécié. Merci de considérer l'utilisation de perspectiveActionName à la place.

Définit l'identifiant de l'action de perspective à sélectionner.

Non

perspectiveActionName

Définit le nom unique de l'action de perspective à sélectionner.

Non

Paramètres de mise en page

Paramètre

Description

Requis

scope

Définit le périmètre utilisé par le composant web. Il peut prendre la valeur full, data, dataspace, dataset ou node.

Voir UIHttpManagerComponent.Scope pour plus d'informations.

Non, la valeur par défaut sera calculée pour être la plus petite possible en fonction de la sélection cible.

firstCallDisplay

Définit l'affichage qui doit être utilisé à la place de celui déterminé par la combinaison de la sélection et du paramètre scope.

Les valeurs possibles sont :

  • auto : L'affichage est automatiquement positionné en fonction de la sélection.

  • view : Force l'affichage de la vue tabulaire ou de la vue hiérarchique.

  • record : Si le prédicat cible au moins un enregistrement, force l'affichage du premier enregistrement de la liste.

Par exemple,

firstCallDisplay=view

firstCallDisplay=view:hierarchyExpanded

firstCallDisplay=record

firstCallDisplay=record:{predicate}

Voir UIHttpManagerComponent.setFirstCallDisplay pour plus d'informations.

Voir UIHttpManagerComponent.setFirstCallDisplayHierarchyExpanded pour plus d'informations.

Voir UIHttpManagerComponent.setFirstCallDisplayRecord pour plus d'informations.

Non, la valeur par défaut sera calculée en fonction de la sélection cible.

closeButton

Définit la manière dont le bouton de fin de session sera affiché. La valeur peut être logout ou cross.

Voir UIHttpManagerComponent.CloseButtonSpec pour plus d'informations.

Non. Si le périmètre n'est pas full, aucun bouton de fin de session ne sera affiché par défaut.

dataSetFeatures

Définit les fonctionnalités à afficher dans un service utilisateur au niveau du jeu de données ou d'un formulaire en dehors d'une table.

Ces options se rapportent uniquement aux fonctionnalités au sein de l'espace de travail. Il est recommandé d'utiliser cette propriété avec le plus petit scope possible, c'est à dire dataset ou node.

Syntaxe :

<prefixe> ":" <feature> [ "," <feature>]*

  • <prefixe> est hide ou show,

  • <feature> est services, title, save, ou revert.

Par exemple,

hide:title

show:save,revert

Voir UIHttpManagerComponent.DataSetFeatures pour plus d'informations.

Non.

viewFeatures

Définit les fonctionnalités à afficher dans une vue tabulaire ou hiérarchique (au niveau de la table).

Ces options se rapportent uniquement aux fonctionnalités au sein de l'espace de travail. Il est recommandé d'utiliser cette propriété avec le plus petit scope possible, c'est à dire dataset ou node.

Syntaxe :

<prefixe> ":" <feature> [ "," <feature>]*

  • <prefixe> est hide ou show,

  • <feature> est create, views, selection, filters, services, refresh, title, ou breadcrumb.

Par exemple,

hide:title,selection

show:service,title,breadcrumb

Voir UIHttpManagerComponent.ViewFeatures pour plus d'informations.

Non.

recordFeatures

Définit les fonctionnalités à afficher dans un formulaire au niveau de l'enregistrement.

Ces options se rapportent uniquement aux fonctionnalités au sein de l'espace de travail. Il est recommandé d'utiliser cette propriété avec le plus petit scope possible, c'est à dire dataset ou node.

Syntaxe:

<prefixe> ":" <feature> [ "," <feature>]*

  • <prefixe> est hide ou show,

  • <feature> est services, title, breadcrumb, save, saveAndClose, close, ou revert.

Par exemple,

hide:title

show:save,saveAndClose,revert

Voir UIHttpManagerComponent.RecordFeatures pour plus d'informations.

Non.

pageSize

Précise le nombre d'enregistrements affichés par page dans une vue table (qu'elle soit tabulaire ou hiérarchique).

Non.

startWorkItem

Précise qu'un élément de travail doit être automatiquement pris et démarré. La valeur peut être true ou false.

Voir ServiceKey.WORKFLOW pour plus d'informations.

Non. La valeur par défaut est false, l'état du bon de travail cible restant inchangé.

Exemples d'appels à un composant web EBX®

URI minimale :

http://localhost:8080/ebx/

Se connecte en tant qu''admin' et sélectionne l'espace de données 'Référence' :

http://localhost:8080/ebx/?login=admin&password=admin&branch=Reference

Sélectionne l'espace de données 'Référence' et accède au service de validation intégré :

http://localhost:8080/ebx/?login=admin&password=admin&branch=Reference&service=@validation

Sélectionne la table des rôles dans le répertoire par défaut :

http://localhost:8080/ebx/?login=admin&password=admin&branch=ebx-directory&instance=ebx-directory&xpath=/directory/roles

Sélectionne l'enregistrement 'admin' dans le répertoire par défaut :

http://localhost:8080/ebx/?login=admin&password=admin&branch=ebx-directory&instance=ebx-directory&xpath=/directory/users[./login="admin"]

Accède à l'interface pour créer un nouvel utilisateur dans le répertoire par défaut :

http://localhost:8080/ebx/?login=admin&password=admin&branch=ebx-directory&instance=ebx-directory&xpath=/directory/users&service=@creation

Compare l'enregistrement 'admin' du répertoire par défaut avec l'enregistrement 'jSmith' :

Compare l'enregistrement 'R1' du jeu de données 'instanceId' dans l'espace de données 'Reference' avec l'enregistrement 'R0' :

http://localhost:8080/ebx/?login=admin&password=admin&branch=ebx-directory&instance=ebx-directory&xpath=/directory/users[./login="admin"]&service=@compare&compare.branch=ebx-directory&compare.instance=ebx-directory&compare.xpath=/directory/users[./login="jSmith"]

Documentation > Manuel de référence > Intégration