2017-01-17 13 views
0

Как сбросить значение TextArea в Vaadin, если валидация при сохранении не удалась. Мой код ниже:Vaadin Как сбросить значение TextArea в Vaadin, если валидация при сохранении не сработала

  1. он дает текстовую область с текстом «A», извлеченным из БД;
  2. затем я хочу изменить текстовую область на текст «B»
  3. , когда проверка на «B» hass не удалась, и B не сохранен в DB. Я ожидаю увидеть текст «A» в текстовой области, но текст «B» отображается.

VerticalLayout content = new VerticalLayout(); 
TextArea text = new TextArea(); 
text.setValue(controller.getFile().getName());  
text.setRequired(true); 
Button save = new Button("Save", event -> { 
      try { 
       newName.validate(); 
       if (controller.getFile().updateName((text.getValue()))){ 
        close();      
       } else{ 
        System.out.println("WRONG TEXT!"); 
       }  
      } catch (Validator.InvalidValueException ex) { 
       text.setValidationVisible(true);  
      } 
     }); 
     save.setSizeFull(); 
     content.addComponent(text); 
     content.addComponent(save); 
     setContent(content); 

Что случилось с моим кодом?

ответ

0

решаемая, просто Java в updateName() метод:

public boolean updateName(String newName) { 
     if (controller.getFile()!=null) { 
      controller.saveFileName(controller.getFile()); 
      file.setName(newName); // mistake was in this line. 
      }     
      return false; 
    } 

 Смежные вопросы

  • Нет связанных вопросов^_^