我将我的 java play 框架应用程序迁移到 play 2.4,但在更改后的路由器方面遇到了问题。我收到此错误消息:
[NullPointerException: null]
In /home/apps/kikstar/target/scala-2.11/routes/main/router/Routes.scala:957
954 // @LINE:77
955 case controllers_Application_login35_route(params) =>
956 call {
957 controllers_Application_login35_invoker.call(Application_1.login())
958 }
959
960 // @LINE:80
961 case controllers_Application_javascriptRoutes36_route(params) =>
962 call {
路由器中的线路如下所示:
POST /login controllers.Application.login()
以及前端的调用
@(rootForm: Form[Root])
@helper.form(action = routes.Application.login(), 'id -> "userform") {
@helper.inputText(rootForm("username"))
@helper.inputPassword(rootForm("pass"))
<input type="submit" value="Login">
}
以及Application中的方法
public Result login() {
Form<Root> filledForm = rootForm.bindFromRequest();
Root created = filledForm.get();
Logger.info(created.username + " " + created.pass);
...
}
所有其他路线均正常运行。不过,这是通过表单助手调用的唯一路由。
最佳答案
啊,虽然我很喜欢Play,但我不喜欢这样的东西,它们通常出现在迁移等之后。我不确定原因,是IDE还是SBT。我相信调用 sbt cleancompile 应该可以解决问题,或者清除 IDE 缓存(如果有)。我假设您经历过 Migration guide .
关于java - 迁移到 2.4 后 Play 的路由文件出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37103367/