Habillages

Les habillages représentent le rendu du cadre entourant les composants tels que les conteneurs de ligne ou de colonnes, ou les portlets. L'habillage est chargé sur la page de portail par la balise <portal-core:pageRender/>. Les encadrements sont installés indépendamment des thèmes. mais un habillage peut être associé à un thème.

Les habillages définissent plus que la conception des portlets : ils définissent également la présentation des composants. Ceux-ci comprennent les conteneurs et les éléments de contrôle. Cette structure hiérarchique est présentée dans le diagramme suivant :

Figure 1. Présentation sous-jacente de l'écran d'accueil

Composition d'habillage. Dans ce graphique, la page contient une seule ligne avec deux conteneurs de colonne. Chaque conteneur de colonne contient deux portlets. Pour plus d'informations sur ce graphique, lisez cette rubrique.

Les composants de l'habillage sont appelés dans l'ordre suivant :

  1. La balise <portal-core:pageRender/> de l'écran d'accueil (Home.jsp) affiche les composants pour le nœud sélectionné. Les composants sont implémentés comme des conteneurs de ligne, des conteneurs de colonne et des contrôles, en fonction de la présentation du portail définie dans la rubrique Personnalisation de la page du portail. Les éléments de contrôle sont générés à l'aide du fichier Control.jsp. La figure dans la rubrique Présentation sous-jacente de l'écran d'accueil illustre un conteneur de ligne avec deux conteneurs de colonne, chacun incluant deux portlets.
  2. Les conteneurs de ligne et de colonne affichent leurs composants imbriqués à l'aide du code Java ou des éléments <portal-skin:layoutNodeLoop/> et <portal-skin:layoutNodeRender/>.
  3. Chaque portlet est généré par la balise <portal-skin:portletRender/> figurant dans le fichier Control.jsp.. La commande génère également la bordure et la barre de titre autour de la sortie du portlet.

    Remarque : Certaines icônes de la barre de titre du portlet ont une incidence sur la performance.

Habillages fournis

Les habillages IBM, Noskin, ThinSkin et IFRAME sont fournis par HCL DX Portal pour le rendu des portlets.

Page Builder - Standard et Page Builder - Thin sont deux nouveaux habillages pouvant être attribués au thème Menu de l'onglet - Page BuilderPage Builder. Ces habillages se trouvent sous wp_profile_root/installedApps/node_name/Enhanced_Theme.ear/wp.theme.enhancedtheme.war/skins/html

Remarques sur l'utilisation pour les habillages fournis
  • Les habillages Page Builder - Standard et Page Builder - Thin doivent être utilisés exclusivement avec le thème Menu de l'onglet - Page BuilderPage Builder. Il n'est pas recommandé d'attribuer ces habillages à des thèmes autres que le thème Menu de l'onglet - Page BuilderPage Builder.
  • L'habillage IFRAME ne peut pas être défini comme habillage par défaut de Portal. Il est aussi déconseillé d'attribuer l'habillage IFRAME au thème Portal. Ce dernier ne doit être affecté qu'aux portlets conçus spécialement pour l'habillage.
  • Si le répertoire des thèmes de Portal est supprimé ou renommé, le chargeur de ressources du portail utilise themes/html/Default.jsp. Dans ce cas, il est recommandé d'utiliser l'habillage de base. Pour ce faire, renommez le répertoire skins. Par exemple, le répertoire skins\html\IBM doit être renommé skins\html\IBM1. Si un thème ne fonctionne plus, vous pouvez renommez les répertoires des thèmes et habillages concernés pour bénéficier d'un thème fonctionnel minimal.

Informations connexes sur l'habillage IFRAME

L'habillage IFRAME (inline frame) fourni à un objectif plus pratique que les autres habillages. Il permet en effet d'afficher le contenu du portail dans un IFRAME HTML sur la page. Les IFRAMES sont traités comme des fenêtres de navigateur distinctes et servent à ajouter des objets externes, notamment d'autres documents HTML.

L'habillage IFRAME est principalement utile pour les portlets qui ont un affichage assez lent, ce qui permet au reste de la page du portail de s'afficher sans attendre le contenu du portlet dans l'IFRAME. La largeur de cet habillage est réglée sur 100% et sa hauteur est de 250 pixels.

Pour modifier ces paramètres, procédez comme suit :

  1. Localisez le sous-répertoire /IFrame dans le répertoire ../skins/html.
  2. Modifiez le fichier Control.jsp.
  3. Localisez le marquage de l'IFRAME :
    
    <iframe src='<%wpsURL.write(out);%>' SCROLLING="auto" FRAMEBORDER="0" Width="100%" height="250">
    
  4. Modifiez les attributs de largeur et de hauteur dans cette balise.
  5. Enregistrez et fermez le fichier.

Agrandissement automatique des portlets

Dans les versions précédentes d'HCL DX Portal, l'état d'un portlet était défini automatiquement pour opérer un agrandissement lors du passage du mode affichage à un autre mode. Lors du passage au mode édition, par exemple, le portlet est agrandi jusqu'à ce que l'utilisateur revienne en mode affichage. Cet agrandissement automatique n'est plus activé par défaut, mais peut être implémenté aux niveaux suivants.
  • Niveau du portlet

    Pour configurer tous les portlets pour qu'ils s'agrandissent automatiquement lors du changement de mode, attribuez la valeur true au paramètre du service de configuration portlet.automaximize.

  • Niveau d'habillage

    Ce comportement peut être implémenté dans les habillages des portlets à l'aide de la balise <portal-navigation:urlGeneration/> pour permettre à l'administrateur de déterminer les portlets qui sont agrandis automatiquement. Vous pouvez, par exemple, créer des habillages appelés Highlight et Highlight_Max, avec pour seule différence la possibilité pour Highlight_Max de modifier automatiquement l'état du portlet lorsqu'il passe à un mode autre qu'affichage.

  • Niveau du portlet

    Pour configurer des portlets particuliers pour permettre l'agrandissement automatique, le développeur du portlet peut associer la valeur true au paramètre d'initialisation com.ibm.portal.automaximize.

Avertissement : L'agrandissement automatique peut générer des problèmes pour les portlets standard dont le développement ne prévoit pas l'agrandissement lors du passage en mode édition ou configuration et n'offre donc pas des informations correctes sur l'état de la fenêtre lors de la création des boutons Terminer ou Annuler. De plus, dans les portlets IBM, l'agrandissement automatique peut avoir des effets indésirables liés aux URI de retour créés par les balises <portletAPI:createReturnURI> et <portal-skin:portletBack> ou la méthode createReturnURI(). Les modes du portlet et les états des fenêtres sont orthogonaux, ce qui peut occasionner des combinaisons de modes de portlet et d'états de fenêtres absents avant l'activation de Retour pour revenir en mode affichage.