Re: <c:set> and runtime expressions

Kris Schneider <[email protected]>
Newsgroups gmane.comp.jakarta.taglibs.user
Message-ID <[email protected]>
If you need to run JSTL 1.0 and want to use JSP expressions as attribute 
values, you need to use the "RT-based" versions. For JSTL, there are 
basically two distinct versions of each taglib:

<%@ taglib prefix="c"    uri="http://java.sun.com/jstl/core" %>
<%@ taglib prefix="c_rt" uri="http://java.sun.com/jstl/core_rt" %>

If you look at the TLD files for JSTL 1.0, you'll see:

c.tld:
------
   <tag>
     <name>set</name>
...
     <attribute>
         <name>value</name>
         <required>false</required>
         <rtexprvalue>false</rtexprvalue>
     </attribute>
...
   </tag>

c-rt.tld:
---------
  <tag>
     <name>set</name>
...
     <attribute>
         <name>value</name>
         <required>false</required>
         <rtexprvalue>true</rtexprvalue>
     </attribute>
...
   </tag>

JSTL 1.0 has to handle EL evaluation on its own (it's integrated into JSP 
2.0 so JSTL 1.1 doesn't need to do the evaluation), so you're forced to 
make a choice between different taglibs that use EL expressions or JSP 
expressions.

Tarek Nabil wrote:
> Hi everyone,
> 
>  
> 
> I was using JSTL 1.1 in my application, and then unfortunately, I had to
> downgrade to 1.0. Now, my IDE is complaining about this line in my JSP
> 
>  
> 
>     <c:set var="config" value="<%= Config.getInstance() %>"/>
> 
>  
> 
> It says "Attribute value does not accept runtime expressions.
> 
>  
> 
> This used to work perfectly when I was using 1.1. I tried to look at the
> changes between 1.1 and 1.0 but I can not see anything related to this
> issue. Is this really a difference between 1.0 and 1.1 or am I doing
> something wrong?
> 
>  
> 
> Thanks in advance for your help.

-- 
Kris Schneider <mailto:[email protected]>
D.O.Tech       <http://www.dotech.com/>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.