xml中的cdata标记
……
<arg name="script"><![CDATA[
"Finished".equals(jn.getStep(2).getStatus()) &&"fail".equals(propertySet.getString("action1"))
]]></arg>
……
我用sax解析的时候想提取cdata中的java代码,然后当做布尔判断条件,请问大神们怎么操作……
…………
……
……找到解决办法了!!!……
0、<![CDATA[--只是做字符串处理--]]>:这个是最基础的,解析出来直接用就行了。
1、<![CDATA[--javascript代码--]]> :解析时在js中可以用eval表达式进行字符串->表达式转换。
2、<![CDATA[--java代码--]]>:
因为解析出来肯定是一大堆字符串,所以面临一个比较恶心的问题,如何将复杂的字符串code转换成javacode,初步想到的是 用classloader进行字符串编译处理,不过比较麻烦,详情可以参考:http://blog.csdn.net/luanxj/article/details/1393611
但是这种方法比较恶心,因为对字符串code进行重新编译。突然想到osworkflow的官方配置文件中有cdata中镶嵌java代码的情况,赶紧找到以前做电子流的项目,看了一下源码,才发现它们使用了beanshell,其实就是源码解释语言,几行代码就解决问题了。
我了个去,大哥,不是问你java语法啊,是在问如何取cdata中的代码并执行,麻烦看清楚问题好不?
追答呵呵 真是醉了 什么都不懂来提问 好好学习吧
追问你是弱智么?看不懂问题么?看你的回答就知道你几斤几两了……java学前班的小屁孩就不要出来秀下限了,哥已经找到方法了,小屁孩赶紧学习学习
追答呵呵 真是逗 还没出社会的不会说话就不要说话,小心被人干死
问题自己都描述不清楚 在哪儿瞎BB,秀的什么优越感
哥出来工作的时候,你估计还在尿裤子呢,见多了你这种不懂还爱装b的煞笔