Salut, je me demandais quel était l'utilité des taglibs.
Du moins les taglibs simples genre pas de paramètres ou quelque attributs.
En effet c'est joli dans le code, mais en fait on peut les remplacer
par des méthodes static dans une classe même si c'est moins beau,
c'est quand même bien plus rapide a écrire qu'une taglib + tld +
déclaration dans web.xml non ?
Un autre interet, c'est de separer le travail : les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Excuse mon ignorance, mais comment tu fais ca ? Je connais bien les templates en php et la séparation de code de cette manière. Je vois bien comment je pourrais utiliser Velocity pour obtenir ca, par contre les taglibs j'ai plus de mal. Si par exemple tu veux afficher un tableau avec une liste de données trouvées dans une base de données tu ferais une taglib qui génère tout un tableau html ? Je sens que j'ai manqué un truc ... Ton client http va solliciter une servlet, qui va chercher les objets
dans la base et place le resultat de cette requete dans une liste d'objets metier. Si on utilise un framework comme struts, il existe des taglibs permettant d'iterer sur une collection, et d'afficher les proprietes des objets. Genre : <table> <tr><th>Nom</th><th>Valeur</th> <logic:iterate name="listeObjets" id="objetMetier" scope="request"> <tr> <td><bean:write name="objetMetier" value="nom" scope="page"/></td> <td><bean:write name="objetMetier" value="valeur" scope="page"/></td> </tr> </logic:iterate> </table>
Kupee wrote:
Fabien Bergeret wrote:
Un autre interet, c'est de separer le travail : les experts
HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Excuse mon ignorance, mais comment tu fais ca ? Je connais bien les
templates en php et la séparation de code de cette manière. Je vois bien
comment je pourrais utiliser Velocity pour obtenir ca, par contre les
taglibs j'ai plus de mal.
Si par exemple tu veux afficher un tableau avec une liste de données
trouvées dans une base de données tu ferais une taglib qui génère tout
un tableau html ? Je sens que j'ai manqué un truc ...
Ton client http va solliciter une servlet, qui va chercher les objets
dans la base et place le resultat de cette requete dans une liste
d'objets metier.
Si on utilise un framework comme struts, il existe des taglibs
permettant d'iterer sur une collection, et d'afficher les proprietes des
objets.
Genre :
<table>
<tr><th>Nom</th><th>Valeur</th>
<logic:iterate name="listeObjets" id="objetMetier" scope="request">
<tr>
<td><bean:write name="objetMetier" value="nom" scope="page"/></td>
<td><bean:write name="objetMetier" value="valeur" scope="page"/></td>
</tr>
</logic:iterate>
</table>
Un autre interet, c'est de separer le travail : les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Excuse mon ignorance, mais comment tu fais ca ? Je connais bien les templates en php et la séparation de code de cette manière. Je vois bien comment je pourrais utiliser Velocity pour obtenir ca, par contre les taglibs j'ai plus de mal. Si par exemple tu veux afficher un tableau avec une liste de données trouvées dans une base de données tu ferais une taglib qui génère tout un tableau html ? Je sens que j'ai manqué un truc ... Ton client http va solliciter une servlet, qui va chercher les objets
dans la base et place le resultat de cette requete dans une liste d'objets metier. Si on utilise un framework comme struts, il existe des taglibs permettant d'iterer sur une collection, et d'afficher les proprietes des objets. Genre : <table> <tr><th>Nom</th><th>Valeur</th> <logic:iterate name="listeObjets" id="objetMetier" scope="request"> <tr> <td><bean:write name="objetMetier" value="nom" scope="page"/></td> <td><bean:write name="objetMetier" value="valeur" scope="page"/></td> </tr> </logic:iterate> </table>
Fabien Bergeret
Christophe Tela wrote:
Un autre interet, c'est de separer le travail : les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Ouais, je l'ai entendue pas mal de fois celle là, et elle me fait encore rire.
Sauf que pour faire des JSP, il faut quand même être assez avancé en Java. D'une part parce qu'il faut savoir quels tags utiliser, et d'autre part parce qu'il faut savoir ce qu'ils génèrent afin de pouvoir ajuster les CSS / le javascript en conséquence.
Conclusion : sur tout les projets que je vois autour de moi, il n'y a pas de distinction, tout le monde touche à tout. Avec plus ou moins de réussite d'ailleurs...
Je pense que c'est le gros échec de J2EE ; la théorie est splendide, la réalité est un vrai bordel qui réclame des compétences très vastes. Dans les vrais projet sur lesquel j'ai travaille, les "debutants"
bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses.
Christophe Tela wrote:
Un autre interet, c'est de separer le travail : les experts
HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Ouais, je l'ai entendue pas mal de fois celle là, et elle me fait encore
rire.
Sauf que pour faire des JSP, il faut quand même être assez avancé en Java.
D'une part parce qu'il faut savoir quels tags utiliser, et d'autre part
parce qu'il faut savoir ce qu'ils génèrent afin de pouvoir ajuster les
CSS / le javascript en conséquence.
Conclusion : sur tout les projets que je vois autour de moi, il n'y a pas de
distinction, tout le monde touche à tout. Avec plus ou moins de réussite
d'ailleurs...
Je pense que c'est le gros échec de J2EE ; la théorie est splendide, la
réalité est un vrai bordel qui réclame des compétences très vastes.
Dans les vrais projet sur lesquel j'ai travaille, les "debutants"
bossaient sur les couches hautes (jsp, classes action struts) et les
experimentes sur les couches basses.
Un autre interet, c'est de separer le travail : les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Ouais, je l'ai entendue pas mal de fois celle là, et elle me fait encore rire.
Sauf que pour faire des JSP, il faut quand même être assez avancé en Java. D'une part parce qu'il faut savoir quels tags utiliser, et d'autre part parce qu'il faut savoir ce qu'ils génèrent afin de pouvoir ajuster les CSS / le javascript en conséquence.
Conclusion : sur tout les projets que je vois autour de moi, il n'y a pas de distinction, tout le monde touche à tout. Avec plus ou moins de réussite d'ailleurs...
Je pense que c'est le gros échec de J2EE ; la théorie est splendide, la réalité est un vrai bordel qui réclame des compétences très vastes. Dans les vrais projet sur lesquel j'ai travaille, les "debutants"
bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses.
Kupee
Fabien Bergeret wrote:
Ton client http va solliciter une servlet, qui va chercher les objets dans la base et place le resultat de cette requete dans une liste d'objets metier. Si on utilise un framework comme struts, il existe des taglibs permettant d'iterer sur une collection, et d'afficher les proprietes des objets. Genre : <table> <tr><th>Nom</th><th>Valeur</th> <logic:iterate name="listeObjets" id="objetMetier" scope="request"> <tr> <td><bean:write name="objetMetier" value="nom" scope="page"/></td> <td><bean:write name="objetMetier" value="valeur" scope="page"/></td> </tr> </logic:iterate> </table>
Ah voilà c'est ce qui me manquait en fait. Me reste plus qu'a chercher comment se font des taglibs de ce genre. Finalement ca ressemble comme 2 gouttes d'eau a ce que font les moteurs de templates en php.
Fabien Bergeret wrote:
Ton client http va solliciter une servlet, qui va chercher les objets
dans la base et place le resultat de cette requete dans une liste
d'objets metier.
Si on utilise un framework comme struts, il existe des taglibs
permettant d'iterer sur une collection, et d'afficher les proprietes des
objets.
Genre :
<table>
<tr><th>Nom</th><th>Valeur</th>
<logic:iterate name="listeObjets" id="objetMetier" scope="request">
<tr>
<td><bean:write name="objetMetier" value="nom" scope="page"/></td>
<td><bean:write name="objetMetier" value="valeur" scope="page"/></td>
</tr>
</logic:iterate>
</table>
Ah voilà c'est ce qui me manquait en fait. Me reste plus qu'a chercher
comment se font des taglibs de ce genre. Finalement ca ressemble comme 2
gouttes d'eau a ce que font les moteurs de templates en php.
Ton client http va solliciter une servlet, qui va chercher les objets dans la base et place le resultat de cette requete dans une liste d'objets metier. Si on utilise un framework comme struts, il existe des taglibs permettant d'iterer sur une collection, et d'afficher les proprietes des objets. Genre : <table> <tr><th>Nom</th><th>Valeur</th> <logic:iterate name="listeObjets" id="objetMetier" scope="request"> <tr> <td><bean:write name="objetMetier" value="nom" scope="page"/></td> <td><bean:write name="objetMetier" value="valeur" scope="page"/></td> </tr> </logic:iterate> </table>
Ah voilà c'est ce qui me manquait en fait. Me reste plus qu'a chercher comment se font des taglibs de ce genre. Finalement ca ressemble comme 2 gouttes d'eau a ce que font les moteurs de templates en php.
Lionel
Fabien Bergeret wrote:
les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Tu connais un webdesigner capable d'écrire ça ? Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes. Qui est censé faire ça: l'expert java ou le webdesigner ? En théorie, c'est le boulot du webdesigner...
Fabien Bergeret wrote:
les experts
HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Tu connais un webdesigner capable d'écrire ça ?
Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est
rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes.
Qui est censé faire ça: l'expert java ou le webdesigner ?
En théorie, c'est le boulot du webdesigner...
Tu connais un webdesigner capable d'écrire ça ? Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes. Qui est censé faire ça: l'expert java ou le webdesigner ? En théorie, c'est le boulot du webdesigner...
Fabien Bergeret
Lionel wrote:
Fabien Bergeret wrote:
les experts HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Tu connais un webdesigner capable d'écrire ça ? Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes. Qui est censé faire ça: l'expert java ou le webdesigner ? En théorie, c'est le boulot du webdesigner...
De retour de vacances, d'ou une reponse tardive.
Voile comment ca c'est passe pour nous : le webdesigner a demande "comment que je fais pour alterner les couleurs", nous, on lui a dit : tiens, on te fait une balise <util:row>, et zioup, c'est dans la poche. C'est donc le webdesigner qui demande, et qui utilise, et les informaticiens qui codent ...
Lionel wrote:
Fabien Bergeret wrote:
les experts
HTML/WebDesigner font les JSP, et les experts Java font les taglibs
Tu connais un webdesigner capable d'écrire ça ?
Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est
rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes.
Qui est censé faire ça: l'expert java ou le webdesigner ?
En théorie, c'est le boulot du webdesigner...
De retour de vacances, d'ou une reponse tardive.
Voile comment ca c'est passe pour nous : le webdesigner a demande
"comment que je fais pour alterner les couleurs", nous, on lui a dit :
tiens, on te fait une balise <util:row>, et zioup, c'est dans la poche.
C'est donc le webdesigner qui demande, et qui utilise, et les
informaticiens qui codent ...
Tu connais un webdesigner capable d'écrire ça ? Déjà un webdesigner capable de modifier l'html sans casser les taglib, c'est rare :)
Exemple ultra classique: il veut alterner les couleurs des lignes. Qui est censé faire ça: l'expert java ou le webdesigner ? En théorie, c'est le boulot du webdesigner...
De retour de vacances, d'ou une reponse tardive.
Voile comment ca c'est passe pour nous : le webdesigner a demande "comment que je fais pour alterner les couleurs", nous, on lui a dit : tiens, on te fait une balise <util:row>, et zioup, c'est dans la poche. C'est donc le webdesigner qui demande, et qui utilise, et les informaticiens qui codent ...
Christophe Tela
Fabien Bergeret wrote:
Dans les vrais projet sur lesquel j'ai travaille, les "debutants" bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses. C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché,
Fabien Bergeret wrote:
Dans les vrais projet sur lesquel j'ai travaille, les "debutants"
bossaient sur les couches hautes (jsp, classes action struts) et les
experimentes sur les couches basses.
C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché,
Dans les vrais projet sur lesquel j'ai travaille, les "debutants" bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses. C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché,
Christophe Tela
Fabien Bergeret wrote:
Dans les vrais projet sur lesquel j'ai travaille, les "debutants" bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses. C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché, on a une approche très similaire : les débutants s'occupent des modules périphériques (ie. non sensibles) puis progressivement se voient confier des tâches de plus en plus complexe. Mais jamais, au grand jamais, je n'ai vu une personne ne faire QUE du HTML/CSS dans une application J2EE.
Cela dit, je tiens à modérer mes propos : j'ai déjà vu une équipe spécialisée dans la conception d'une charte graphique, avec définition des couleurs, images, etc... Charge aux programmeurs ensuite d'intégrer tout ça les JSP.
Mais c'est un travail en amont, réalisé une fois pour toutes (pour ce que ça veut dire en informatique...) et qui est global ; cela impacte tous les projets.
Fabien Bergeret wrote:
Dans les vrais projet sur lesquel j'ai travaille, les "debutants"
bossaient sur les couches hautes (jsp, classes action struts) et les
experimentes sur les couches basses.
C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché, on a une approche très
similaire : les débutants s'occupent des modules périphériques (ie. non
sensibles) puis progressivement se voient confier des tâches de plus en
plus complexe. Mais jamais, au grand jamais, je n'ai vu une personne ne
faire QUE du HTML/CSS dans une application J2EE.
Cela dit, je tiens à modérer mes propos : j'ai déjà vu une équipe
spécialisée dans la conception d'une charte graphique, avec définition des
couleurs, images, etc... Charge aux programmeurs ensuite d'intégrer tout ça
les JSP.
Mais c'est un travail en amont, réalisé une fois pour toutes (pour ce que ça
veut dire en informatique...) et qui est global ; cela impacte tous les
projets.
Dans les vrais projet sur lesquel j'ai travaille, les "debutants" bossaient sur les couches hautes (jsp, classes action struts) et les experimentes sur les couches basses. C'est clairement moins crétin que la séparation programmeur/info-graphiste.
Sur à peu près tous les projets auxquels j'ai touché, on a une approche très similaire : les débutants s'occupent des modules périphériques (ie. non sensibles) puis progressivement se voient confier des tâches de plus en plus complexe. Mais jamais, au grand jamais, je n'ai vu une personne ne faire QUE du HTML/CSS dans une application J2EE.
Cela dit, je tiens à modérer mes propos : j'ai déjà vu une équipe spécialisée dans la conception d'une charte graphique, avec définition des couleurs, images, etc... Charge aux programmeurs ensuite d'intégrer tout ça les JSP.
Mais c'est un travail en amont, réalisé une fois pour toutes (pour ce que ça veut dire en informatique...) et qui est global ; cela impacte tous les projets.