Весенний ботинок с Javax Event - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь заставить весеннюю загрузку работать с событиями cdi. У меня есть следующий класс, который вызывает событие.

@Component
@UIScope
public class Login extends LoginOverlay
{

    @Autowired
    private UserInfo userInfo;

    @Inject
    private Event<UpdateCWViewEvent> cwevent;

    @PostConstruct
    public void init()
    {
        addLoginListener(new ComponentEventListener<LoginEvent>()
        {

            @Override
            public void onComponentEvent(LoginEvent event)
            {
                userInfo.login(event.getUsername(), event.getPassword());
                if (userInfo.isLoggedIn())
                {
                    setButtonLabel();
                    close();
                    cwevent.fire(new UpdateCWViewEvent());
                }
            }
        });     
    }
}

И в другом классе следующий метод

public void update(@Observes(notifyObserver=Reception.IF_EXISTS) UpdateCWViewEvent event)
{
    //do something
}

Теперь у меня есть следующая проблема. Мне нужна реализация javax.enterprise.event.Event. Я пытался взять шов и использовать стандартную Eventimpl. Теперь я попытался настроить класс Spring Configuration, чтобы сообщить моему приложению о реализации моего события.

@Configuration
public class Config
{

    @Bean
    public Event<UpdateCWViewEvent> cwEvent()
    {
        //return EventImpl.of(injectionPoint, beanManagerImpl);
    }
}

Я не знаю, что делать сjectionPoint и beanManagerImpl. Кто-нибудь из вас имел такую ​​же проблему и решил ее? Или у кого-нибудь есть альтернатива для запуска простых событий cdi в приложении с весенней загрузкой?

Большое спасибо и оставайтесь здоровыми!

...