Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Vaadin 7 and Spring injection - не работает 100% 
:(
    Опции темы
Killer_13
  Дата 8.8.2014, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 12.1.2008
Где: Germany

Репутация: нет
Всего: 1



Здравствуйте, я интегрировал Spring and Vaadin 7, но @Inject у меня работает только в главном классе AdminPanelMain 

Код

@Component
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
@PreserveOnRefresh
@Slf4j
public class AdminPanelMain extends UI {

    @Inject //It works
    private UserService userService;

    private static final long serialVersionUID = 1L;

//  @Inject
    private Panel tagsPanel = new TagsPanel();

UserService Service - просто тестовый класс.

Код

@Service
@Slf4j
public class UserService {

//  @Autowired
//  private UserRepository userRepository;

    public void saveUser() {

//      log.info("count: {}", userRepository.count());
        log.warn("saved");
    }
}



TagsPanel - хочу и здесь иметь сервис, но он нуль, так же как и в других похожих компонентах.
Код

public class TagsPanel extends Panel implements Property.ValueChangeListener {

    private static final long serialVersionUID = 1L;

    @Autowired //null
    private UserService userService;


    public TagsPanel() {

        initLayout();

    }
.......
}



ApplicationInitializer
Код

public class ApplicationInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext servletContext) throws ServletException {

        AnnotationConfigWebApplicationContext rootContext = new AnnotationConfigWebApplicationContext();

        rootContext.register(ApplicationConfiguration.class);
        registerSpringContextLoaderListener(servletContext, rootContext);
        registerVaadinServlet(servletContext, rootContext);
    }

    private void registerVaadinServlet(ServletContext servletContext, AnnotationConfigWebApplicationContext rootContext) {

        VaadinServlet vaadinServlet = new VaadinServlet();
        ServletRegistration.Dynamic vaadinServletRegistration = servletContext.addServlet("vaadinServlet",
                vaadinServlet);
        vaadinServletRegistration.setInitParameter("ui", AdminPanelMain.class.getName());
        vaadinServletRegistration.setInitParameter("UIProvider", SpringUIProvider.class.getName());
        vaadinServletRegistration.setLoadOnStartup(1);
        vaadinServletRegistration.addMapping("/*");

    }

    private void registerSpringContextLoaderListener(ServletContext servletContext,
            AnnotationConfigWebApplicationContext rootContext) {
        servletContext.addListener(new ContextLoaderListener(rootContext));
        servletContext.addListener(new ContextCleanupListener());
        servletContext.addListener(new RequestContextListener());
    }
}


Когда я создаю объект TagsPanel, то объект UserService=null - почему?

Спасибо за помощь.
PM MAIL   Вверх
xoslv
Дата 9.2.2015, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 195
Регистрация: 12.1.2007

Репутация: нет
Всего: нет



Как вариант, Вы можете при инициализации tagsPanel, в качестве аргумента передать ранее полученный объект userService.
Но если хотите понять поему именно в данной ситуации NULL - stackTrace в студию!
--------------------
Не всё то маздай, что синее!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0610 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.