Jsf 如何使用Java EE Security@CustomFormAuthenticationMechanismDefinition重定向到原始请求url

Jsf 如何使用Java EE Security@CustomFormAuthenticationMechanismDefinition重定向到原始请求url,jsf,jakarta-ee,java-security,Jsf,Jakarta Ee,Java Security,当我使用 @FormAuthenticationMechanismDefinition( loginToContinue = @LoginToContinue( loginPage = "/login.xhtml", useForwardToLogin = false)) 然后,在成功登录后,用户将被重定向到他们请求的原始页面 但我希望对身份验证表单进行更多控制,因此我使用: @CustomFormAuthenti

当我使用

@FormAuthenticationMechanismDefinition(
        loginToContinue = @LoginToContinue(
                loginPage = "/login.xhtml",
                useForwardToLogin = false))
然后,在成功登录后,用户将被重定向到他们请求的原始页面

但我希望对身份验证表单进行更多控制,因此我使用:

@CustomFormAuthenticationMechanismDefinition(
        loginToContinue = @LoginToContinue(
                loginPage = "/login.xhtml",
                useForwardToLogin = false))
我遵循这个例子:

但问题是,现在,成功登录后,用户总是被重定向到index.xhtml,而不是他们请求的原始页面


有没有一种方法可以通过CustomFormAuthenticationMechanismDefinition实现相同的行为?

我通过向我的
p:commandButton
中添加
ajax=“false”
来实现它。JavaEE安全框架正确设置了重定向头,但PrimeFaces p:commandButton忽略了它。

对于普通(非jsf/facelets)html页面,您将如何做到这一点?doing给了我一些提示。。。试过了吗?哦,在示例中,您使用的代码应该是内联的。否则,删除源代码可能会消失,没有人知道您的代码是什么。您发布的链接中的代码与我在JavaEE安全规范的示例中看到的代码有很大区别。如果你发布了一篇文章,我会在一个答案中写一些可能是答案或不是答案的东西(我手头没有一台pc进行测试),关于使用来自新JavaEE安全API JSR375的CustomFormAuthenticationMechanismDefinition的信息并不多。您在上面发布的谷歌搜索查询乍一看并没有产生任何有用的结果。大多数结果都是关于Spring框架或新API出现之前的旧版本JavaEE的。我也看不出我发布的示例与规范中的示例有什么大的区别。我会调查的,不管怎样,谢谢。还是请,请,请在这个问题上做个回答。否则它将被投票表决为关闭良好的捕获。。。我也错过了这个。。。对我来说,更糟糕的是,我错过了这一点,因为我遇到了同样的问题,与前国产AA框架,仍然是一个问题是非常感谢。但奇怪的是,你被重定向到了索引页面……而你提到的示例没有
ajax=false
,现在我仍然有点困惑。更重要的是,问题中有一个错误,这是问题的另一部分。我错误地将的
newAuthentication
标志设置为
true
,作为解决方法,因为我在成功登录后仍停留在登录页面上。这就解释了重定向到索引页面的原因,因为在这种情况下没有使用
发送\u CONTINUE
。相反,返回了
SUCCESS
,示例代码重定向到
index.xhtml
。我没有时间提供一个清晰的例子,但我希望这可以帮助遇到同样问题的人。可以(几乎)从你发布的链接复制/粘贴一个。不花时间去创造一个新的环境对我们来说并不是一个很好的激励(甚至相反)去帮助别人。此外,它还违反了SO准则,问题可能因不包含任何内容而结束。请花10-15分钟创建一个