Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Question bête concernant JSTL (config de l'environement)

7 réponses
Avatar
seb
Bonjour =E0 tous!

Bon, voil=E0, je viens de me mettre =E0 JSTL histoire de doucement =E9vol=
uer=20
vers JSP 2.

Je me suis achet=E9 un bon gros pav=E9 sur le sujet qui m'explique bien=20
comment configurer l'environnement:
- r=E9cup=E9rer jstl sur apache.org (jstl 1.03)
- copier les .jar de la distrib dans le lib de ma webapp
- importer dans les jsp qui les utilisent les tag grace =E0 <@taglib

Et, ho magie, ca marche!!

Seulement voil=E0... je sors d'un peu de Struts. Hors, quand j'ai abord=E9=
=20
struts (avec aussi un gros pav=E9 pour bien faire les choses), on m'avait=
=20
apprits a mettre des .tld et =E0 mettre des choses dans web.xml...

Or, la pour utiliser les taglibs JSTL, rien de tout cela!

Mes *.tld, j'en fait quoi????
Je les ai bien dans la distrib apache, mais je ne les ai pas le moins du =

monde copi=E9 dans ma webapp!
Et mon web.xml, ne suis-je pas cens=E9 y ajouter les taglibs???



Moi y'en a pas comprendre!!

Any explanations????? :)

Merci =E0 tous de m'=E9clairer,

Seb.

7 réponses

Avatar
Nicolas Delsaux
Le 19.09 2003, seb s'est levé(e) et s'est dit "tiens, je
vais écrire aux mecs de fr.comp.lang.java"

Mes *.tld, j'en fait quoi????
Je les ai bien dans la distrib apache, mais je ne les ai pas le moins du
monde copié dans ma webapp!
Et mon web.xml, ne suis-je pas censé y ajouter les taglibs???

Salut, je suis en plein dans une appli Struts toute pourrie (mais c'est

normal, c'est Struts). Et dans cette appli, mes tld sont définis dans le
web.xml de ma web-app, ce qui me paraît somme toute logique, puisque c'est
ce brave Tomcat qui, en parcourant la JSP va transformer les tld en ode
Java exécutable.
Je te livre un morceau de mon web.xml

<web-app>
<taglib>
<taglib-uri>/WEB-INF/tld/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-html.tld</taglib-location>
</taglib>

</web-app>


Moi y'en a pas comprendre!!

Any explanations????? :)

Merci à tous de m'éclairer,

Seb.





--
Nicolas Delsaux
" - Les piles de bouquins ne fondent jamais."
" - A bonne température, si... Fahrenheit 451, pour être précis."

Avatar
Adobex
C'est marqué sur apache.org ce qu'il faut faire. Bon ok c'est générique pour
les custom tags mais ça concerne également JSTL...

http://jakarta.apache.org/taglibs/binarydist.html


Adobex
--
http://clxn.free.fr
ICQ# 85383955
Avatar
Vincent
"Nicolas Delsaux" wrote in message
news:

Salut, je suis en plein dans une appli Struts toute pourrie (mais c'est
normal, c'est Struts).


Je prends la balle au bond pour te demander si tu peux expliquer un peu plus
ton point de vue. J'ai utilisé Struts cet été et j'aimerais (même si la
mission est finie) avoir l'avis de personnes comme toi (qui ne l'apprécie
pas particulièrement).

Merci pour tes infos et retour d'expérience!

--
Vincent

Avatar
jerome moliere
Vincent wrote:

"Nicolas Delsaux" wrote in message
news:


Salut, je suis en plein dans une appli Struts toute pourrie (mais c'est
normal, c'est Struts).



Je prends la balle au bond pour te demander si tu peux expliquer un peu plus
ton point de vue. J'ai utilisé Struts cet été et j'aimerais (même si la
mission est finie) avoir l'avis de personnes comme toi (qui ne l'apprécie
pas particulièrement).
je rebondis donc :)

je connais assez mal struts mais ce que j'en ai vu:
- lourd (classes actions, config XML chiante)
- trop dedie au web pour le rendre utilisable ailleurs (ce qui est une
aberration :))
- trop peu de fonctionnalites evoluees (i18n ok mais qui n'a pas fait sa
brique dediee a cela ? et des validations a deux francs six sous
insuffisantes pour n'importe quel usage)
- chiant a debuguer
- logs de struts a eviter sinon bonjour le boulot (il faudrait leur
donner un cours de log4j aux petits gars de struts)

bref je prefere un petit framework moins ambitieux mais moins lourd et
moins contraignant....

Jerome


Avatar
Nicolas Delsaux
Le 21.09 2003, "Vincent"
s'est levé(e) et s'est dit
"tiens, je vais écrire aux mecs de fr.comp.lang.java"

Je prends la balle au bond pour te demander si tu peux expliquer un
peu plus ton point de vue. J'ai utilisé Struts cet été et j'aimerais
(même si la mission est finie) avoir l'avis de personnes comme toi
(qui ne l'apprécie pas particulièrement).


D'une part, le développement Struts est hyper-lourd : dès que tu veux
insérer, par exemple, une jsp dans ta web-app, c'est l'enfer : il faut la
déclarer dans ton struts-config.xml, la coder, bien configurer la forward
action, tout ça pour une bête JSP, c'est déja pas évident. Mais le pire,
c 'est quand tu souhaites intégrer du vrai code (et donc, passant par une
action Struts) intégrant un formulaire de données un tant soi peu
évolutif. Dans ce cas-là, ton Action (enfin, ta classe héritant de
Action) est déja très peu limpide, mais sa configuration dans Struts est
franchement infernale ! Et je passe le cas (que j'ai déja rencontré, et
qui me semble pourtant assez courant) de l'action que tu souhaites
étendre en la faisant précéder et/ou suivre d'autres actions au sein d'un
froward. Là, il y a de quoi devenir malade.

En fait, l'intérêt supposé de Struts, qui est de séparer le modèle, la
vue et le contrôleur, ne me semble vraiment pas implémenté d'une manière
intelligente. En effet (et tu m'arrêtes si je me trompes) dans Struts, le
modèle est à la charge du développeur Java, le contrôleur est la charge
du développeur Java et du responsable du struts-config, et l'affichage de
ces données devrait être celui d'un web-designer. Au final, c'est le
développeur Java qui fait tout, car dans notre projet, les tags existants
de Struts ne nous servent à rien (et c'est peu de le dire), tout ça parce
qu'au lieu de manipuler simplement des beans clairement définis, nous
manipulons des classes dont nous ne connaissons initiallement que peu de
choses. Et dans ce cas, un peu complexe, qui est pourtant très commun,
Struts ne sert à rien.

Bon, je ne suis peut-être pas très clair, je vais essayer de résumer.

- Struts est adapté aux classes très simples pour lesquelles on dispose
d'une définition complète (donc pas du tout aux classes contenant des
collections d'objets affichés différement les uns des autres).
- Les responsabilités ne sont pas séparables entre le développeur de
l'action, le mainteneur du struts-config, et le codeur de la jsp (ou
plutôt de la taglib).
- Struts est très peu clair dans ses logs. Quand ça foire, il ne faut
pas chercher de son côté ce qui n'a pas marché.
- Si Struts fournit des tags pour des besoins très simples (où donc on
pourrait s'en passer), il ne fournit aucune aide pour des projets
complexes.
- De la même manière les formulaires sont une hérésie, car uniquement
capables de valider des données très simples.
- Enfin, Struts bouffe une bonne part du temps utilisé pour traiter la
rquête client.

Merci pour tes infos et retour d'expérience!



--
Nicolas Delsaux
"Celui qui sait en quoi consiste l'action humaine nourrit ce que sa
conscience saisit au moyen de ce qu'elle ne saisit pas."
Tchouang-Tseu

Avatar
Xavier Tarrago
C'est bien expliqué dans la spécification de jsp disponible sur le site
Sun. Il y a un mécanisme de défaut depuis JSP 1.2. tous les jars dans
WEB-INF:lib sont explorés. si ils contiennent un fichier tld, il est parsé
et si le tag <taglib> contient un tag <uri>, une entrée correspondant à ce
qu'on doit mettre dans web.xml est automatiquementt ajoutée.

JSP.7.3.4 Implicit Map entries from TLDs
The taglib map described in web.xml is extended with new entries extracted
from TLD files in the Web Application. The new entries are computed as
follows:
. Each TLD file is examined. If it has a <uri> element, then a new <taglib>
element
is created, with a <taglib-uri> subelement whose value is that of the <uri>
elemement, and with a <taglib-location> subelement that refers to the TLD
file.
. If the created <taglib> element has a different <taglib-uri> to any in the
taglib
map, it is added.
This mechanism provides an automatic URI to TLD mapping as well as
supporting multiple TLDs within a packaged JAR. Note that this functionality
does not require explicitly naming the location of the TLD file, which would
require a mechanism like the jar: protocol.

"seb" a écrit dans le message de
news:3f6afe96$0$20634$
Bonjour à tous!

Bon, voilà, je viens de me mettre à JSTL histoire de doucement évoluer
vers JSP 2.

Je me suis acheté un bon gros pavé sur le sujet qui m'explique bien
comment configurer l'environnement:
- récupérer jstl sur apache.org (jstl 1.03)
- copier les .jar de la distrib dans le lib de ma webapp
- importer dans les jsp qui les utilisent les tag grace à <@taglib

Et, ho magie, ca marche!!

Seulement voilà... je sors d'un peu de Struts. Hors, quand j'ai abordé
struts (avec aussi un gros pavé pour bien faire les choses), on m'avait
apprits a mettre des .tld et à mettre des choses dans web.xml...

Or, la pour utiliser les taglibs JSTL, rien de tout cela!

Mes *.tld, j'en fait quoi????
Je les ai bien dans la distrib apache, mais je ne les ai pas le moins du
monde copié dans ma webapp!
Et mon web.xml, ne suis-je pas censé y ajouter les taglibs???



Moi y'en a pas comprendre!!

Any explanations????? :)

Merci à tous de m'éclairer,

Seb.
Avatar
cilovie
"jerome moliere" a écrit dans le message de news:
bkkqd0$2qdg$
Vincent wrote:

"Nicolas Delsaux" wrote in message
news:


Salut, je suis en plein dans une appli Struts toute pourrie (mais c'est
normal, c'est Struts).



Je prends la balle au bond pour te demander si tu peux expliquer un peu
plus


ton point de vue. J'ai utilisé Struts cet été et j'aimerais (même si la
mission est finie) avoir l'avis de personnes comme toi (qui ne
l'apprécie


pas particulièrement).
je rebondis donc :)

je connais assez mal struts mais ce que j'en ai vu:
- lourd (classes actions, config XML chiante)
En 1.1 possibilité de découper en plusieurs fichiers

Il faut jeter un petit coup d'oeil sur le plugin tiles
- trop dedie au web pour le rendre utilisable ailleurs (ce qui est une
aberration :))
OK pour cela mais cela est clairement défini par jakarta

JSF fait-il mieux ???
- trop peu de fonctionnalites evoluees (i18n ok mais qui n'a pas fait sa
brique dediee a cela ? et des validations a deux francs six sous
insuffisantes pour n'importe quel usage)
les validations sont entièrement paramétrables avec validator (possibilité

de faire ses propres classes de validation et donc de les réutiliser
- chiant a debuguer
- logs de struts a eviter sinon bonjour le boulot (il faudrait leur
donner un cours de log4j aux petits gars de struts)

struts utlise commons-logging donc cela est entièrement paramétrable.

bref je prefere un petit framework moins ambitieux mais moins lourd et
moins contraignant....

Jerome