在 Spring Boot (Stormpath) 上覆盖 RequestEventListenerAdapter 方法

Overriding RequestEventListenerAdapter methods on Spring Boot (Stormpath)

我一直在尝试在用户登录或创建帐户时覆盖 Stormpath 的 RequestEventListenerAdapter methods to populate an account's Custom Data

我创建了一个扩展 RequestEventListenerAdapter 的 class 并试图覆盖 on SuccessfulAuthenticationRequestEvent 和 on LogoutRequestEvent 以向控制台进行一些简单的输出以进行测试如果他们正在工作(例如一个简单的 "Hello world!")。但是,当我对应用程序执行任何这些操作时,none 个事件都会触发。所以我想知道这里是否有人可以帮助我,我不确定我应该声明的 bean 是否在正确的位置,或者我是否缺少某种配置来触发事件。感谢您的帮助,如果需要更多信息,请告诉我。

这是我的习惯class:

import com.stormpath.sdk.servlet.authc.LogoutRequestEvent;
import com.stormpath.sdk.servlet.authc.SuccessfulAuthenticationRequestEvent;
import com.stormpath.sdk.servlet.event.RequestEventListenerAdapter;

public class CustomRequestEventListener extends RequestEventListenerAdapter {

@Override
public void on(SuccessfulAuthenticationRequestEvent e) {
    System.out.println("Received successful authentication request event: {}\n" + e);
}

@Override
public void on(LogoutRequestEvent e) {
    System.out.println("Received logout request event: {}\n" + e);
}
}

这是我不确定放在哪里的 bean:

@Bean
public RequestEventListener stormpathRequestEventListener() {
    return new CustomRequestEventListener();
}

你所做的看起来完全正确。我创建了 a sample project 演示如何让事情正常进行。你可以看看它(它很简单)并与你拥有的进行比较。

我还添加了关于如何获取它的说明运行所以你可以看到它确实有效。