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
分享到:
相关推荐
所使用的web应用服务器resin与tomcat有所区别 resin\lib目录下存在jstl-1.2.jar、jta-101.jar包 而tomcat目录下不存在这两个jar包 结论:在使用tomcat里要在web工程中引入以上两个jar包 以解决...
所使用的web应用服务器resin与tomcat有所区别 resin\lib目录下存在jstl-1.2.jar、jta-101.jar包 而tomcat目录下不存在这两个jar包 结论:在使用tomcat里要在web工程中引入以上两个jar包 以解决...
2. **JSP 2.0支持**:同样,Resin 3.0.23也支持JSP 2.0,提供了对EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)等高级功能的支持。 3. **线程池管理**:Resin拥有自己的线程池管理...
与其他Web服务器(如Jetty、Resin)相比,Tomcat以其轻量级、易用性和社区支持而受到青睐。理解其源码有助于我们评估不同服务器的优缺点,选择更适合项目需求的解决方案。 综上所述,深入研究Tomcat源码和Servlet-...
在JSP中使用JSTL,需要通过`<%@ taglib %>`指令导入对应的标签库,例如导入核心标签库(Core)时,会指定URI和前缀,如`uri="http://java.sun.com/jsp/jstl/core"`和`prefix="c"`。 在导入JSTL后,开发者可以使用如...
有趣的是,同样的代码在Resin服务器上并未出现这个问题,这进一步证实了这是Tomcat的特定问题。 为避免类似的问题,开发者可以采取以下策略: 1. 在比较时,确保所有涉及的变量都处于同一类型,或者显式进行类型...
1. Java 开发入门:Java 开发环境的安装与使用,包括 JDK 命令、EclipseIDE、Linux 下 Java 程序的开发和部署等。 2. Java 语法基础:基于 JDK 和 Eclipse 环境,进行 Java 核心功能开发,掌握 Java 面向对象的语法...
- **Web服务器**:Tomcat/Jetty/Resin/JBossWeb。 - **JavaWeb核心技术**: - **网页开发** + **数据库设计** → **JavaWeb项目开发**。 - **6项基本技术**:JSP + JavaBean + Servlet + EL + JSTL + Taglib。 ...
标题中的“jsp实现下载excel,word,pdf,jpg,gif,xml,js过滤器实现文档.docx”描述了一个使用JavaServer Pages(JSP)技术来处理文件下载的问题,特别是涉及了如何解决在Tomcat和Resin服务器上下载中文文件名时出现的...
JSP的核心技术是Java,当JSP页面在服务器上被请求时,会由Web容器(如Tomcat、Resin等)转换成对应的Java Servlet,并编译为.class文件执行。Servlet是Java提供的一种用于处理HTTP请求的服务器端组件,JSP的本质就是...
在JavaEE的主流Java Web应用服务器中,包括了Tomcat、Tomcat+Apache、Resin、JBoss、WebLogic Server以及WebSphere等。这些服务器各有特点,如Tomcat因其轻量级、易于管理和配置而广受欢迎,而WebLogic和WebSphere则...
在学习和实践中,通常会使用Tomcat、Jetty、Resin等Servlet容器来运行JSP应用。例如,Resin服务器是一个轻量级的Web服务器,安装简单,运行速度快,适合开发和测试环境。通过下载Resin服务器的相应版本,解压后运行...
Web服务器如Tomcat、Jetty、Resin和JBoss的使用和配置也是必备技能。 随着经验的积累,中级软件工程师会深入学习四大经典架构SSH1、SSI1、SSH2和SSI2,包括Struts1和Struts2表现层框架,Spring业务层框架以及...
- **Tomcat、Resin、JRun**:熟悉常用的Web服务器,如Tomcat、Resin等,学会部署和配置Web应用。 #### 十、远程过程调用 - **RMI(Remote Method Invocation)**:理解RMI的基本原理,学会使用RMI实现分布式计算。 -...
9. **Web服务器管理**:学会使用和管理Web服务器,如Tomcat,Resin,JRun,能够在此基础上扩展和维护Web程序。 10. **分布式对象与远程API**:理解RMI和RMI/IIOP等远程API,掌握分布式对象的处理方式。 11. **...
Web服务器配置如Resin和Tomcat是部署Java应用的基础设施,JSP(JavaServer Pages)作为动态网页技术,其运行机制基于Servlet。JSP的基本语法包括脚本元素、指令和动作标签。JSP内置对象如request、response、session...
9. **Web服务器配置与管理**:熟练使用如Tomcat、Resin等Web服务器,了解如何在其上部署和管理Web应用程序,是JAVA Web开发人员的基本要求。 10. **分布式对象与远程API**:掌握RMI(远程方法调用)和RMI/IIOP...
学会使用Tomcat、Resin、JRun等Web服务器,进行Web应用的配置和部署。 #### 11. 远程调用API:RMI与RMI/IIOP 熟悉远程方法调用(RMI)和RMI/IIOP协议,实现分布式系统间的服务调用。 #### 12. Java事务服务 学习...
学会配置和管理Web服务器(如Tomcat、Resin、JRun),以及扩展和维护Web应用程序,是实际开发中不可或缺的技能。 此外,要掌握分布式对象和远程API(如RMI、RMI/IIOP),以及中间件技术,如Tuxedo、CROBA和Java EE...
10. **Web服务器管理**:掌握Tomcat、Resin、JRun等Web服务器的配置、扩展和维护。 11. **分布式对象与远程API**:学习RMI和RMI/IIOP,理解分布式计算的基础。 12. **中间件技术**:研究Tuxedo、CORBA以及JavaEE等...