ユーザーが1つのグループからのみ人を選択できるようにする名前コントロールが必要です。私はグループ名でいくつかのパラメータを追加する可能性を持っています。Xpages - xe:namePickerコントロールのためのカスタムbeanNamePickerにパラメータを追加する方法
私は、次のnamepicker
<xe:namePicker id="namePicker1"
for="myControlId" dialogTitle="Select person">
<xe:this.dataProvider>
<xe:beanNamePicker dataBean="mybean.BeanPickerGroupMembers" loaded="true">
</xe:beanNamePicker>
</xe:this.dataProvider>
</xe:namePicker>
は私の豆は、このようになりますしている:
public class BeanPickerGroupMembers implements INamePickerData {
public BeanPickerGroupMembers() {}
@Override
public IPickerResult readEntries(IPickerOptions options) {
List<IPickerEntry> entries = new ArrayList<IPickerEntry>();
//do something according to desired group name
return new SimplePickerResult(entries, -1);
}
@Override
public List<IPickerEntry> loadEntries(Object[] ids, String[] attributeNames) {return null;}
@Override
public String[] getSourceLabels() {return null;}
@Override
public boolean hasCapability(int capability) {return false;}
}
にはどうすればnamePickerから私のBeanにいくつかのグループのparamを渡すことができますか?私はいくつかのスコープ変数を使用するかもしれませんが、異なるグループを選択したプロバイダで2つ以上のピッカーコントロールを使用する可能性を持ちたいと思います。
カスタムnamePickerBeanを使用する単一の名前のピッカーがあればうまくいきます。私の場合、私は異なるグループを選択して私のxpage上の私のプロバイダで2つ以上のピッカーコントロールを使用する可能性があります。 –
あなたの質問からそれを見ることができませんでした....しかし、私はそれがうまくいくと思います。フォームの関連する部分に焦点を当てて、ビュースコープのvar(またはbean)を設定するだけでよいので、名前ピッカーはあなたが呼び出したものを検出できます。 「現在の要素」(つまり「id」)を取得できるかどうかはわかりませんが、それは別のパスになる可能性もあります。 –
はい、このソリューションでは、キー値をスコープに追加するイベントを追加する必要があります。さて、ラベルと値を計算するsigle value pickerを追加することになりました。 –