读书人

JSF的EL表达式可以嵌套吗?action=quot;{m

发布时间: 2012-01-10 21:26:51 作者: rapoo

JSF的EL表达式可以嵌套吗?action="#{menu.navigation}"
假设有一个bean,
class bean{
private String bindingMethod;
public String getBindingMethod(){
return bindingMethod;
}

public void setBindingMethod(String bindingMethod){
this.bindingMethod = bindingMethod;
}
}
..
bean.setBindingMethod( "#{business.do} ")
..
xhtml
<h:commandLink value= "#{bean.name} " action= "#{bean.bindingMethod} "/>

问题是
bindingMethod是动态的,怎样使action的表达式可以直接用bindingMethod中的表达式 "#{business.do} "来代替?



[解决办法]
可以这么做 只是我的想法

可以用jstl 或者jsp 在页面来一个if else语句。
<c:test>
</c:test>


<%if(){%>
<h:commandLink value= "#{bean.name} " action= "#{bean.bindingMethod1} "/>
<%}else{%>
<h:commandLink value= "#{bean.name} " action= "#{bean.bindingMethod2} "/>
<%}%>


或者
<h:commandLink value= "#{bean.name} " action= "#{bean.bindingMethod1} " rendered= "#{bean.ifRendered} "/>

<h:commandLink value= "#{bean.name} " action= "#{bean.bindingMethod2} " rendered= "#{not bean.ifRendered} "/>

读书人网 >Java Web开发

热点推荐