java如何在getter方法中找到调用组件?
在我的页面中,我有2个(以及更多)图像容器。我想绑定它们的url属性,以便每个容器根据其id具有不同的源。 我的JSP中有如下内容:
<webuijsf:image id="image2" binding="#{Page1.img_2}" url="#{Page1.imgSRC}" />
在支持bean代码中,我有一个imgSRC
getter,但是我希望能够在getter中知道它是从哪个组件调用的,并且基于组件的ID,我将使用某种switch
来决定返回到组件的URL
这可能吗?如果是,怎么做
# 1 楼答案
当你在使用四年前被废弃的Woodstock组件库时,我敢打赌你正在维护一个遗留的JSF 1。x应用程序,但从未升级以替换废弃的Woodstock组件库。JSF 1中有一个。x没有API提供的方法,该方法允许您获取getter中的当前组件
在JSF2中。你可以用^{} 来做这个:
但是在JSF1中。x此方法不可用。我建议采用另一种方法。如果唯一的目的是消除属性/getter样板代码,那么可以使用
Map
来保存这些值。地图可以被视为EL中的Javabeans比如:
可以用作: