IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Taglibs Java Discussion :

JSTL ou CODE JAVA?


Sujet :

Taglibs Java

  1. #1
    Membre actif
    Inscrit en
    Février 2008
    Messages
    457
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 457
    Points : 215
    Points
    215
    Par défaut JSTL ou CODE JAVA?
    Bonjour à tous,

    J'ai développé pas mal utilisant des jsp intégrant du JSTL et je me plonge maintenant dans une application web qui n'utilise que du java dans ses JSP.

    Je me demandais quel était l'avantage de l'utilisation de JSTL (de taglibs) par rapport à une JSP avec du code JAVA si ce n'est bien entendu la facilité de compréhension pour celui qui ne connait que HTML.

    Y a-t-il d'autres avantages qui se cachent derrière ?


    J'espère avoir vos réactions.

    Merci d'avance

  2. #2
    Membre averti
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Points : 407
    Points
    407
    Billets dans le blog
    1
    Par défaut
    Je déterre ce vieux post je me pose la même question.
    Moi c'est l'inverse j'ai l'habitude d'utiliser des scriptlets et la j'essaie le JSTL j'ai l'impression que ça ne me facilite pas plus la tache, en plus j'imagine que l'utilisation de JSTL dois consommer plus de ressources.
    Je me demande si ça vaut vraiment le coup de continuer d'autant que je suis toujours seul sur mes projets.

  3. #3
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Disons qu'avec les scriptlets Java, tu n'es pas limité, donc tu peux tout faire dans ta JSP et ça peut vite devenir sale.
    L'intérêt d'une bibliothèque de tags, que ce soit JSTL ou autre, est de bien séparer la partie Java de la partie interface.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Au début, c'est un peu l'habitude précédente qui va être un frein.
    Si tu viens des scriptlet, le JSTL semble compliquée, si tu viens de la JSTL, le code scriptlet paraît sale...

    Pour ma part, je trouve la jstl plutôt sympa à l'usage surtout couplé à struts-layout, mais je développe toujours mes propres tag quand ça devient compliqué. Je préfère la maintenabilité du code jsp...

    Il y a des choses que je trouve pas très cool comme l'absence d'un <c:elseif> qui oblige +/- à passer par <c:choose> mais à part ça, il n'y a pas grand chose à redire...

  5. #5
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 738
    Points
    3 738
    Par défaut
    quitte a faire du jstl, autant passer sur du vrai templating je trouve

    freemarker/closure template etc.

    la syntaxe des jstl est vraiment insupportable.

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par lunatix Voir le message
    quitte a faire du jstl, autant passer sur du vrai templating je trouve

    freemarker/closure template etc.

    la syntaxe des jstl est vraiment insupportable.
    Je ne connais pas freemarker mais un rapide coup d'oeil sur le net me laisse penser que tu n'es pas des plus impartial sur ce coup...
    Trouver la syntaxe jstl insuportable quand on voit le syntaxe freemarker... c'est l'hôpital qui se moque de la charité !
    Entre <c:if> et <#if>, c'est clair, ça a l'air largement mieux

  7. #7
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 738
    Points
    3 738
    Par défaut
    pas faux pour freemarker même si le <c:if test="${truc== machin}> est franchement imbattable (surtout si tu veux faire un else)

    en fait, je suis a la recherche d'un systeme de templating vraiment bien foutu.

    j'ai pas mal testé mvel templating par exemple.
    je vais tenter google closure template

    l'univers java est vraiment pauvre dans ce domaine.

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Je ne sais pas quel type d'application nécessite un gros templating, pour une application "web", je trouve Tiles + jstl + taglib perso largement suffisant.

    Je pense que html est en partie responsable de certains manques, mais pas seulement.
    Pour certains traitements, il faudrait passer par un filtre pour retailler le résultat (standard) afin de lui appliquer certaines restrictions (de droit par exemple) ou des enrichissements...
    Couche1 -> couche2 -> couche3 -> ... ça devient un vrai jeu de piste

  9. #9
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 738
    Points
    3 738
    Par défaut
    je bosse sur du portail web (grand public ) les jsp/jstl sont vraiment un horreur dans ce context.

    un bon langage de templating devrait a mon sens etre :

    typesafe (combien de fois on detecte une jsp qui plante seulement en production)
    avoir un null safe operateur correct
    pouvoir faire un if else if sans être au bord du suicide
    Ne pas pouvoir acceder a des variables autres que celles explicitements fournies

  10. #10
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par lunatix Voir le message
    typesafe (combien de fois on detecte une jsp qui plante seulement en production)
    c'est bien vrai... fait ch... ça
    Citation Envoyé par lunatix Voir le message
    pouvoir faire un if else if sans être au bord du suicide
    on sent le vécu
    Citation Envoyé par lunatix Voir le message
    Ne pas pouvoir acceder a des variables autres que celles explicitements fournies
    Là, ça risque d'être compliqué... comment prévois-tu de préciser cette liste ?

  11. #11
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 738
    Points
    3 738
    Par défaut
    alors : pour moi dans un template : on doit accéder au Model passé, ainsi que éventuellement un nombre fixé de variables décidés au départ (de la conf, par exemple).

    souvent ca ressemble a du code genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String html = Renderer.execute(template, model);
    sinon j'ai pas mal fouillé :
    Mustache
    StringTemplate
    mvel templating
    http://code.google.com/p/cambridge
    google closure template


    pas encore trouvé le templating de mes réves

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Ce qui me gêne dans ce genre de processus, c'est de devoir traiter une page dans son ensemble.
    Ce que j'aimerais, c'est plutôt de traiter des fragments synchronisés entre eux, là, ce serait top...

  13. #13
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 738
    Points
    3 738
    Par défaut
    la j'avoue : j'ai rien compris a ton histoire de fragments synchronisés

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Comment, tu ne lis pas dans mes pensées ??

    Pour faire simple, j'aimerais pouvoir composer ma page finale de plusieurs fragments (à la manière des <iframe>) tout en étant vu comme une seule et même page côté client (browser).

    De ce que j'ai vu, la notion de composants JSF2 permet de s'en approcher mais je n'ai pas eu le temps de faire le saut... overbooké...

Discussions similaires

  1. [JSTL] conversion code java en tags jstl
    Par dev_newbie dans le forum Taglibs
    Réponses: 2
    Dernier message: 25/03/2010, 17h47
  2. [andromda]Infos sur andromda, générateur de code JAVA
    Par ugos dans le forum EDI et Outils pour Java
    Réponses: 5
    Dernier message: 08/09/2009, 16h30
  3. traduction automatique d'un code JAVA en code HTML
    Par Lyonnais dans le forum EDI et Outils pour Java
    Réponses: 2
    Dernier message: 31/05/2005, 14h02
  4. Recherche de Logiciel d'audit de code java
    Par K-ro dans le forum Qualimétrie
    Réponses: 4
    Dernier message: 12/10/2004, 18h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo