attribute test does not accept any expressions

最近在mac上做项目,很多老的项目总是报一些莫明其妙的问题,比如下面这个:

在index.jsp中有一个include标签:

<jsp:includeflush="true"page="tenCtaHomePageCommonInfo.do"></jsp:include> 

首页打开的时候,总是报这个错:

Stacktrace:] with root cause

org.apache.jasper.JasperException: /indexInfo/tenPointRankInfo.jsp (line: 64, column: 17) According to TLD or attribute directive in tag file, attribute test does not accept any expressions

at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:42)

at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:408)

at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:149)


仔细看了一下,发现是.do跳转后的/indexInfo/tenPointRankInfo.jsp页面出现了问题,再百度上搜索出错信息后,发现如下解决方案:


方案一:

-----------------------------------------------------------------

解决方法有2个

1、将<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
       更改为
        <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

2、使用JSTL的备用库,
       将<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
       更改为
        <%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>



使用第二种方案,问题解决! 但是有一个问题,那就是所有涉及该问题的页面都要手动改一次(或者批量替换),感觉不是很好的解决办法。


方案二:

----------------------------------------------------------------

打开 web.xml,看到这样的写法,头部是这个:

<?xml version="1.0" encoding="UTF-8"?>

<web-app>

由于没有关于版本的描述,tomcat7默认就按新的规范要求了,所以在此处把版本指定为2.3即可,

<?xml version="1.0" encoding="UTF-8"?>

<!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>

重启服务,所有页面都正常了!

参考文章:
http://hellodao.blog.sohu.com/136860462.html
http://hi.baidu.com/zhaotao_king/item/9de216c01be8e742a8ba944a

http://hi.baidu.com/tsuny/item/198a7616e72afde45f53b111

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值