java - 如何将 Java 对象设置为自定义控件上的数据源

标签 java xpages datasource

我有一个 Java Bean,其方法返回 PaymentItem 类型的对象

Payments.getItem(viewScope.vsRIndex);

此方法返回 ArrayList<PaymentItem> 中的第 n 个项目

我的主页上有一个按钮,它在主页上呈现一个自定义控件,并将 viewScope 设置为正确的索引值。

<xp:panel id="panelPaymentEntry"
    rendered="#{javascript:(viewScope.vsShowPayment) ? true : false;}">
    <xc:ccCOMPaymentInput></xc:ccCOMPaymentInput>
</xp:panel><!-- panelPaymentEntry -->

我想将 ccCOMPaymentInput 的数据源设置为 Payments.getItem(viewScope.vsRIndex) 返回的 PaymentItem

我将此代码添加到 createObject

try{
    Payments.getItem(viewScope.vsRIndex);
}catch(e){
    //do nothing
}

使用 var = pItem

但似乎并没有创建对象 pItem。 我走在正确的轨道上吗?或?????

最佳答案

通常,最简洁的方法是在自定义控件上创建自定义属性来指定上下文对象 - value 是常规选择。所以你会得到类似的东西:

<xc:ccCOMPaymentInput value="#{javascript:Payments.getItem(viewScope.vsRIndex)}"/>

然后,在控件内,您可以将其引用为 compositeData.value。例如:

<xp:inputText value="#{compositeData.value.someTextField}"/>

您可能引用的对象数据源也可以工作,但并不总是必需的。

关于java - 如何将 Java 对象设置为自定义控件上的数据源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32596357/

相关文章:

java - 如何制作一个简单的公钥密码算法?

Java - 创建一个可以通过其他方法操作和打印的二维数组

jquery - 启用文件下载控件和 View 控件中附件链接的拖放

java - 如何从多个类中的数据源获取相同的连接?

spring - 使用 Spring jdbcTemplate 时的 ConnectionPooling 配置

java - JPasswordField 验证

java - 如何将 Java 对象的实例从 Python 传递到 Java 应用程序

xpages - 隐藏字段 $$viewid、$$xspsubmitid、$$xspexecid、$$xspsubmitvalue 和 $$xspsubmitscroll 的意义

xpages - 有人使用过导航器的“ View ”或“文件夹列表”项的过滤器属性吗?

java - 数据源的自动提交是否应该设置为 false?