导入核心标签库出现异常:"According to TLD or attribute directive in tag file, attribute items does not accept any expressions"
web.xml
- <?xml version="1.0" encoding="UTF-8"?>
-
<web-app version="2.4"
-
xmlns="http://java.sun.com/xml/ns/j2ee"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
- <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
-
-
1+2+3 = ${1+2+3} <br>
-
1+2+3 = <c:out value="6" /> <br>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
1+2+3 = ${1+2+3} <br>
1+2+3 = <c:out value="6" /> <br>
此时执行没有任何问题。
1+2+3 = <c:out value="${1+2+3}" />执行时就会出现:
According to TLD or attribute directive in tag file, attribute value does not accept any expressions
昨天少了一个jsp,所以一直出现问题。
- <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
-
- 写成
-
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
写成
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
今天再试。发现JSTL1.1可以用。但是用JSTL1.0时,出现问题。
就是把JSTL1.1的库放到/WEB-INF/lib/ 下。
刚开始我是netbeans 5.5.1中的JSTL库拷贝出来发现可以用。后来用jstl1.1.2的库,也是可以用。
总结:
JSTL1.1的库 在JSP2.0(Servlet 2.4)及以后(推荐用JSTL1.1及以上)用:
- <%@taglib prefix="c" uri="http://java.sun.com/[color=red]jsp[/color]/jstl/core" %>
<%@taglib prefix="c" uri="http://java.sun.com/[color=red]jsp[/color]/jstl/core" %>
web.xml
- <?xml version="1.0" encoding="UTF-8"?>
-
<web-app version="2.4"
-
xmlns="http://java.sun.com/xml/ns/j2ee"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
在 Servlet2.3及以前,
- <%@taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
比2.4以后版本少了jsp
web.xml
- <?xml version="1.0" encoding="UTF-8"?>
-
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
-
- </web-app>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
</web-app>
在Servlet2.3中最好用JSTL1.0,如果用JSTL1.1,请加上
- <?xml version="1.0" encoding="UTF-8"?>
-
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
- <taglib>
-
<taglib-uri>http:
- <taglib-location>/WEB-INF/c.tld</taglib-location>
- </taglib>
- </web-app>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
</web-app>
把tld目录下的c.tld拷贝到/WEB-INF?下。
总结:jstl.jar,standard.jar加到/WEB-INF/lib下,jsp页面上导入<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ,就OK了.
找到官方下载地址:
http://jakarta.apache.org/site/downloads/downloads_taglibs.html
选择 Standard 1.0 Taglib 和Standard 1.1 Taglib 可以下载jstl1.0和jstl1.1版本。
分享到:
相关推荐
- **缺失或错误的XML文档**:如果XML数据本身存在错误,如语法错误、未闭合的标签或者命名空间冲突,那么在尝试处理XML时会引发异常。 - **JSP配置错误**:确保在JSP页面的顶部正确地导入了JSTL库,例如: ```jsp ...
通过上述详述,我们可以看到JSTL提供了丰富的标签库来简化Web开发,从基本的数据输出到复杂的数据库操作,JSTL都能够提供相应的解决方案。熟练掌握JSTL的使用,对于提升Java Web应用的开发效率和代码质量具有重要...
1. **检查JSTL库**:确保项目中已导入jstl.jar和standard.jar这两个库,它们包含了JSTL所需的类和接口。 2. **更新MyEclipse**:确保你的MyEclipse版本是最新的,因为较旧的版本可能不完全支持JSTL标签。 3. **...
3. **导入JSTL库**:确保项目中已经包含了JSTL的库文件,如`jstl.jar`和`standard.jar`,因为MyEclipse可能依赖这些库来正确解析JSTL标签。 4. **使用其他编辑器或IDE**:如果尝试上述方法都无法解决问题,可以考虑...
- `page`指令:定义页面的编码、语言、导入的包等属性。 - `include`指令:在编译时包含其他文件。 - `taglib`指令:引入自定义标签库。 3. **JSP表达式**: - `<%= %>`:将Java表达式的值转换为字符串并输出到...
具体实现时,首先导入相应的Java安全包,然后使用MessageDigest类来生成哈希值。为了增强安全性,还可以结合盐值(Salt)进行哈希计算,防止彩虹表攻击。 #### 9. Java与Apache Shiro集成 - **知识点概述**:...
新手可能在使用JSTL标签时遇到导入问题、标签使用错误或不理解标签功能。 5. **Servlet生命周期与JSP转换**: JSP页面会被编译成Servlet,因此理解Servlet的生命周期对于调试和性能优化至关重要。常见问题包括初始...
本文将深入探讨EL表达式的基本概念、可能出现的问题及其解决方案,并结合提供的`jstl.jar`和`standard.jar`这两个关键库文件,来进一步理解它们在处理EL表达式中的作用。 EL表达式是JavaServer Pages(JSP)2.0引入...
如果找不到Action,检查是否导入了对应的Action类和对应的包名。 - **拦截器配置问题**:在使用自定义拦截器时,需确保它们已正确注册并加入到默认或自定义的拦截器栈中。同时,注意配置文件的解析顺序,避免因配置...
3. **指令错误**:`<%@ %>`用于引入指令,如导入包或声明页面编码。错误的指令可能导致运行时错误。检查指令的语法和参数是否正确。 二、JSP与Servlet交互问题 1. **转发与重定向**:`request....
当你在开发或者运行一个基于JSP的项目时,如果遇到“找不到该jar包”的异常,可能是因为你的开发环境或应用服务器缺少了这个必要的依赖。 Java Servlet API提供了服务端的编程模型,允许开发者编写运行在Web服务器...
这些小技巧涵盖了JSP开发中的常见问题和解决方案,通过学习和实践这些技巧,你可以更有效地编写和维护JSP应用程序,提高开发效率,同时提升用户体验。在实际工作中,不断探索和总结,你会发现更多JSP的实用小技巧。...
课程涵盖了Web开发的基本特点、常用技术对比、JSP的运行原理、Servlet的处理机制、MVC设计模式、Web.xml配置、Servlet生命周期、数据库组件的使用、乱码问题解决、Servlet单态模式、Session内置对象、JSTL标签的使用...
调试运行时,开发者应关注日志输出,检查是否有编译错误或运行时异常,同时验证功能是否符合预期,比如用户能否成功登录、投票、查看结果等。此外,还要考虑安全性问题,如SQL注入防护、权限控制等。 总的来说,这...
7. **异常处理**:理解如何在JSP中捕获和处理异常,以及在web.xml中配置全局异常处理器。 8. **数据库交互**:如果项目涉及数据库操作,你需要了解JDBC(Java Database Connectivity)以及如何在JSP中执行SQL查询。...
- **异常处理**:Java通过异常类来处理程序运行时的错误,异常分为检查性异常和非检查性异常,需学习如何捕获和处理。 3. **Java 核心API**: - **IO**:Java的输入/输出流系统,用于读写文件、网络通信等,包括...
在Java编程中,`java.lang.AbstractMethodError`是一个运行时异常,通常发生在尝试调用抽象方法而该方法在运行时的类中没有实现时。这个问题通常与类加载器有关,因为这表明在编译时和运行时的类路径中存在不一致。...
每次请求时,Servlet的`service()`方法执行,处理完请求后,`destroy()`方法在Servlet不再需要时被调用。 ### JSP表达式与脚本元素 - **JSP表达式** (`<%= %>`): 直接将Java表达式的结果输出到页面上。 - **JSP...
在这一过程中,开发者可能会遇到一些常见问题,如SQL查询错误、空指针异常或权限问题,这些问题需要通过阅读日志、调试代码或者查阅文档来解决。 此外,系统的安全性也是不可忽视的方面。为了保护用户数据和系统...