3

打电话时

MyAuthProvider.handleSignup(ctx());

播放返回IllegalStateException:无值

仅当我在调用之前调用 myAccount.save() 时才会发生这种情况。

myAccount 是我在让系统处理注册和创建用户之前首先创建的实体模型。我用Ebeans。

线:

!@6faie6mj9 - 内部服务器错误,用于 (POST) [/signup] ->

play.api.Application$$anon$1: Execution exception[[IllegalStateException: No value]]
    at play.api.Application$class.handleError(Application.scala:289) ~ [play_2.10.jar:2.1.3]
    at play.api.DefaultApplication.handleError(Application.scala:383) [play_2.10.jar:2.1.3]
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$play$core$server$netty$PlayDefaultUpstreamHandler$$handle$1$1.apply(PlayDefaultUpstreamHandler.scala:143) [play_2.10.jar:2.1.3]
    at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$play$core$server$netty$PlayDefaultUpstreamHandler$$handle$1$1.apply(PlayDefaultUpstreamHandler.scala:139) [play_2.10.jar:2.1.3]
    at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise.scala:113) [play_2.10.jar:2.1.3]
    at play.api.libs.concurrent.PlayPromise$$anonfun$extend1$1.apply(Promise.scala:113) [play_2.10.jar:2.1.3]
java.lang.IllegalStateException: No value
    at play.libs.F$None.get(F.java:547) ~[play_2.10.jar:2.1.3]
    at play.data.Form.get(Form.java:525) ~[play-java_2.10.jar:2.1.3]
    at com.feth.play.module.pa.providers.password.UsernamePasswordAuthProvider.getSignup(UsernamePasswordAuthProvider.java:153) ~[play-authenticate_2.10-0.2.5-SNAPSHOT.jar:0.2.5-SNAPSHOT]
    at com.feth.play.module.pa.providers.password.UsernamePasswordAuthProvider.authenticate(UsernamePasswordAuthProvider.java:84) ~[play-authenticate_2.10-0.2.5-SNAPSHOT.jar:0.2.5-SNAPSHOT]
    at com.feth.play.module.pa.PlayAuthenticate.handleAuthentication(PlayAuthenticate.java:442) ~[play-authenticate_2.10-0.2.5-SNAPSHOT.jar:0.2.5-SNAPSHOT]
    at com.feth.play.module.pa.providers.password.UsernamePasswordAuthProvider.handleSignup(UsernamePasswordAuthProvider.java:145) ~[play-authenticate_2.10-0.2.5-SNAPSHOT.jar:0.2.5-SNAPSHOT]
4

1 回答 1

0

我通过使用播放命令解决了这个问题:

play clean
play clean-files;
play update
play reload
play compile
play run

如果您使用的是激活器,请用激活器替换播放。

于 2015-04-27T13:30:26.757 回答