gpt4 book ai didi

java - 尝试使用 XPage 将多值字段连接到 Java Bean 时出现类型不匹配

转载 作者:行者123 更新时间:2023-12-01 17:39:07 26 4
gpt4 key购买 nike

我有这个代码:

<xe:formTable id="formTable1" formTitle="User Roles">
<xe:formRow id="formRow1" label="Category Admin">
<xe:djextNameTextBox id="edtCatAdmin" multipleSeparator="," value="#{exhibitorInfo.categoryAdmin}" />
<xe:namePicker id="namePicker1" for="edtCatAdmin">
<xe:this.dataProvider>
<xe:namePickerAggregator>
<xe:this.dataProviders>
<xe:dominoNABNamePicker addressBookSel="first" groups="false" people="true" />
<xe:dominoViewNamePicker labelColumn="mailinName" viewName="lkp_MailIn" label="Group Mailboxes" />
</xe:this.dataProviders>
</xe:namePickerAggregator>
</xe:this.dataProvider>
</xe:namePicker>
</xe:formRow>
</xe:formTable>

目标是让多值名称选择器将其值保存在 Java Bean 而不是文档字段中。因此,名称选择器指向 xe:djextNameTextBox,以便轻松删除名称,并且 xe:djextNameTextBox 绑定(bind)到我的 bean。

使用此 Java 代码 -

public void setCategoryAdmin(ArrayList<String> categoryAdmin) {
System.out.println("Set CategoryAdmin - List");
this.categoryAdmin = categoryAdmin;
}


public void setCategoryAdmin(String categoryAdmin) {
System.out.println("Set CategoryAdmin - String");
if (!this.isBlankString(categoryAdmin)) {
ArrayList<String> al = new ArrayList<String>();
al.add(categoryAdmin);
this.setCategoryAdmin(al);
}
}

它似乎适用于多个值。但如果仅使用单个值,我会收到错误:java.lang.IllegalArgumentException:参数类型不匹配

我认为这与 XPage 返回多个值的数组和单个值的字符串有关。但我不知道如何实现这一点。

如有任何建议,我们将不胜感激!谢谢!!

--更新--Camac 链接到的博文中的这段代码似乎有效。

public Object getCategoryAdmin() {
System.out.println("getCategoryAdmin");
return this.categoryAdmin;
}


@SuppressWarnings("unchecked")
public void setCategoryAdmin( Object inputMulti ) {
this.categoryAdmin = this.translateToVector( inputMulti );
}

@SuppressWarnings("unchecked")
public Vector translateToVector( Object object ){
if( object instanceof String ){
Vector list = new Vector();
list.add( object );
return list;
}

if( object instanceof List ){
return (Vector)object;
}

return null;
}

最佳答案

我记得遇到过同样的问题,并且使用此链接中的提示有所帮助: http://dontpanic82.blogspot.com.au/2012/06/multi-value-fields-and-beans-in-xpages.html

也许尝试让公共(public) getter 和 setter 使用 java.lang.Object,而不是使用 2 个不同的?

关于java - 尝试使用 XPage 将多值字段连接到 Java Bean 时出现类型不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60992395/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com