Yesterday while working on one of the old web application that was created in J2EE / JSP which is using JSTL for painting pages, I encountered a wired issue. As I was using JSTL in my JSPs, I had include required jars like standard.jar and jstl.jar with proper version in classpath of my project. Still I was getting this error whenever I tried running JSP:
According to TLD or attribute directive in tag file, attribute value does not accept any expressions.After digging into the issue and searching through web, finally I got a workaround to solve this issue. The taglib directive we use to include JSTL core in our JSP needs to be modified. The taglib in my JSP was:
I changed above to:Code language: HTML, XML (xml)
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
And it worked for me!!! I dig into standard.jar for any clue and also checked few .tld files in this jar but couldn’t find an explanation for this. Any idea why this is so?Code language: HTML, XML (xml)
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
I am using struts2-jquery-plugin-1.8.0 with acegi-security-1.0.7
Thank you so much
@Amelio: Thanks for the comment
Thanks a lot for the advice. It really worked and it has taken so long for me to get to know this. Thanks again
Thanxxxxxxxxxxx..a lot..it really worked
great It worked …thanks If u could also specify what was the issue earlier ….?
Yes , this worked for me , thanks for the post.
thank you,its worked for me.so many blogs and many peoples written unnecesary things.but this one worked for me thank you
Thanks a lot, solved my problem
Thank you for the post this really helped cause I was getting a terrible headache
This is due to missing of under . This is used to specify the tag accepts EL expression to resolve value. By default its false. so if you want use dynamic EL
expression for your attribute then you need to define tag value as ‘true’.
great It worked …thanks a lot
Thanks to vikram patel & Tharakaram
this worked for me , thanks for the post.
Thanks for this. It helped me. as to why this is actually so, compare the following two fragments:
before, we were using the tld (file: META-INF/fmt-1_0.tld) which had:
but now with “… _rt”, the attribute bundle is defined in META-INF/fmt-1_0-rt.tld as follows:
Thanks a lot dude :D
thank you so much.
Very useful one. I tried lot others like changing the JSTL version from 1.2 to 1.0. After changing the directive it got worked. Thank you very much.
Thank you …
I was stuck on this for over 2 hours. Your research saved the day.
Thanks a lot . It helped me
Thanks a lot
thank you so much, i will try research the reason this tag lib has to be extended to _rt.
thank youuuuuuuuuuuuuuuuuuuuuuuu; you save a lot of us.
awesome man! brialliant :)
it has worked for me
Thanks a lot ! It has worked for me !
Brilliant! Worked like a charm.
Thanks it really helped me!
thnk u so much ….
absolutely right and exact,,,,thanx a lot
————thnk u so much .It’s working
Thanks a lot.. saved my time.. :)
Thanks buddy.Any way the rt stands for Runtime and it specifies that it should be ignored and executed at run time
awesome it worked!!!!thanks
thank you so much
working fine .Gr8 job:)
Good article !!! Works nice in my J2EE project in netbeans 6.9.1 with JSTL i.e  tag library.
It removes the error core_rt but still values not display on browser. I am suppose to return spring return new ModelAndView(“hello”, “now”, now); value on hello.jsp page using
runtime value not showing on browser.
Would you please help me on this.
Thanks in advance.
Thanks its worked
Simple and great solution, thank you very much.
worked for me as well!! thanks a ton :)
Thank you are its working. i used it as
It really worked…..but i was unable to get to the reason… :(
worked for me.thanks a lot.
Thank you for the post…it worked for me. :-)
Itz worked for me too!!!
Excellent solution. Just now I had this problem with Apache Tomcat 7.0.11 and was badly surprised of it, because under Tomcat 7.0.42 all goes right without “_rt”.
says “the two libraries differed in that one would allow run-time expressions as tag attribute values, and one wouldn’t.”
Thanks this helped.
I checked further on the TLD files in the JAR. The older version of TLD file has been renamed and if you look at the URI you should see it as
hope this helps
It worked Thanks for ur help
+1 yep,it works, thanks)
thanks a lot…
thanks a lot
really vry nice
thanks dude, works for me
Thank you so much.It really worked