- 浏览: 219892 次
- 性别:
- 来自: 珠海
文章分类
- 全部博客 (125)
- 淘宝导购 (0)
- Google Android (18)
- J2EE (16)
- J2SE (4)
- SQL (6)
- C# (6)
- WinForm (5)
- ASP.NET (2)
- ASP.NET Ajax (0)
- flex--ActionScript (14)
- Windows (13)
- Linux (11)
- Eclipse (4)
- Oracle (2)
- MySql (8)
- J2EE Hibernate (4)
- J2EE Spring (2)
- J2EE Ajax (2)
- J2EE Struts (0)
- struts spring hibernate (1)
- javaScript_css_html (10)
- UML (1)
最新评论
-
xufun:
路过,学习
反编译Apk得到Java源代码 -
xiaoane:
the second way is usefull :-)
解决mysql“Access denied for user 'root'@'localhost'” -
yaoneng:
这个没什么,只是一个思想
actionScript键盘控制 物体移动 -
lakewalker:
这个不咋地啊
actionScript键盘控制 物体移动 -
jenlp520:
yaoba 写道
JsonConfig jsonConfig ...
hibernate List 转JSON发生错的解决方法
应用部署运行的时候出现JSP异常, 发生在使用JSTL库的时候: According to TLD or attribute directive in tag file, attribute value does not accept any expressions , 可能是因为使用了JSP2.0版本, 同时又没有使用JSTL core库的备用版本(RT库), 以下有两种处理方法:
1. 如果不想使用web-app_2_4.xsd 和jstl1.1 那么可以按照下面两种方式修改
1). 修改web.xml.
<web-app 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
"
version="2.4">
改为2.3版本的
<!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>
2). 使用JSTL core RT库
JSTL core库的有两种taglib伪指令, 其中RT库即是依赖于JSP传统的请求时属性值, 而不是依赖于EL来实现(称为EL库.JSP2.0将支持EL )
JSP中使用<%@ taglib uri=http://java.sun.com/jstl/core prefix="c"%>在2.3版本都可以,在2.4就不行了, 这是版本不兼容引起的,稍后将介绍servlet的版本。
只要将
<%@ taglib uri="http://java.sun.com/jstl/core
"
prefix="c"%>
改为
<%@ taglib
uri=http://java.sun.com/jstl/core_rt prefix="c"%>
2:如果要使用jstl1.1(推荐) 则按照一下修改,很简单的。
jstl存在1.0和1.1的差异问题,用EL建议需要在1.1的版本下,
使用jstl1.1 只需要将
1.0的为
<%@ taglib uri="http://java.sun.com/jstl/core " prefix="c" %>
换成:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
注意,1.0版本没有/jsp/
-----------------------------------------------------------------------------------------------------------------------------------
附录: jsp servlet j2ee tomcat jdk的版本差别
-----------------------------------------------------------------------------------------------------------------------------------
一 JSP2.0与JSP1.2比较
JSP 2.0是对JSP 1.2的升级,新增功能:
1. Expression Language
2. 新增Simple Tag和Tag File
3.web.xml新增<jsp:config>元素
特别说明web.xml.
web.xml新增<jsp:config>元素
<jsp-config> 元素主要用来设定JSP相关配置,<jsp-config>
包括<taglib>和<jsp-property-group>
子元素。
(1)其中<taglib>以前的Jsp1.2中就有的,taglib主要作用是作为页面taglib标签中的uri和tld文件的一 个映射关系
(2)其中<jsp-property-group>是JSP2.0种新增的元素。
<jsp-property-group>
主要包括8个子元素,它们分别是:
<jsp-property-group>
<description>
设定的说明
</description>
<display-name>设定名称</display-name>
<url-pattern>设定值所影响的范围</url-pattern>
<el-ignored>若为true则不支持EL语法</el-ignored>
<page-encoding>ISO-8859-1</page-encoding>
<scripting-invalid> 若为true则不支持<% scripting%> 语法</scripting-invalid>
<include-prelude>设置JSP网页的抬头,扩展名为.jspf </include-prelude>
<include-coda>设置JSP网页的结尾,扩展名为.jspf</include-coda>
</jsp-property-group>
例如: 其中抬头程序:
prelude.jspf
<br>
<center>
文本内容
</center>
<hr>
结尾程序:
coda.jspf
<br>
<center>
文本内容
</center>
<hr>
二、Servlet个版本比较
servlet 2.3 新增功能:
2000年10月份出来
Servlet API
2.3中最重大的改变是增加了filters
servlet 2.4 新增功能:
2003年11月份出来
1、web.xml DTD改用了XML Schema;
Servlet 2.3之前的版本使用DTD作为部署描述文件的定义,其web.xml的格式为如下所示:
<?xml version="1.0" encoding="IS0-8859-1"?>
<!DOCTYPE
web-app
PUBLIC "-//sunMicrosystems,Inc.//DTD WebApplication 2.3f//EN"
"http://java.sun.com/j2ee/dtds/web-app_2.3.dtd
">
<web-app>
.......
</web-app>
Servlet 2.4版首次使用XML Schema定义作为部署描述文件,这样Web容器更容易校验web.xml语法。同时XML
Schema提供了更好的扩充性,其web.xml中的格式如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<web-app
version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee
"
xmlns:workflow="http://www.workflow.com
"
xmins: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
">
.........
</web-app>
注意: 改为Schema后主要加强了两项功能:
(1) 元素不依照顺序设定
(2) 更强大的验证机制
主要体现在:
a.
检查元素的值是否为合法的值
b.检查元素的值是否为合法的文字字符或者数字字符
c.检查Servlet,Filter,EJB-ref等
等元素的名称是否唯一
2.新增Filter四种设定:REQUEST、FORWARD、INCLUDE和ERROR。
3.新增
Request Listener、Event和Request Attribute Listener、Enent。
4.取消
SingleThreadModel接口。当Servlet实现SingleThreadModel接口时,它能确保同时间内,只能有一个thread执
行此Servlet。
5.<welcome-file-list>可以为Servlet。
6.ServletRequest
接口新增一些方法。
public String getLocalName()
public String
getLocalAddr()
public int getLocalPort()
public int
getRemotePort()
Servlet 2.5的新特征
2005年9月发布Servlet 2.5
Servlet2.5一些变化的介绍:
1)
基于最新的J2SE 5.0开发的。
2) 支持annotations 。
3) web.xml中的几处配置更加方便。
4)
去除了少数的限制。
5) 优化了一些实例
servlet的各个版本对监听器的变化有:
(1)servlet2.2和jsp1.1
新增
Listener:HttpSessionBindingListener
新增Event: HttpSessionBindingEvent
(2)servlet2.3
和jsp1.2
新增
Listener:ServletContextListener,ServletContextAttributeListener
,HttpSessionListener,HttpSessionActivationListener,HttpSessionAttributeListener
新
增Event:
ServletContextEvent,ServletContextAttributeEvent,HttpSessionEvent
(3)servlet2.4
和jsp2.0
新增
Listener:ServletRequestListener,ServletRequestAttribureListener
新增
Event: ServletRequestEvent,ServletRequestAttributeEvent
三、J2EE规范版本比较
1.J2EE的发展
1997年Servlet技术的产生以及紧接着JSP的产生,为Java对抗PHP,ASP等等服务器端语言带来了筹码。1998年,Sun发布了 EJB1.0标准,至此J2EE平台的三个核心技术都已经出现。于是,1999年,Sun正式发布了J2EE的第一个版本。并与1999年底发布了 J2EE1.2,在2001年发布了J2EE1.3,2003年发布了J2EE1.4。
2.J2EE1.3
J2EE1.3的架构,其中主要包含了Applet容器,Application
Client容器,Web容器和EJB容器,并且包含了Web Component,EJB Component,Application Client
Component,以JMS,JAAS,JAXP,JDBC,JAF,JavaMail,JTA等等技术做为基础。
1.3中引入了几个值得注意的功能:Java消息服务(定义了JMS的一组API),J2EE连接器技术(定义了扩展J2EE服务到非J2EE应用 程序的标准),XML解析器的一组Java API,Servlet2.3,JSP1.2也都进行了性能扩展与优化,全新的CMP组件模型和MDB(消息Bean)。
3.J2EE1.4
J2EE1.4大体上的框架和J2EE1.3是一致的,1.4增加了对Web服务的支持,主要是Web Service,JAX-RPC,SAAJ,JAXR,还对EJB的消息传递机制进行了完善(EJB2.1),部署与管理工具的增强(JMX),以及新版 本的Servlet2.4和JSP2.0使得Web应用更加容易。
四、Tomcat版本比较
Tomcat 3.x
servlet2.2和jsp1.1标准
Tomcat 4.x
Servlet 2.3 和
JSP 1.2 版本
Tomcat 5.x
Servlet 2.4或2.5 和 JSP 2.0 版本
五、JDK版本比较
已发行的版本:
版本号 名称 中文名 发布日期
JDK 1.1.4 Sparkler 宝石 1997-09-12
JDK
1.1.5 Pumpkin 南瓜 1997-12-13
JDK 1.1.6 Abigail 阿比盖尔--女子名 1998-04-24
JDK
1.1.7 Brutus 布鲁图--古罗马政治家和将军 1998-09-28
JDK 1.1.8 Chelsea 切尔西--城市名
1999-04-08
J2SE 1.2 Playground 运动场 1998-12-04
J2SE 1.2.1 none 无
1999-03-30
J2SE 1.2.2 Cricket 蟋蟀 1999-07-08
J2SE 1.3 Kestrel
美洲红隼 2000-05-08
J2SE 1.3.1 Ladybird 瓢虫 2001-05-17
J2SE 1.4.0
Merlin 灰背隼 2002-02-13
J2SE 1.4.1 grasshopper 蚱蜢 2002-09-16
J2SE
1.4.2 Mantis 螳螂 2003-06-26
J2SE 5.0 (1.5.0) Tiger 老虎
J2SE 5.1 (1.5.1) Dragonfly 蜻蜓
J2SE 6.0 (1.6.0) Mustang 野马
发表评论
-
Java W3C 生成 XML
2012-03-20 00:56 1197import java.io.File; import ... -
java连接Mysql
2011-11-24 14:56 1487import java.sql.Connection; ... -
java历遍HashMap
2011-11-23 20:27 1408第一种: Map map = new HashMap(); I ... -
j2ee获取客户端参数集
2010-07-31 10:16 1029package javacommon.util; ... -
自定义el
2010-07-30 12:53 831<?xml version="1.0&q ... -
svn for windows
2010-03-18 11:44 1019新建一个.bat文件,编辑以下内容,再运行 sc cr ... -
javascript 练习
2010-03-01 17:07 874var lastDivId; function showCo ... -
web.xml加载spring 时要注意的问题
2010-02-26 20:14 1242<!-- spring配置 --> ... -
查看对象占用的内存大小
2010-02-24 19:25 1541Runtime.getRuntime() ... -
jsp调用spring bean
2010-02-10 14:13 1366ApplicationContext ... -
JSTL出错 According to TLD or attribute directive in tag file
2010-02-09 22:16 893今天搞JSTL时,发现了一个很大问题,JSTL什么语法都没错的 ... -
jsp调用fckeditor
2010-02-06 01:50 1102<%@ taglib uri="http ... -
仿google个性主页
2010-02-06 01:47 581<html> <head> < ... -
JAVA计算两个日期之间的天数
2008-12-11 13:07 2868计算两个日期之间的天数 public static void ... -
Tomcat5.5.15的默认登录密码
2008-12-11 12:56 1522<?xml version='1.0' encoding ...
相关推荐
JavaServer Pages Standard Tag Library (JSTL) 是一个标准的标签库,用于简化JSP页面中的Java代码,提高可读性和可维护性。...在实际项目中,正确配置和使用.tld文件是确保JSTL功能正常运行的关键步骤。
**JSTL(JavaServer Pages Standard Tag Library)**是Java Web开发中的一种标准标签库,它为JSP页面提供了一套预定义的标签,用于简化常见的任务,如迭代、条件判断、XML处理等,从而减少Java代码在JSP页面中的使用...
**JSTL 1.2:JavaServer Pages Standard Tag Library** JSTL,全称JavaServer Pages Standard Tag Library,是Java EE中用于增强JSP页面功能的一组标准标签库。它提供了一系列预定义的标签,使得JSP开发者可以更加...
JSTL的使用通常涉及到三个关键部分:jar包、tld文件以及相关的配置。 1. **JSTL Jar包**: `jakarta-taglibs-standard-1.1.2.zip` 文件中包含的是JSTL的核心库。JSTL的实现是由不同的jar包组成的,其中`jakarta-...
JSTL标签所需要的tld文件,包括 c.tld、fmt.tld、fn.tld 三个 几乎所有的JSTL标签下载的zip中都只有一个c.tld,然后只讲解<C:>标签怎么用,其实<fmt:> <fn:>标签也非常好用和实用,找了好久才找到...
TLD(Tag Library Descriptors)文件则是JSTL的核心组件之一,它们包含了关于标签库的元数据,包括标签定义、属性、事件处理等信息。 1. **TLD文件的作用** TLD文件是JSP规范的一部分,它定义了自定义标签的行为和...
在JSTL中,`.tld`文件(Tag Library Descriptor)是描述标签库的关键文件,它们定义了标签的属性、行为以及与Java方法的映射关系。 **1. c.tld:** `c.tld`文件对应于Core标签库,这是JSTL中最基础的库,提供了处理...
总之,JSTL是Java Web开发中的重要工具,通过引入`jstl.jar`和`standard.jar`库文件,并配置好.tld文件,开发者可以在Eclipse环境中便捷地利用JSTL标签进行页面逻辑处理。正确配置这些文件对于提高开发效率和代码...
【JSTL标签配置流程详解】 JSTL(JavaServer Pages Standard Tag Library)是SUN公司推出的一种用于JSP开发的组件,旨在替代传统的JSP scriptlet代码,提高页面的可读性和维护性。JSTL提供了一系列标签,使得开发者...
JSTL的核心在于其TLD(Tag Library Descriptor)文件,这些文件定义了标签的行为和属性。在提供的标题和描述中,我们看到了多个TLD文件和一个JSTL相关的jar包,这些都是JSTL的核心组成部分。 1. **TLD文件**: - `...
**JSTL(JavaServer Pages Standard Tag Library)详解与配置** JSTL是JavaWeb开发中的一个标准标签库,它提供了许多预定义的标签,用于简化JSP页面的编写,提高代码的可读性和可维护性。JSTL主要包括核心标签库...
- 在JSP 2.4版本中,使用JSTL可能遇到与EL(Expression Language)的兼容性问题,导致错误提示“According to TLD or attribute directive in tag file, attribute value does not accept any expressions”。...