JSP / Taglibs : vérificateur de syntaxe emmerdant - Java - Programmation
Marsh Posté le 06-11-2005 à 16:08:27
ta premiere erreur est un classique de la validation xml/xhtml, par contre, j'ai jamais vu un "compilateur" jsp me sortir ça. tu utilises quoi ?
pour la seconde, je pencherais pour une betise dans les tags de ton cms, mais bon ...
essaie de virer les <param> un à un pour voir ..
Marsh Posté le 06-11-2005 à 16:22:33
J'utilise Tomcat 5 comme moteur de servlets, mais je crois pas que ce soit lui qui râle. Attend, je vais chercher dans le log...
Ha ben si, c'est Tomcat (Jasper ça fait partie de Tomcat nan ?). Voila le message exact (qu'on soit d'accord, ça c'est dans la version ou j'ai & au lieu de & :
|
Sinon pour l'autre point : sans les <param>, je sais que ça passe. Le problème c'est que j'en ai besoin moi, de ces <param>. J'ai essayé de bidouiller avec des <jsp:text>, mais c'est immondément crade et le compilateur m'engueule aussi, pour cause de xml non valide (balises qui se chevauchent).
Marsh Posté le 06-11-2005 à 16:24:31
1/ bizarre, j'ai jamais eu ça, mais c'est ptet parce que tu utilises la syntaxe xml pure (<jsp:root> )
2/ avec un seul des deux ça passe ou pas ?
Marsh Posté le 06-11-2005 à 16:25:20
(c'est pas plus crade que le reste de la page qui doit sortir 4 lignes d'html à tout casser, si je ne m'abuse. ..)
Marsh Posté le 06-11-2005 à 16:32:07
1/ Peut être
2/ Avec un seul des deux ça passe pas mieux, non
(Et elle est pas crade cette page. Sortie du contexte, ça peut parraitre un peu lourd, mais c'est justement à cause d'une architecture rigoureuse suggérée par le CMS)
Marsh Posté le 06-11-2005 à 16:46:19
mouais c'est lourd, .|
i supporte rien d'autre que jsp comme techno pour les vues, ton cms ?
Marsh Posté le 06-11-2005 à 17:43:30
Ben, en techno Java on peut utiliser quoi d'autre que des JSP pour du rendu HTML ? On peut aussi faire des servlets évidement, mais niveau lourdeur on va atteindre des sommets.
Marsh Posté le 06-11-2005 à 17:50:10
houlà, faut sortir un peu, de temps en temps, hein, monsieur, sinon on prend la poussière.
velocity ça te dit rien ?
freemarker encore moins, j'imagine ... ?
Marsh Posté le 06-11-2005 à 18:06:00
J'ai pas fait de dev depuis un bout de temps. Besoin de dépoussièrer justement.
Je risque de me faire incendier mais : Velocity c'est pas un vieux machin, du genre "ancètre des JSP" ?
Freemarker, connais pas.
Cela dit, je doute que Magnolia supporte ces technos. JSP c'est pas si mal quand même !?
Marsh Posté le 06-11-2005 à 18:11:51
ReplyMarsh Posté le 06-11-2005 à 19:24:47
y'a des milliards d'articles qui l'ont fait depuis des années et bien mieux que moi
Marsh Posté le 06-11-2005 à 20:10:46
Cela dit, n'ayant pas toujours trouvé de solution, le problème reste ouvert !
Marsh Posté le 06-11-2005 à 20:42:03
http://issues.apache.org/bugzilla/ [...] i?id=37029 ?
Marsh Posté le 06-11-2005 à 20:57:05
génial, merci. Je vais essayer ça dès que je pourrais.
Et pour info : apparement l'équipe de Magnolia semble vouloir rester autant que possible dans le standard J2EE. C'est la raison pour laquelle ils en restent aux JSP. Cela dit, l'implémentation des JSF est planifiée.
EDIT : si tu n'est pas d'accord avec ce point de vue, merci de ne pas m'engueuler (le validateur de taglibs l'a déja assez fait !). Je ne fait que retranscrire ce que j'ai cru comprendre.
Marsh Posté le 07-11-2005 à 08:40:16
génial, en ajoutant le namespace XHTML au document, ça passe !
Merci moins moins
Marsh Posté le 07-11-2005 à 12:31:01
Reply
Marsh Posté le 06-11-2005 à 15:55:59
Salut à tous. bon, voila mon soucis du moment.
J'ai la page JSP suivante :
<jsp:root version="1.2" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:cms="urn:jsptld:cms-taglib"
xmlns:cmsu="urn:jsptld:cms-util-taglib" xmlns:c="urn:jsptld:http://java.sun.com/jsp/jstl/core">
<cms:ifNotEmpty nodeDataName="image">
<cms:setNode var="imagedata" />
<c:set var="imageurl">
<cms:out nodeDataName="image" />
</c:set>
<img src="${pageContext.request.contextPath}${imageurl}" class="contentImage_${imagedata.imageFloat}" alt="${imagedata.imageAlt}" />
<br />
</cms:ifNotEmpty>
<cms:ifNotEmpty nodeDataName="description">
<span><cms:out nodeDataName="description" /></span>
</cms:ifNotEmpty>
<cms:ifNotEmpty nodeDataName="sound">
<cms:setNode var="sounddata" />
<c:set var="soundurl">
<cms:out nodeDataName="sound" />
</c:set>
<object type="application/x-shockwave-flash" data="${pageContext.request.contextPath}/docroot/marc/flash/dewplayer.swf?son=${pageContext.request.contextPath}${soundurl}&autoplay=${sounddata.autoplay}" width="200" height="20" bgcolor="${sounddata.bgcolor}">
<param name="movie" value="${pageContext.request.contextPath}/docroot/marc/flash/dewplayer.swf?son=${pageContext.request.contextPath}${soundurl}&autoplay=${sounddata.autoplay}" />
<param name="bgcolor" value="${sounddata.bgcolor}"/>
</object>
</cms:ifNotEmpty>
</jsp:root>
- Première chose (pas grand chose) : dans l'url, valeure de l'attribut "data" de la balise "object", je suis obligé de remplacer & par & ? C'est un peu lourd (quand je mettais simplement &, le compilateur JSP me disait qu'il manquait un ; à la fin de l'entité !
- Secondo (+ important) : en l'état, cette JSP ne passe pas le compilateur. Je me prend dans la gueule (ou plutôt dans le log), le message suivant :
ERROR info.magnolia.cms.taglibs.Include 06.11.2005 03:30:15 -- <h3>Message d'erreurs de validation provenant du TagLibraryValidator pour c</h3><p>15: Invalid use of "param" tag outside legitimate parent tag</p><p>16: Invalid use of "param" tag outside legitimate parent tag</p>
Selon vous, c'est un bug du TagLibraryValidator, ou une erreur de ma part ?
Dans les 2 cas, une solution serait vraiment la bienvenue.
D'avance, merci.
Message édité par El_gringo le 06-11-2005 à 15:56:30