有没有办法在Rhino中访问Java Maps和Lists作为JavaScript对象?
我有一个Map只包含其他地图和基元和字符串列表,我想将它传递给Rhino脚本并对其进行处理,然后将修改后的对象返回给Java - 但由于它们是java.util .Map和java.util.List对象,我不能使用标准的JavaScript关联数组语法.即:fooMap.get("keyName")将工作,但fooMap.keyName并fooMap["keyName"]不会.
我不知道是否有特定于Rhino的方法来执行此操作,或者是否有一些转换/强制转换实用程序可以提供帮助.Commons BeanUtils是不够的,因为要将Map转换为bean(可以通过关联数组语法访问),首先必须创建一个包含所有命名mutator/accessors的类.我不会在运行时知道对象的结构.
我正在寻找一种方法来在JSP页面输出时将字符串计算为el.(我想当它的toString()方法在引擎盖下调用???)
例如,在我的页面中,如果我这样做:
<title>${bean.title}</title>
Run Code Online (Sandbox Code Playgroud)
title将是bean的属性,它将返回一个字符串.我想在bean.title中存储其他EL表达式,以便对它们进行评估.
所以,如果bean.title =" This is the ${param.pageType} page",显然会在写入页面之前进行评估.
有没有办法做到这一点?