程序员之家 >> 文章 >> 应用服务器 >> WebLogic
weblogic与jstl
作者:   来源:csdn博客   发布者:admin
时间:2009-04-28 10:46:49   点击:1773

原来使用weblogic9和jstl1.1,后来由于客户的服务器是使用weblogic8.1.X,需要将jstl1.1的项目迁移到weblogic8.1上,出现了下面的问题:

java.lang.NoClassDefFoundError: javax/servlet/jsp/el/ELException
原因是这样的:

weblogic8.1本身并不支持jsp2.0,因为jsp2.0中已经把ELException类包括进去了,而weblogic8.1里的是JSP1.2,JSTL1.1里也并没有这个包。这样就没有办法在weblogic里使用jstl1.1,必须将jstl1.1改为jstl1.0,修改办法是这样的:

我是用的servlet版本是2.3,原来在web.xml中并没有关于jstl的任何信息,现在添加如下内容:

<taglib>
       <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
       <taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
使用下面的网页测试:
jstltest.jsp:
<%@ page language="java" pageEncoding="gb2312"%>
 
<%-- jstl taglib --%>
<%@ taglib prefix="c" uri="/WEB-INF/c.tld" %>
<html>
 <head>
 
    <title>jstltest.jsp</title>
   
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">   
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
 
 </head>
 <body>
 <c:out value="您使用的浏览器是:"/><br>
 <c:out value="${header['User-Agent']}"/>
</body>
</html>
输出的结果:
您使用的浏览器是:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

最新文章
点击排行