Pages dynamiques et portlets
HCL UX Screen Flow Manager permet de la prise en charge du réacheminement des utilisateurs entre des ressources de portail statiques, mais également entre des ressources dynamiques. La fonction Dynamic UI Management d'HCL Portal est utilisée.
Vous pouvez utiliser la fonction Dynamic UI Management pour créer des pages et des portlets au moment de l'exécution. Elle permet également de modifier le modèle de contenu d'un utilisateur et le modèle de navigation, déclenché par l'interaction d'un utilisateur.
Dans la plupart des cas, une page dynamique est une copie transitoire d'une page modèle, souvent appelée page de base. Cette copie transitoire se comporte comme un instantané de la page de base à partir du moment où la copie a été créée. Elle contient tous les portlets de la page de base et toutes ses propriétés. Un portlet dynamique est une copie transitoire d'une définition de portlet. Vous pouvez ajouter des portlets dynamiques uniquement à des pages dynamiques.
L'utilisation de pages dynamiques au lieu de pages statiques a pour avantage de permettre la création de plusieurs copies ou instances de la page de base. Un utilisateur peut ensuite effectuer un basculement manuel ou être réacheminé entre ces instances.
Les pages dynamiques sont toujours ajoutées à un noeud d'extension, une page à laquelle est affectée une transformation.
Pendant le traitement d'une boîte de dialogue, des sous-boîtes de dialogue uniques peuvent être statiques ou dynamiques. Si la sous-boîte de dialogue est censée être dynamique, les deux cas suivants se présentent :
- Si le noeud final de transition fait référence à une page, le réacheminement nécessite une page dynamique. La page dynamique doit être une copie transitoire de la page de base référencée qui doit être démarrée et ajoutée sous le noeud d'extension.
- Si le noeud final de transition fait référence à un portlet, le réacheminement requiert un portlet dynamique. Le portlet dynamique doit être une copie transitoire de la definition de portlet référencée qui doit être démarrée et ajoutée sous le noeud d'extension. Dans ce cas, une page dynamique doit toujours avoir été créée. Screen Flow Manager respecte cette exigence en démarrant une page dynamique vide. Le portlet dynamique peut alors être ajouté à cette page.
Vous pouvez utiliser cette définition de boîte de dialogue pour contrôler s'il faut démarrer dynamiquement une ressource. Vous pouvez également indiquer ici dans quel noeud d'extension ajouter la copie dynamique. Voici un exemple de code :
<dialog name="dialog1">
<transition-endpoint name="page2">
<resource uniquename="uniquename.page2"/>
<invocation type="dynamic" extension-node="extensionNode1"/>
</transition-endpoint>
<transition-endpoint name="portlet1">
<resource uniquename="uniquename.portlet1"/>
<invocation type="static" extension-node="extensionNode1"/>
</transition-endpoint>
<transition-endpoint name="portlet2">
<resource uniquename="uniquename.portlet2"/>
<invocation type="dynamic" extension-node="extensionNode1"/>
</transition-endpoint>
<transition>
<source>
<transition-endpoint nameref="portlet1">
<event qname="e1-1"/>
</transition-endpoint>
</source>
<target>
<transition-endpoint nameref="page2">
<event qname="e2"/>
</transition-endpoint>
</target>
</transition>
<transition>
<source>
<transition-endpoint nameref="portlet1">
<event qname="e1-2"/>
</transition-endpoint>
</source>
<target>
<transition-endpoint nameref="portlet2">
<event qname="e2"/>
</transition-endpoint>
</target>
</transition>
</dialog>
portlet1 existe sur une page statique. - Si le portlet émet l'événement
e1-1, l'utilisateur est réacheminé vers la pagepage2. La pagepage2est à son tour censée être démarrée dynamiquement dans le noeud d'extension avec le nom uniqueextensionNode1. La page dynamique est une copie transitoire de la page de base sous le nom uniqueuniquename.page2. - Si
portlet1émet l'événemente1-2, l'utilisateur est réacheminé vers le portletportlet2qui est également censé démarrer dynamiquement. Une page dynamique est requise en vue d'y ajouter ce portlet dynamique. Par conséquent, le gestionnaire de flux d'écran crée une page dynamique dans le noeud d'extension ou la page avec le nom uniqueextensionNode1et à laquelle le portlet est ensuite ajouté.
Le portail supprime des ressources dynamiques lorsqu'elles ne sont plus nécessaires. Par exemple, lorsqu'une transition redirige un utilisateur d'une page dynamique dpage1 vers une page dynamique, dpage2, dpage1 est supprimée et dpage2 est créée.