请教一个EL问题

我现在有个关系ValueExpression的问题想请教大家,

原来的程序用的是标签,我想在想替换掉标签
<j4j:getVariableMap target="#{updatesMap}" value="#{task}"/>
我想替换的就是这个标签
这是一个得到TASK变量的标签
updatesMap我现在已经在代码代码中得到了,并out 到了页面,但出现的问题是,虽然变量可以得到,但发现新添加的变量保存不了,我换了scope=session但仍然保存不了,我发现在标签的源码中有一个地方是我的源码里没有的,就是关于ValueExpression的

标签的源码:
final FacesContext facesContext = FacesContext.getCurrentInstance();
final ELContext elContext = facesContext.getELContext();
final Object value = valueExpression.getValue(elContext);
final Map<String,Object> updatesMap;
final TaskInstance task = (TaskInstance) value;
updatesMap = new UpdatesHashMap(task.getVariables());
targetExpression.setValue(elContext, updatesMap);
其中targetExpression是ValueExpression类型的。
而我没有用标签,所以就没有用ValueExpression
而是直接updatesMap=task.getVariables();把updatesMap值OUT了给了页面
两个差别就在ValueExpression,我的问题是,究竟ValueExpression起到了什么作用呢?使得标签的源码就可以work,而我的而不能work.谢谢!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值