commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <>
Subject Re: [Jelly] restrict use of tag libraries
Date Tue, 04 Feb 2003 12:14:30 GMT
There's a few ways this could go. We could add a mechanism so that Tag
libraries could restrict the use of other libraries within themselves. e.g.
a specific TagLibrary could dsiable or enable some/all libraries from being
usable within one/all of its tags.

Another option could be for an individual tag to validate its body inside
the doTag() method. By calling getBody() and then traversing the tree of
TagScripts, a specific Tag could validate that the body does not contain
dynamic expressions or Tags of certain kinds etc.

The latter would be pretty easy to implement in your specific example I
think. We could maybe provide some kind of helper class (TagWalker?) to aid
Tag implementors wishing to traverse over their bodies, validating child

----- Original Message -----
From: "Christian Sell" <>
To: "Jakarta Commons Users List" <>
Sent: Monday, February 03, 2003 9:51 PM
Subject: Re: [Jelly] restrict use of tag libraries

Paul Libbrecht wrote:
> Christian,
> What do you mean by "no taglibs allowed here" ?

I mean that writing

<element1 xmlns="com.yadda.Yadda">

*will* go through, but writing

<element1 xmlns="com.yadda.Yadda" xmlns:y="core">

will *not* go through. In fact, what I really want is to make sure that
there is no scripting from other taglibs between my element1 and
element2 - the namespaces are not really the problem.

> Do you mean no taglib-declaration ?
> Do you mean only the following taglibs' tags ?
> In both cases, this has to do with parsing. So a schema, as James
> mentionned, or some other (e.g. forcing a SAX filter between the parser
> and the jelly document-handler).

I still dont see what role a "schema" would play here

> Remember: jelly scripts are first parsed then executed (possibly several
> times).
> Hope it helps.
> Paul
> Le Lundi, 3 févr 2003, à 19:35 Europe/Berlin, Christian Sell a écrit :
>> <element1 xmlns="com.yadda.Yadda"> <!-- no taglibs allowed here -->
>>     <element2 xmlns:j="jelly:core" xmlns:log="jelly:log">
>>         <j:something/>
>>         .....
>>     </mytags:element2>
>> </mytags:element1>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts

View raw message