Vaadin получает значение строки вне init

#java #vaadin

#java #vaadin

Вопрос:

Возможно ли для меня извлечь значение строки «code» вне метода init и использовать его в другом методе?

Если да, то каким образом?

Спасибо за помощь.

Редактировать: строка ДОЛЖНА быть в методе init.

Код:

 protected void init(VaadinRequest request) {
    main();
    String code = request.getParameter("code");
    if (code != null){
        System.out.println("Code: "   code);
        next();
    }
}
  

Комментарии:

1. Является ли код, который вы предоставили, вашим собственным классом?

2. @JamesB Оно записывается по умолчанию при создании нового приложения Vaadin. Но код внутри класса принадлежит мне.

3. Можете ли вы добавить код в этот класс?

4. @JamesB Да, я могу. У вас есть предложение?

Ответ №1:

Вы могли бы сохранить код как переменную экземпляра:

 public class VaadinApplication {

    private String code = null; // <-- Instance variable

    protected void init(VaadinRequest request) {
        main();
        String code = request.getParameter("code");
        if (code != null){
            this.code = code; // <-- store code here
            System.out.println("Code: "   code);
            next();
    }

    protected void otherMethod() {
        this.code; // <-- Get code here and use it
        //...
    }
}