【发布时间】:2014-10-28 17:43:34
【问题描述】:
只是另一个 Java 问题(我是菜鸟,我知道):是否可以在自定义控件中使用动态属性绑定和 Java bean 中的动态属性获取器?
我会解释的。我在自定义控件中广泛使用此功能:
<xp:inputTextarea id="DF_TiersM">
<xp:this.value><![CDATA[#{compositeData.dataSource[compositeData.fieldName]}]]></xp:this.value>
这用于数据源和字段名称都作为参数传递的控件。这行得通,到目前为止一切顺利。 现在,在某些情况下,数据源是托管 bean。当解释上述行时,显然会生成代码来获取或设置...某物的值。但究竟是什么?
我收到此错误:从 com.sjef.AnyRecord 类型的 bean 获取属性“SomeField”时出错,我猜这是正确的,因为我的 bean 中没有公共 getSomeField()。所有属性都在 bean 中动态定义。
那么我怎样才能让 XPages 读取属性呢?是否有一个通用的 getter(和 setter)允许我使用属性的名称作为参数,而不是包含在固定的方法名称中?如果 XPages 没有找到 getSomeField(),它是否会尝试其他方法,例如只是 get(String name) 左右?
一如既往:非常感谢您的帮助和回答!
【问题讨论】: