3天硬是是把这个问题解决了 有时候忽然上个厕所灵感就来了java
第一次向用JSTL解析xml 而后我想遍历整个xml文档打印出来node
竟然不让我输入变量 那让我怎么办啊web
在网上各类找答案express
说什么<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>变为:
<%@ taglib prefix="c" uri=http://java.sun.com/jstl/core_rt %>app
什么反应都没有啊 而后又上stackoverfloweclipse
也没有解决问题jsp
忽然灵感来了 我就去看它的源文件工具
这是eclipse自带的jstl包里面规定解析的地方性能
打开一看恍然大悟啊spa
一看就明白啊 原理解析的时候工具是从这找的配置文件
tag就是每一个标签的配置文件 拿out举例子 红色部分声明的就是select这个属性能不能有变量 rtexpravlue意思就是“变量表达式”
如今好了 想办法把这个表达式改了就好了 直接改固然不得法 咱们只要“欺骗”下工具就好了
1复制出来其中一个文件,好比x.tld,而后再本地修改,由于在工具里面文件只读
2将x.tld里面的你想要改的部分修改,好比我想让select属性有表达式 我就让上面红色的地方改为true
3在工程的web.xml声明这样一段话
<jsp-config>
<taglib>
<taglib-uri>/huang</taglib-uri>
<taglib-location>/WEB-INF/x.tld</taglib-location>
</taglib>
</jsp-config>
4在具体的jsp页面引用这个你本身定义的"huang"新标签
<%@ taglib prefix="x" uri="/huang" %>
5OK了,如今就能够用这个新标签来看你想干的事了
好比我如今就能够拼接变量了
好比之前我
select里面套变量的话就会报错According to TLD or attribute directive in tag file, attribute select does not accept any expressions
如今:
<x:out select="$casexml//案例//${node.name }" />
两个EL表达式搞定固然用<%=xx%>也能够了
显示正常
对了个人web版本是
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">