我正在使用 CAS 3.5.2。我需要在身份验证之前将一些详细信息发送给 CAPTCHA 第三方,并在需要时在登录屏幕中显示验证码。如何自定义/覆盖处理登录的类?
如何自定义/覆盖处理登录的类?
处理登录尝试的类是AuthenticationViaFormAction.java
的 Spring Webflow 操作及其submit
方法。假设您使用的是 CAS 覆盖,则可以在覆盖的根目录中创建文件夹结构src/main/java/org/jasig/cas/web/flow/
,然后从此处按确切名称将该 Java 文件复制到其中。然后自定义类,构建并重新打包,在运行时,将使用类的编译版本,而不是默认情况下随 CAS 一起提供的版本。
为了确保构建成功,您需要确保:
您的 maven- 覆盖层包含 maven 编译器插件
- 您的 maven 覆盖包含编译时编译新的覆盖类所需的所有其他依赖项。
这个类会自动连接到Spring Webflow定义中,作为一个Spring Bean,所以你需要做的就是确保它的构建和重新打包是成功的。