Java play-pac4j和play 2.5:@requireAuthentication注释导致stacktrace
Java play-pac4j和play 2.5:@requireAuthentication注释导致stacktrace,java,authentication,sbt,playframework-2.5,Java,Authentication,Sbt,Playframework 2.5,我目前遇到了与play-pac4j库和play框架2.5相结合的问题 注释: @RequiresAuthentication(clientName = "FacebookClient") 在我的控制器中,方法导致此堆栈跟踪: ` com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:99) 在com.google.inject.internal.InjectorImpl.crea
我目前遇到了与play-pac4j库和play框架2.5相结合的问题 注释:
@RequiresAuthentication(clientName = "FacebookClient")
在我的控制器中,方法导致此堆栈跟踪:
`
com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:99)
在com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:658)上
)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:882)
`
这是我用于依赖项的build.sbt中的片段:
libraryDependencies ++= Seq(
"org.pac4j" % "play-pac4j" % "2.1.0",
"org.pac4j" % "pac4j" % "1.8.7",
"org.pac4j" % "pac4j-http" % "1.8.7",
"org.pac4j" % "pac4j-cas" % "1.8.7",
"org.pac4j" % "pac4j-openid" % "1.8.7",
"org.pac4j" % "pac4j-oauth" % "1.8.7",
"org.pac4j" % "pac4j-saml" % "1.8.7",
"org.pac4j" % "pac4j-oidc" % "1.8.7",
"org.pac4j" % "pac4j-gae" % "1.8.7",
"org.pac4j" % "pac4j-jwt" % "1.8.7",
"org.pac4j" % "pac4j-ldap" % "1.8.7",
"org.pac4j" % "pac4j-sql" % "1.8.7",
"org.pac4j" % "pac4j-mongo" % "1.8.7",
"org.pac4j" % "pac4j-stormpath" % "1.8.7")
我的SecurityModule类:
public class SecurityModule extends AbstractModule {
protected void configure() {
FacebookClient facebookClient = new FacebookClient("KEY", "SECRET_KEY");
Clients clients = new Clients("http://localhost:9000/callback",facebookClient);
Config config = new Config(clients);
config.addAuthorizer("admin",new RequireAnyRoleAuthorizer("ROLE_ADMIN"));
bind(Config.class).toInstance(config);
}
}
包play.libs.F在我的项目中可用。
我基本上都在尝试我想到的一切。现在我只想在路由配置文件中为我的一个地址启用facebook的简单身份验证。
我在这里发布了以下说明:。
任何帮助和提示都将不胜感激。查看问题页面,pac4j与Play 2.5不兼容。听起来pac4j使用的2.5中缺少了一些API。您在堆栈交易中看到的是Play 2.5删除了scala
f.Function
,f.Function0
类,而不是Java8java.util.function.*
类型。上面有doco
简而言之,要么等待pac4j 2.3.0面世,要么回到2.4版。谢谢!我想这可能与版本不匹配有关。有什么信息可以告诉我们什么时候可以期待pac4j 2.3.0?我看不到。2.5兼容性问题在23天前才提出来。2.2目前正在开发中,所以我想2.3没有我还没有约会。
public class SecurityModule extends AbstractModule {
protected void configure() {
FacebookClient facebookClient = new FacebookClient("KEY", "SECRET_KEY");
Clients clients = new Clients("http://localhost:9000/callback",facebookClient);
Config config = new Config(clients);
config.addAuthorizer("admin",new RequireAnyRoleAuthorizer("ROLE_ADMIN"));
bind(Config.class).toInstance(config);
}