2016-11-03 5 views
1

PickerFieldでvalueChangeListenerの値を取得した場合、2回目に同じ顧客を選択するとnullが返されます。valueChangeListenerのイベントでヌル値が返される

バダジンバグですか?私は今、新しいアイテムは、現在と同じIDを持っている場合PickerField LookupActionは二回(NULL値を持つと選択して)のsetValue()メソッドを呼び出すためにGitHub

+0

値を変更した後、新しい選択したエントリで新しいイベントがトリガされた可能性があります。 (ちょっと速い推測) –

答えて

1

上の例プロジェクトを作成しました

@Named("fieldGroup.customer") 
PickerField customer; 


@Override 
public void init(Map<String, Object> params) { 
    super.init(params); 

    customer.addValueChangeListener(e -> { 
     if (e.getValue() != null) { 
      showNotification("e.value: " + e.getValue(), NotificationType.HUMANIZED); 
     } else { 
      showNotification("e.value is null", NotificationType.ERROR); 
     } 
    }); 
} 

以前のアイテムが新しいアイテムに確実に置き換えられるようにします。これにより、nullのValueChangeListenerと新しい値の2つの呼び出しが行われます。

これはCUBAに関するAPIの既知の問題で、プラットフォームの次のメジャーリリースで変更される可能性がありますが、null e.getValue()とバインドされているエンティティ属性をチェックする必要がありますピッカーフィールド。

関連する問題