很奇怪的EL表达式问题! fn:escapeXml(string) 不能用

清风段 2010-11-16 11:36:48
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

都引入了,而且fn:indexOf(string, substring) 和 fn:length(item) 等都能正常使用,只有escapeXml这个不能用!! 大家有没有遇到相似的问题? 还请各位高手指点!

报的错是:

org.apache.jasper.JasperException: javax.servlet.jsp.el.ELException: An error occurred while evaluating function "fn:escapeXml"

java.lang.NoSuchMethodError: org.apache.taglibs.standard.tag.common.core.Util.escapeXml(Ljava/lang/String;)Ljava/lang/String;
...全文
977 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
番茄炒西红柿 2011-11-16
  • 打赏
  • 举报
回复
fn:escapeXml这什么意思?
ousyuryu 2010-11-17
  • 打赏
  • 举报
回复
貌似没什么问题。能把具体代码贴来看看吗
清风段 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 blazingfire 的回复:]
没问题,是你搞错了吧

Java code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page contentType="text/html; charset=UTF-8" pageE……
[/Quote]

太感谢大家了! 问题解决了! 多谢了!
清风段 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ousyuryu 的回复:]
好像
跟 isELIgnored="false" 有关,你设成true试下
[/Quote]

谢谢各位!! 问题解决了! 就是包的问题,我再用新工程和旧工程里的对比一下吧。。。 多谢了!!
清风段 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ousyuryu 的回复:]
好像
跟 isELIgnored="false" 有关,你设成true试下
[/Quote]

我重新建了一个工程,测试2楼的代码时提示这个错:
The absolute uri: http://java.sun.com/jsp/jstl/functions cannot be resolved in either web.xml or the jar files deployed with this application

jstl-1.1.0.jar standard.jar struts-core-1.3.8.jar struts-el-1.3.8.jar struts-taglib-1.3.8.jar

我导了这几个包,是不是还缺哪些包呢?
ousyuryu 2010-11-17
  • 打赏
  • 举报
回复
好像
跟 isELIgnored="false" 有关,你设成true试下
清风段 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ousyuryu 的回复:]
貌似没什么问题。能把具体代码贴来看看吗
[/Quote]

是这样,我用2楼的代码试了一下,直接把“${fn:escapeXml(str)} ” 原样输出来了,要是在页面顶部加一句 <%@page language="java" isELIgnored="false" %>
就和我说的情况一样了,呵呵,只有${fn:escapeXml(str)}不能用,别的一些取长度的函数没问题!



我觉得是不是和我系统当前的一些包冲突了呢? 但一直没查出原因,还请朋友们帮帮忙! 多谢了!
清风段 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 blazingfire 的回复:]
没问题,是你搞错了吧

Java code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page contentType="text/html; charset=UTF-8" pageE……
[/Quote]

奇怪,我把代码原样拷进去直接把“${fn:escapeXml(str)} ” 原样输出了! 是不是我少导哪个包了呢??
handsome_huxiulei 2010-11-17
  • 打赏
  • 举报
回复
没用过 不做评论!
blazingfire 2010-11-17
  • 打赏
  • 举报
回复
没问题,是你搞错了吧
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
</head>
<body>
<c:set var="str" value="abc1134" />
${fn:escapeXml(str)}
</body>
</html>

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧