Outils Web (éditeur de diagramme Web, Page Designer, Web Site Designer) - Notes sur l'édition

© Copyright International Business Machines Corporation 2006. All rights reserved. Copyright IBM France 2006. Tous droits réservés. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

Notes sur l'édition

1.0 Limitations
   1.1 Limitations de Page Designer en matière de rendu des propriétés CSS
   1.2 Les éléments de menu de troisième niveau disparaissent
   1.3 Exception de pointeur null lors d'un glisser-déposer entre l'Explorateur de projets et la vue Navigation sur le site Web
   1.4 Impossible de copier un exemple de modèle comme modèle dynamique durant la création d'un projet
   1.5 La vue Navigation sur le site Web ne reflète pas les modifications effectuées dans web.xml
   1.6 Nom de bouton tronqué en russe
   1.7 Ordre des mots incorrect dans l'option de menu Annuler <action>
   1.8 Le trajet de navigation ne reflète pas les modifications du site sur la page Conception
2.0 Problèmes connus et leurs solutions
   2.1 Page Designer ne fonctionne pas avec SCM (Software Configuration Management) après la division d'un cadre
   2.2 Page Designer ne permet pas d'insérer de table à agencement libre à partir du menu principal lorsque le caret apparaît en dehors de la table à agencement libre
   2.3 Agencement réduit de la vue Propriétés
   2.4 Les infobulles affichent l'aide générale dans l'éditeur de diagramme Web
   2.5 La validation de syntaxe HTML signale à tort des erreurs du type "Aucune balise de début" pour les pages combinant balises HTML et balises JSP
   2.6 Certaines facettes doivent être mises à jour manuellement lorsque vous faites migrer des projets à l'aide de l'assistant de migration J2EE
   2.7 Page Designer n'affiche pas le menu contextuel correct lorsque vous cliquez avec le bouton droit sur un élément à l'intérieur d'une cellule de texte
   2.8 En cas de changement des caractéristiques d'une connexion JDBC, il est possible que votre alias d'authentification ne soit pas mis à jour dans le fichier de liaisons Web
   2.9 Un message signale une erreur SWT et vous recommande de quitter le plan de travail
   2.10 Erreur du pilote réseau Derby lorsque vous utilisez les assistants Enregistrement relationnel et Liste d'enregistrements relationnels
   2.11 Un passage à l'environnement cible WebSphere Application Server v6.1 ne modifie pas en conséquence le chemin de classes si la facette JDBC Mediator 6.1 est déjà activée
   2.12 En cas d'utilisation de JDBC Mediator, la référence de ressource de la source de données peut être supprimée à l'importation d'un projet sous forme de fichier WAR/EAR
   2.13 Une erreur peut se produire à l'importation d'un projet Web V512 dont certaines pages contiennent la balise JSF "h:outputLink"

1.0 Limitations

1.1 Limitations de Page Designer en matière de rendu des propriétés CSS

Page Designer ne prend pas en charge les propriétés CSS de type non visuel (par exemple, speak).

Page Designer ne prend pas en charge les propriétés CSS de type visuel suivantes :
border-collapse,border-spacing,caption-side,clip,content,counter-increment,counter-reset,cursor,empty-cells,font-variant,letter-spacing,max-height,max-width,min-height,min-width,orphans,outline-color,outline-style,outline-width,outline,overflow,page-break-after,page-break-before,page-break-inside,quotes,table-layout,visibility,widows et word-spacing.

Page Designer ne prend pas entièrement en charge les propriétés CSS de type visuel suivantes :
- Les valeurs négatives ne sont pas acceptées pour margin, margin-top, margin-bottom, margin-left et margin-right.
- Les valeurs relatives et fixes ne sont pas acceptées pour position.
- Les valeurs spécifiées en pourcentage ou longueur ne sont pas acceptées pour vertical-align.
- Les valeurs top et bottom ne sont pas acceptées pour vertical-align.
- Les valeurs pre-wrap et pre-line ne sont pas acceptées pour white-space.

1.2 Les éléments de menu de troisième niveau disparaissent

Lorsque vous créez un menu horizontal ou vertical avec une profondeur supérieure à 3, si la propriété keepSelection a pour valeur true, le fait de survoler les éléments de menu avec la souris devrait en théorie maintenir les sous-menus correspondants affichés. C'est le cas pour les deux premiers niveaux, mais pas pour le troisième.

1.3 Exception de pointeur null lors d'un glisser-déposer entre l'Explorateur de projets et la vue Navigation sur le site Web

Une exception de pointeur null (NullPointerException) est lancée lorsque vous faites glisser une page du dossier WebContent de la vue Explorateur de projets pour la déposer sur la page Navigation de la vue Navigation sur le site Web.

1.4 Impossible de copier un exemple de modèle comme modèle dynamique durant la création d'un projet

Si vous sélectionnez la facette de projet Navigation sur le site Web lorsque vous créez un projet Web, une fois parvenu à la page de l'assistant Sélection d'un modèle de page pour le site Web, vous pouvez cocher la case Utiliser un modèle de page par défaut pour le site Web et sélectionner un exemple de modèle, mais en réalité, vous ne pouvez sélectionner qu'un modèle pour phase de conception. Vous ne pouvez pas sélectionner de modèle de page dynamique.

1.5 La vue Navigation sur le site Web ne reflète pas les modifications effectuées dans web.xml

Si vous effectuez des modifications dans le fichier web.xml, elles ne sont pas reflétées par la vue Navigation sur le site Web. Par exemple, si vous changez le mappage de servlet pour une page dans web.xml, la vue Navigation sur le site Web ne reflète pas ce changement sur la page Détails, même une fois que le fichier web.xml a été enregistré.

1.6 Nom de bouton tronqué en russe

 Lorsqu'un nom de bouton est traduit de l'anglais vers le russe (ou vers une autre langue), la chaîne traduite peut être plus longue que la chaîne anglaise. Dans ce cas, si la taille du bouton reste la même, son nom est tronqué.

1.7 Ordre des mots incorrect dans l'option de menu Annuler <action>

En anglais et dans d'autres langues, l'option d'annulation de la dernière opération apparaît sous la forme Annuler <action>. Par exemple, en français, cette option peut être Annuler Ajout d'une page Web. Mais en coréen, l'ordre correct des mots devrait être <action> Annuler (par exemple, l'équivalent en français donnerait Ajout d'une page Web Annuler). Actuellement, même pour la version coréenne, l'ordre des mots est Annuler <action>.

1.8 Le trajet de navigation ne reflète pas les modifications du site sur la page Conception

Lorsque vous insérez un trajet de navigation sur l'une des pages du site, si vous modifiez ensuite le site, ce changement n'est pas reflété sur la page Conception de Page Designer. Pour faire apparaître vos modifications, vous devez actualiser l'écran ; par exemple, en passant à la page Prévisualisation puis en revenant à la page Conception.

2.0 Problèmes connus et leurs solutions

2.1 Page Designer ne fonctionne pas avec SCM (Software Configuration Management) après la division d'un cadre

Si vous créez un fichier en divisant un cadre dans Page Designer, et si ce cadre est sous contrôle de SCM, il est possible que vous ne puissiez pas éditer le nouveau fichier dans la même instance de Page Designer.

Solution : Fermez Page Designer et rouvrez le fichier dans une nouvelle instance de Page Designer.

2.2 Page Designer ne permet pas d'insérer de table à agencement libre à partir du menu principal lorsque le caret apparaît en dehors de la table à agencement libre

Lorsque le caret apparaît en dehors de la table à agencement libre sur la page Conception de Page Designer, vous ne pouvez pas insérer de table à agencement libre à partir du menu Insérer.

Solution : Insérez une table à agencement libre à partir de la palette.

2.3 Agencement réduit de la vue Propriétés

Lorsque vous utilisez Page Designer avec un logiciel lecteur d'écran, il est possible que la vue Propriétés soit réduite.

Solution :
N'utilisez pas la vue Propriétés avec un tel logiciel. Utilisez le mode Tous les attributs en sélectionnant "Afficher tous les attributs" sur la barre de menus de la vue Propriétés.

2.4 Les infobulles affichent l'aide générale dans l'éditeur de diagramme Web

Lorsque vous éditez un diagramme Web, l'aide contextuelle est disponible dans une vue d'aide dynamique, mais pas dans une infobulle. Pour définir les préférences d'affichage de l'aide contextuelle, sélectionnez Fenêtre > Préférences > Aide, puis, sous la section Ouvrir l'aide contextuelle de la fenêtre, sélectionnez l'option dans une vue d'aide dynamique. Si vous sélectionnez dans une infobulle, seule l'aide générale sera disponible lors de l'édition d'un diagramme Web.

2.5 La validation de syntaxe HTML signale à tort des erreurs du type "Aucune balise de début" pour les pages combinant balises HTML et balises JSP

Le mélange de balises HTML et JSP (y compris personnalisées) peut conduire le valideur de syntaxe HTML à générer à tort des erreurs signalant l'absence de balise de début ou de fin. Par exemple, dans le code suivant :

<c:when test="${status.first}">
<div class="topNavRight"><ul>
</c:when>
...
<c:if test="${status.last}">
</ul></div>
</c:if>

Les balises de début <div> et <ul> sont à l'intérieur des balises <c:when> et les balises de fin </ul></div> sont à l'intérieur des balises <c:if>. Ce code est valide. Pourtant, le valideur de syntaxe HTML signale qu'il n'y a pas de balises de début correspondant aux balises de fin </ul> et </div>.

Solution 1 : Dans la mesure du possible, évitez le chevauchement de balises HTML et JSP. Dans l'exemple ci-dessus, la solution serait de changer le code comme ceci :

<div class="topNavRight"><ul>
<c:when test="${status.first}">
</c:when>
...
<c:if test="${status.last}">
</c:if>
</ul></div>

Solution 2 : Si vous ne pouvez éviter le chevauchement, désactivez la validation de syntaxe HTML. Pour ce faire, ouvrez la fenêtre de Propriétés du projet concerné, sélectionnez la page Validation, puis cochez la case "Remplacer les préférences de validation" et décochez la case "Valideur de syntaxe HTML".

2.6 Certaines facettes doivent être mises à jour manuellement lorsque vous faites migrer des projets à l'aide de l'assistant de migration J2EE

Si vous faites migrer une application via l'assistant de migration J2EE (option Migrer dans le menu contextuel d'un projet), certaines facettes dépendant d'une version spécifique de module Web dynamique peuvent ne pas être mises à jour correctement. 

Solution : Une fois la migration terminée, ouvrez la page Propriétés du projet (en sélectionnant Propriétés dans son menu contextuel) et affichez le volet Valeurs de projet (Facettes de projet).Cliquez sur Ajout/Suppression de valeurs de projet.Il est alors possible que des messages d'erreur soient affichés, indiquant que certaines facettes nécessitent une version spécifique de module Web Dynamique, par exemple JSTL, JDBC Mediator et WebSphere Web (coexistence et étendu).Pour la plupart des facettes, vous pouvez simplement sélectionner la version requise dans la liste déroulante et cliquer sur Terminer.En revanche, pour la facette JDBC Mediator, vous devez désélectionner manuellement l'ancienne facette et cliquer sur Terminer, puis rouvrir la page de sélection des facettes et sélectionner la version de facette appropriée afin que les fichiers JAR corrects de JDBC Mediator soient ajoutés à votre chemin de classes.

2.7 Page Designer n'affiche pas le menu contextuel correct lorsque vous cliquez avec le bouton droit sur un élément à l'intérieur d'une cellule de texte

Lorsqu'une cellule de texte ne contient qu'un seul élément, vous ne pouvez pas ouvrir le menu contextuel de cet élément en cliquant dessus avec le bouton droit.

Solution : Pour ouvrir le menu contextuel correct de l'élément dans la cellule de texte, utilisez la combinaison de touches Maj+F10 au lieu de cliquer avec le bouton droit.

2.8 En cas de changement des caractéristiques d'une connexion JDBC, il est possible que votre alias d'authentification ne soit pas mis à jour dans le fichier de liaisons Web

Lorsque vous mettez à jour les détails du contexte d'exécution d'une connexion JDBC (dans les propriétés du projet), cela a pour effet de créer une nouvelle connexion dans votre fichier EAR étendu et de mettre à jour la référence de ressource afin qu'elle pointe sur le nouveau nom JNDI de la nouvelle source de données.Cependant, l'alias d'authentification n'est pas mis à jour. 
Solution : Dans le fichier web.xml, sélectionnez la référence de ressource qui porte le même nom que votre connexion JDBC.Le nom de la référence de ressource est basé sur celui de la connexion qui a été sélectionnée pour être mise à jour (dans la liste déroulante Nom), et non sur celui de la connexion spécifiée dans le cadre de cette mise à jour.Pour l'alias d'authentification, spécifiez celui qui vient d'être créé (le nouvel alias inclut le nom de la connexion spécifiée dans la mise à jour). Vous pouvez le trouver dans la section Déploiement du descripteur de déploiement de votre fichier EAR ou dans la configuration du serveur si vous utilisez l'environnement de test WebSphere Application Server v5.1.

2.9 Un message signale une erreur SWT et vous recommande de quitter le plan de travail

Lorsque vous travaillez dans Page Designer, il est possible qu'un message vous signale qu'un erreur SWT s'est produite et vous recommande de fermer le plan de travail. Ce problème arrive le plus souvent lorsque votre page Web est ouverte ou que vous tentez d'ouvrir un menu contextuel dans Page Designer. Il est alors probable que votre système soit soumis à une trop forte charge, avec un trop grand nombre d'applications lancées.

Solution :

  1. Ouvrez le Gestionnaire des tâches de Windows.
  2. Cliquez sur l'onglet Processus.
  3. Identifiez les processus qui présentent des valeurs particulièrement grandes dans les colonnes Handles, Objets USER et Objets GDI.
    • Si vous ne voyez pas ces colonnes, sélectionnez Affichage > Sélectionner les colonnes sur la barre de menus. Dans la fenêtre Sélection de colonnes, cochez les cases Nombre de handles, Objets USER et Objets GDI.

  4. Ces processus consomment un grand nombre d'objets système qui rendent impossible leur exécution simultanée avec ce produit. Essayez de fermer certains d'entre eux (en arrêtant les applications correspondantes) et redémarrez le plan de travail.

2.10 Erreur du pilote réseau Derby lorsque vous utilisez les assistants Enregistrement relationnel et Liste d'enregistrements relationnels

 Lorsque vous êtes connecté à une base de données réseau Derby, il est possible que vous rencontriez des problèmes d'utilisation des assistants Enregistrement relationnel et Liste d'enregistrements relationnels.  Cela peut arriver lorsqu'une table de votre base de données est liée à une autre table par une relation de clé externe et que cette autre table possède une clé primaire sur plusieurs colonnes, et si vous tentez alors d'ajouter une relation entre la première table et la seconde.


Solution : Avant d'exécuter l'assistant Enregistrement relationnel ou Liste d'enregistrements relationnels, ouvrez la vue Explorateur de bases de données, développez les branches de toutes les tables que vous comptez utiliser et vérifiez que les contraintes de clé primaire sont chargées correctement.

2.11 Un passage à l'environnement cible WebSphere Application Server v6.1 ne modifie pas en conséquence le chemin de classes si la facette JDBC Mediator 6.1 est déjà activée

Lorsque vous créez un projet Web dynamique avec la facette JDBC Mediator, les fichiers JAR d'exécution sont configurés sur la base de votre serveur cible, quelle que soit la version de facette choisie.Par exemple, si vous choisissez WebSphere Application Server V5.1 comme cible d'exécution, mais la version 6.1 de la facette JDBC Mediator, les fichiers JAR ajoutés à votre projet sont ceux de la version 5.1.Si vous remplacez ensuite la cible d'exécution de votre projet Web par WebSphere Application Server v6.1, votre "runtime" JDBC Mediator n'est pas mis à jour en conséquence.

Solution : Désinstallez la facette JDBC Mediator du projet et réinstallez-la.Pour cela, cliquez avec le bouton droit sur le projet Web et sélectionnez Propriétés. Sélectionnez la catégorie de propriétés Valeurs de projet (Facettes de projet) et cliquez sur le bouton Ajout/Suppression de valeurs de projet.Décochez la case JDBC Mediator et cliquez sur Terminer.Cliquez à nouveau sur le bouton Ajout/Suppression de valeurs de projet, cochez la case JDBC Mediator et cliquez sur Terminer. Cliquez sur OK.


2.12 En cas d'utilisation de JDBC Mediator, la référence de ressource de la source de données peut être supprimée à l'importation d'un projet sous forme de fichier WAR/EAR

Lorsque l'accès aux enregistrements relationnels ou aux listes d'enregistrements relationnels se fait par l'intermédiaire du médiateur JDBC (JDBC Mediator), une référence de ressource est créée pour la source de données dans le fichier web.xml du projet.  Si le projet est exporté vers un fichier WAR ou EAR, puis réimporté plus tard, il est possible que la référence de ressource soit supprimée, faisant alors échouer l'accès à la base de données lors de l'exécution.Si la référence de ressource est supprimée à l'importation, vous pouvez corriger le problème de deux manières.La première consiste à utiliser les outils d'accès aux données pour recréer une connexion à la source de données.Cette connexion est également nécessaire si vous souhaitez pouvoir modifier des enregistrements relationnels ou des listes d'enregistrements relationnels sur les pages Web que vous avez créées.L'autre solution est de décompacter le fichier WAR dans un répertoire temporaire, d'ouvrir le fichier web.xml qu'il contient, de copier la référence de ressource et de la coller dans le fichier web.xml du projet importé dans votre espace de travail.Si vous procédez ainsi, vous devez également supprimer la description de la référence de ressource. Sinon, la référence sera à nouveau supprimée lorsque le projet sera généré.Cette description est de la forme suivante : "Génération automatique - Connexion de source de données SDO à XXXX".

2.13 Une erreur peut se produire à l'importation d'un projet Web V512 dont certaines pages contiennent la balise JSF "h:outputLink"

Si vous importez un projet Web dynamique ayant été créé avec WebSphere Studio Application Developer ou WebSphere Studio Site Developer v5.1.2 et incluant un exemple de contrôle de navigation sur le site Web (par exemple, une série d'onglets verticale ou horizontale), l'erreur suivante apparaît dans la vue Erreurs (elle concerne l'exemple de fichier JSP ajouté au projet de l'utilisateur) :

Identificateur non valide : "${siteid.id}".

Cause :

Dans la V512, chaque fois qu'une balise JSF "h:outputLink" était utilisée dans les barres de navigation du site, son attribut "id" était généré et utilisé. Tandis que dans la V7, cet attribut "id" n'est ni généré ni utilisé. Par conséquent, le valideur Faces ne comprend pas ces instructions introduites dans la navigation sur le site Web, mais il doit repérer les ID en double comme des erreurs (pour éviter de perturber l'environnement d'exécution).

Solution :

Supprimez manuellement l'attribut "id" (c'est-à-dire le texte id="${siteid.id}" de la balise JSF "h:outputLink" présente dans les barres de navigation du site, dans le code de chaque page JSP.

Par exemple, si un fichier .jsp du projet V512 comporte la ligne suivante, qui provoque l'erreur décrite plus haut :
<td nowrap valign="middle" style="background-image: url('${sitenav.navtabSelImg[4]}')"><h:outputLink id="${siteid.id}" style="${sitenav.navstyle}" styleClass="${sitenav.navclass}" value="${item.href}"><h:outputText value="${item.label}"></h:outputText></h:outputLink></td>

il doit être modifié comme suit :

<td nowrap valign="middle" style="background-image: url('${sitenav.navtabSelImg[4]}')"><h:outputLink  style="${sitenav.navstyle}" styleClass="${sitenav.navclass}" value="${item.href}"><h:outputText value="${item.label}"></h:outputText></h:outputLink></td>