Ah, I meant to try to answer this, but it slipped through...

I wasn't sure exactly what you meant by "change the scope on one of the
attributes on our tags."  You can use <c:set> to override an existing
attribute, and thus to change the scope of a scoped variable:

 <c:set var="foo" scope="session" value="${page.foo}"/>

but I'm not sure if that's what you mean.

You can't make the 'scope' attribute dynamic, which might be another thing
you mean.  That is, you can't say scope="${myscope}".  This restriction is
designed primarily to aid tool support and translation-time error
checking.  If you need to decide on the fly what scope to use, you'll need
to use a <c:if> or <c:choose> block.  We didn't consider this case very
common, so the somewhat circuitous solution didn't seem to be a major
issue.  (Hmm, that's the first I've used the word "circuitous" to actually
refer to circuit-like logic.  I wonder if that counts as a pun or not...)

--
Shawn Bayern
Author, "JSP Standard Tag Library"  http://www.jstlbook.com
(coming this spring from Manning Publications)

On Mon, 11 Mar 2002, Steve Bang wrote:

> Can anyone help me on this?  
> 
> Thanks,
> Steve
> 
> > -----Original Message-----
> > From: Steve Bang [mailto:[EMAIL PROTECTED]]
> > Sent: Friday, March 08, 2002 11:03 AM
> > To: 'Tag Libraries Users List'
> > Subject: Using <set> to change scope
> > 
> > 
> > We have a custom tag library that treats all of our tags with 
> > a session scope (by design).  Is it possible to use JSTL's 
> > <c:set> tag to change the scope on one of the attributes on 
> > our tags?  Users are requesting the ability to dynamically 
> > change an attribute value on our tags when a page is refreshed, 
> > but so far this is not possible within the tags themselves --
> > they are only interpreted the first time a page loads.  If 
> > so, do we have to modify our tag library to support this?
> > 
> > Steve
> 
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
> 


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to