`
JoeDanny
  • 浏览: 64504 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Resin/Tomcat下使用jstl

阅读更多
Resin下使用jstl

在Resin2.x下使用jstl
Resin从2.1.2版本开始自己实现了JSTL的core和fmt两个TAGLIB。
使用Resin2.x自带的JSTL不需要拷贝JAR和TLD文件,也不需要配置web.xml。
只要在页面引用就可以了,注意与标准JSTL1.1的区别。
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>

需要注意的是:
<c:out value="${myvar}"/> 是 JSTL 语法 , resin2.1.x版本支持,
而 ${myvar} 是 JSP 2.0 语法 resin 3.0 之后支持
在resin2.1.x中使用会产生java.lang.NoClassDefFoundError: javax/servlet/jsp/el/VariableResolver错误
在Resin3.x下使用jstl(未经验证)
将resin.conf文件的:
<servlet servlet-name="directory" servlet-class="com.caucho.servlets.DirectoryServlet"/>

改成:
<servlet servlet-name="directory" servlet-class="com.caucho.servlets.DirectoryServlet">
    <init enable="false"/>
</servlet>

在resin.conf文件中添加你的webapp的配置,注意要加上
<jsp fast-jstl="false"/>
<web-app id="/jstltest" document-directory="jstltest"><jsp fast-jstl="false"/></web-app>

在jsp引用中
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

使用标准的JSTL1.1
需要将JAR包(jstl.jar和standard.jar)拷贝到WEB-INF/lib目录下,不需要拷贝TLD文件,不需要配置web.xml。
在页面这样引用
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

使用标准的JSTL1.0
需要将JAR包(jstl.jar和standard.jar)拷贝到WEB-INF/lib目录下,拷贝需要的TLD文件。
配置web.xml
<taglib>
<taglib-uri>/tags/jstl-c</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/jstl-fmt</taglib-uri>
<taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
</taglib>

在jsp引用
<%@ taglib uri="/tags/jstl-c" prefix="c" %>
<%@ taglib uri="/tags/jstl-fmt" prefix="fmt" %>


Tomcat下使用JSTL1.0
需要将JAR包(jstl.jar和standard.jar)拷贝到WEB-INF/lib目录下,拷贝需要的TLD文件。
配置web.xml
<taglib>
<taglib-uri>/tags/jstl-c</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/jstl-fmt</taglib-uri>
<taglib-location>/WEB-INF/tld/fmt.tld</taglib-location>
</taglib>

在jsp引用
<%@ taglib uri="/tags/jstl-c" prefix="c" %>
<%@ taglib uri="/tags/jstl-fmt" prefix="fmt" %>


Tomcat下使用JSTL1.1
需要将JAR包(jstl.jar和standard.jar)拷贝到WEB-INF/lib目录下,不需要拷贝TLD文件,不需要配置web.xml。
在页面这样引用
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>


需要注意的是:
JSTL1.0是需要Servlet2.3和JSP1.2的。
JSTL1.1是需要Servlet2.4和JSP2.0的。


${myvar} 是JSP 2.0 语法,tomcat5以后的版本都支持JSP2.0也就是都支持EL语言。
但是为什么我们的应用程序发布到tomcat5服务器上后还是不支持EL语言呢,而且甚至不能发布成功。
这里涉及到web.xml文件的迁移问题
使用
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

是JSP1.2的语法,不支持EL语言。
需要把文件头换成
<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">

或者在每个jsp页面添加
<%@ page isELIgnored="false" %>


转自: http://xying.spaces.live.com/Blog/cns!C20F968B904CD5D6!130.entry
分享到:
评论

相关推荐

    jstl标签在jsp中使用问题

    所使用的web应用服务器resin与tomcat有所区别 resin\lib目录下存在jstl-1.2.jar、jta-101.jar包 而tomcat目录下不存在这两个jar包 结论:在使用tomcat里要在web工程中引入以上两个jar包 以解决...

    JSTL包和standrad包

    所使用的web应用服务器resin与tomcat有所区别 resin\lib目录下存在jstl-1.2.jar、jta-101.jar包 而tomcat目录下不存在这两个jar包 结论:在使用tomcat里要在web工程中引入以上两个jar包 以解决...

    resin-3.0.23

    2. **JSP 2.0支持**:同样,Resin 3.0.23也支持JSP 2.0,提供了对EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)等高级功能的支持。 3. **线程池管理**:Resin拥有自己的线程池管理...

    tomcat源码,servlet-api源码

    与其他Web服务器(如Jetty、Resin)相比,Tomcat以其轻量级、易用性和社区支持而受到青睐。理解其源码有助于我们评估不同服务器的优缺点,选择更适合项目需求的解决方案。 综上所述,深入研究Tomcat源码和Servlet-...

    JSP的运算式语言.ppt

    在JSP中使用JSTL,需要通过`&lt;%@ taglib %&gt;`指令导入对应的标签库,例如导入核心标签库(Core)时,会指定URI和前缀,如`uri="http://java.sun.com/jsp/jstl/core"`和`prefix="c"`。 在导入JSTL后,开发者可以使用如...

    解析Tomcat 6、7在EL表达式解析时存在的一个Bug

    有趣的是,同样的代码在Resin服务器上并未出现这个问题,这进一步证实了这是Tomcat的特定问题。 为避免类似的问题,开发者可以采取以下策略: 1. 在比较时,确保所有涉及的变量都处于同一类型,或者显式进行类型...

    Java程序猿技术路线图

    1. Java 开发入门:Java 开发环境的安装与使用,包括 JDK 命令、EclipseIDE、Linux 下 Java 程序的开发和部署等。 2. Java 语法基础:基于 JDK 和 Eclipse 环境,进行 Java 核心功能开发,掌握 Java 面向对象的语法...

    java技术体系图

    - **Web服务器**:Tomcat/Jetty/Resin/JBossWeb。 - **JavaWeb核心技术**: - **网页开发** + **数据库设计** → **JavaWeb项目开发**。 - **6项基本技术**:JSP + JavaBean + Servlet + EL + JSTL + Taglib。 ...

    jsp实现下载excel,word,pdf,jgp,gif,xml,js过滤器实现文档.docx

    标题中的“jsp实现下载excel,word,pdf,jpg,gif,xml,js过滤器实现文档.docx”描述了一个使用JavaServer Pages(JSP)技术来处理文件下载的问题,特别是涉及了如何解决在Tomcat和Resin服务器上下载中文文件名时出现的...

    简明JSP教程`

    JSP的核心技术是Java,当JSP页面在服务器上被请求时,会由Web容器(如Tomcat、Resin等)转换成对应的Java Servlet,并编译为.class文件执行。Servlet是Java提供的一种用于处理HTTP请求的服务器端组件,JSP的本质就是...

    javaEE教程实用版

    在JavaEE的主流Java Web应用服务器中,包括了Tomcat、Tomcat+Apache、Resin、JBoss、WebLogic Server以及WebSphere等。这些服务器各有特点,如Tomcat因其轻量级、易于管理和配置而广受欢迎,而WebLogic和WebSphere则...

    JSP简明教程

    在学习和实践中,通常会使用Tomcat、Jetty、Resin等Servlet容器来运行JSP应用。例如,Resin服务器是一个轻量级的Web服务器,安装简单,运行速度快,适合开发和测试环境。通过下载Resin服务器的相应版本,解压后运行...

    java程序员技术体系

    Web服务器如Tomcat、Jetty、Resin和JBoss的使用和配置也是必备技能。 随着经验的积累,中级软件工程师会深入学习四大经典架构SSH1、SSI1、SSH2和SSI2,包括Struts1和Struts2表现层框架,Spring业务层框架以及...

    Java学习的30个目标.txt

    - **Tomcat、Resin、JRun**:熟悉常用的Web服务器,如Tomcat、Resin等,学会部署和配置Web应用。 #### 十、远程过程调用 - **RMI(Remote Method Invocation)**:理解RMI的基本原理,学会使用RMI实现分布式计算。 -...

    25个好习惯帮你快速成为JAVA高手

    9. **Web服务器管理**:学会使用和管理Web服务器,如Tomcat,Resin,JRun,能够在此基础上扩展和维护Web程序。 10. **分布式对象与远程API**:理解RMI和RMI/IIOP等远程API,掌握分布式对象的处理方式。 11. **...

    java学习摘要及当今发展趋势摘要

    Web服务器配置如Resin和Tomcat是部署Java应用的基础设施,JSP(JavaServer Pages)作为动态网页技术,其运行机制基于Servlet。JSP的基本语法包括脚本元素、指令和动作标签。JSP内置对象如request、response、session...

    JAVA程序员您需要学习的25个标准

    9. **Web服务器配置与管理**:熟练使用如Tomcat、Resin等Web服务器,了解如何在其上部署和管理Web应用程序,是JAVA Web开发人员的基本要求。 10. **分布式对象与远程API**:掌握RMI(远程方法调用)和RMI/IIOP...

    Java学习的30个目标

    学会使用Tomcat、Resin、JRun等Web服务器,进行Web应用的配置和部署。 #### 11. 远程调用API:RMI与RMI/IIOP 熟悉远程方法调用(RMI)和RMI/IIOP协议,实现分布式系统间的服务调用。 #### 12. Java事务服务 学习...

    学习java的30个目标

    学会配置和管理Web服务器(如Tomcat、Resin、JRun),以及扩展和维护Web应用程序,是实际开发中不可或缺的技能。 此外,要掌握分布式对象和远程API(如RMI、RMI/IIOP),以及中间件技术,如Tuxedo、CROBA和Java EE...

    学习java的30个步骤

    10. **Web服务器管理**:掌握Tomcat、Resin、JRun等Web服务器的配置、扩展和维护。 11. **分布式对象与远程API**:学习RMI和RMI/IIOP,理解分布式计算的基础。 12. **中间件技术**:研究Tuxedo、CORBA以及JavaEE等...

Global site tag (gtag.js) - Google Analytics