Cependant, l'utilisation d'un éditeur visuel est souvent profitable pour le développeur mais dans des cas bien précis.
Pour vous permettre de vous forger une idée sur la nécessité d'un éditeur visuel, je présente ici les avantages et inconvénients de l'utilisation d'un tel outil.
Les avantages d'un développement manuel
Si on n'utilise pas d'éditeur visuel, on ajoute ses composants JSF à la page JSP d'une manière manuelle. Au fur et à mesure, le développeur maîtrisera les composants ainsi que leurs propriétés, il y aura donc un effort d'apprentissage supplémentaire mais le développeur appréhendera rapidement cette technologie.
Voici par exemple une page de login simple, elle est suivit du code source qui a permit de donner un tel rendu :
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<f:view>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>login</title>
<link type="text/css" rel="stylesheet" href="resources/main.css"/>
</head>
<body>
<h1><h:outputText value="Please log-in"/></h1>
<h:form>
<h:panelGrid columns="2">
<h:outputLabel value="Login"/>
<h:inputText/>
<h:outputLabel value="Password"/>
<h:inputSecret/>
<h:commandButton value="Login" type="submit" action="#{loginBean.login}"/>
</h:panelGrid>
</h:form>
</body>
</html>
</f:view>
On remarquera dans le source que le code est accessible, et il ressemble fortement au langage HTML, il est doc tout à fait possible de l'écrire à la main.
En résumé, ne pas utiliser un éditeur graphique, ne constitue en aucun cas un handicap, au contraire le développeur aura un contrôle total sur le contenu de sa page, une page JSP garantit sans fioritures (apportées généralement par un éditeur visuelle).
Le seul inconvénient que je connaisse est que il faut déployer l'application Web pour voir le résultat de la page.
Les avantages d'utiliser un éditeur visuel
L'avantage est évident, on utilise la souris et on dépose ses composants sur la page, une parti du code est écrite automatiquement, on aura même un rendu de la page de façon instantanée.
Les éditeurs visuelles permettent aussi de visualiser le flux de navigation de votre application, il permettent d'avoir une vue globale sur l'application.
L'inconvénient est que parfois l'utilisateur passe beaucoup de temps à cliquer de la souris pour des actions qui ne requièrent pas autant d'effort lorsque cela se fait à la main, l'éditeur visuel utilisé d'une manière mal à propos devient alors contre productif.
En résumé
Si vous voulez apprendre rapidement JSF, évitez un outil WYSIWYG, préférer plutôt la façon manuelle.
Une fois que vous aviez appréhendé la technologie, vous pourriez dès lors utiliser d'une manières conjointe les deux méthodes. Vous auriez généralement à :
- Créer la page d'une manière visuelle.
- Revoir le source, éventuellement le nettoyer.
- Et enfin raffiner à la main le source des propriétés manquantes.
Quid des outils JSF ?
Le nombre d'outils JSF n'est pas très élevé vu la jeunesse de la technologie, dans les gratuits on peut citer Sun Java Creator 2, on trouve aussi des produits commerciaux tels que Exadel Studio et BEA Workshop, le monde libre s'est doté aussi d'un plugin Eclipse prometteur dénommé Amateras Faces IDE.