Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

CheckBoxNullValue.java 2.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.vaadin.tests.components.checkbox;
  2. import com.vaadin.data.Validator.InvalidValueException;
  3. import com.vaadin.server.AbstractErrorMessage;
  4. import com.vaadin.tests.components.TestBase;
  5. import com.vaadin.ui.Button;
  6. import com.vaadin.ui.Button.ClickEvent;
  7. import com.vaadin.ui.CheckBox;
  8. import com.vaadin.ui.Label;
  9. public class CheckBoxNullValue extends TestBase {
  10. @Override
  11. protected void setup() {
  12. // workaround for #6919
  13. getLayout().setWidth("100%");
  14. final CheckBox checkbox = new CheckBox("A checkbox");
  15. checkbox.setValue(null);
  16. addComponent(checkbox);
  17. final CheckBox requiredCheckbox = new CheckBox("A required checkbox");
  18. requiredCheckbox.setRequired(true);
  19. requiredCheckbox.setValue(null);
  20. addComponent(requiredCheckbox);
  21. final Label valueLabel = new Label("");
  22. final Button button = new Button("Validate");
  23. addComponent(button);
  24. button.addListener(new Button.ClickListener() {
  25. @Override
  26. public void buttonClick(ClickEvent event) {
  27. checkbox.setComponentError(null);
  28. requiredCheckbox.setComponentError(null);
  29. try {
  30. checkbox.validate();
  31. } catch (InvalidValueException e) {
  32. checkbox.setComponentError(AbstractErrorMessage
  33. .getErrorMessageForException(e));
  34. }
  35. try {
  36. requiredCheckbox.validate();
  37. } catch (InvalidValueException e) {
  38. requiredCheckbox.setComponentError(AbstractErrorMessage
  39. .getErrorMessageForException(e));
  40. }
  41. valueLabel.setValue("Checkbox: " + checkbox.getValue()
  42. + "; Required checkbox: " + requiredCheckbox.getValue());
  43. }
  44. });
  45. addComponent(valueLabel);
  46. }
  47. @Override
  48. protected String getDescription() {
  49. return "CheckBox should support null values.";
  50. }
  51. @Override
  52. protected Integer getTicketNumber() {
  53. return 6918;
  54. }
  55. }