Pokud jsem to spravne pochopil, nechcete pristup k EL ze skriptletu, ale z vlastnich JSP tagu.
Rozdil mezi JSP 1.2 a 2.0 je v tom, ze EL vyrazy zpracovava
v JSP 2.0 primo JSP engine, kdezto v JSP 1.2 si je musi zpracovavat
samotne tagy. Jinak receno, EL je v 1.2 implementovany v JSTL
a v 2.0 je implementovany v JSP. V 1.2 dostane tag
*retezec* "${novinka.href}" a musi si ho sam zpracovat,
v 2.0 uz dostane od JSP engine *objekt*, ktery je vysledkem toho
vyrazu.
Cili pokud chcete pouzivat EL jazyk v JSP 1.2, musite to delat
stejne jako to delaji JSTL tagy. Ty maji na zpracovani EL svoji
knihovnu, kterou asi budete moci pouzit take. Pokud vim, existuje
stejne jenom jedna implementace JSTL 1.0, tak se ji mrknete do zdrojaku,
jak to dela.
Makub
Peter Stibrany wrote:
> Ahojte,
>
> na jednom z nasich projektov pouzivame starsie verzie JSP a JSTL (JSP
> 1.2, JSTL 1.0). V tejto verzii JSP este nebol Expression Language a
> vyrazy typu ${...} sa dali pouzivat len v JSTL tagoch. Chcel by som
> vsak nejak jednoducho pouzivat EL vyrazy aj v mojich skriptletoch a
> hlavne v <%= ... %>.
>
> Priklad:
>
> V JSP 2.0/JSTL 1.1 mozem urobit toto:
>
> <c:forEach var="novinka" items="${zoznamNoviniek}">
> <li><custom:newsLink
> href="${novinka.href}">${novinka.title}</custom:newsLink></li>
> </c:forEach>
>
> V JSP 1.2/JSTL 1.0 musim urobit:
>
> <c:forEach var="novinka" items="${zoznamNoviniek}">
> <li>
> <custom:newsLink href="<%= ((Novinka)
> pageContext.findAttribute("novinka")).getHref() %>">
> <c:out value="${novinka.title}" />
> </custom:newsLink>
> </li>
> </c:forEach>
>
> Prekaza mi tam hlavne to <%= ((Novinka)
> pageContext.findAttribute("novinka")).getHref() %>. Neda sa v JSP
> 1.2/JSTL 1.0 nejak jednoduchsie pracovat so scoped premennymi
> (problematicke su hlavne atributy v custom tagoch)? Predstavoval by
> som si nieco ako:
>
> <custom:newsLink href='<%= evaluate("novinka.href") %>' />
>
> Nie je nieco take hotove?
>
> S pozdravom,
> -Peter Stibrany
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Science email: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--------------------------------------------------------------
smime.p7s
Description: S/MIME Cryptographic Signature
