JPS错误的处理方法

来源:互联网 发布:java的soa架构 编辑:程序博客网 时间:2024/05/24 00:59

1, org.apache.jasper.JasperException    According to TLD or attribute directive in tag file, attribute items does not accept any expressions

       这个问题,貌似和JSP ,JSTL的版本存在一些问题。其具体内容是说,items属性无法接受表达式。

      但是在c.tld文件中找到对应的映射。

     代码如下:


<name>items</name><required>false</required><rtexprvalue>true</rtexprvalue><type>java.lang.Object</type>
<rtexpvalue  设置的值为true,明显是可以使用表达式的,不知道为何会出现这个错误。

       解决方案:

       在core后面加_rt即可解决。网上有关于此点的详细介绍,但是我看不太明白。

       <%@taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"  %>  


2, quote symbol expected

         缺少引号,一般在使用EL表达式的时候,可能会出现这个错误。

         解决方案:加上引号。


3,  url: http://www.dzrtag.com  cannot be resolved in either web.xml or the jar files deployed with this app

        在自定义标签的时候,出现了这个问题。

     其大致意思为:无论在web.xml或者是部署在这个应用中的jar包中都无法找到 url:http://www.dzrtag.com 这个路径。

    造成问题的原因,是页面无法找到你的http://www.dzrtag.com路径,可能是因为你的.tld文件藏得太深。

     解决的一种方案,就是在web.xml配置下 URL 到 TAG的映射。

   

<jsp-config>  <taglib>  <taglib-uri>http://www.dzrtag.com</taglib-uri>  <taglib-location>/WEB-INF/lib/mytag.tld</taglib-location>  </taglib>  </jsp-config> 

这样,重启服务器之后,JSP页面就能够找到你这个路径,你自己编写的tag就能够正常使用。奇怪的是,通常情况,都不需要进行这个配置的,我在想,是否将tag.tld文件放到比较外层,系统就能够自动寻找到该路径呢?