我是 Play Framework
的新手,并尝试在 Intellij
中设置一个非常小的项目。因此,我遵循了一些基本步骤:
- 在 Intellij 中创建一个新项目
- 使用 play 框架运行它并且它可以工作 (localhost:9000)
- 现在我在 Controller 包中添加了一个新的
Java
类文件。 - 在
config/routes
文件中添加路由配置。
TestController.java
public class TestController extends Controller {
public F.Promise<Result> createTest() {
return F.Promise.promise(() -> TestEndpoints.createTest(Json.fromJson(request().body().asJson(),
Test.class))).map((result) -> ok(Json.toJson(result)));
}
路线
POST /Test controllers.TestController.createTest()
当我运行该项目时,我收到此错误:
value createTest is not a member of object controllers.TestController
为什么会发生这种情况。我刚刚注意到我的 Controller 文件夹中有 Application.scala
而不是 Application.java
。我在这里做错了什么?
最佳答案
Play 切换为使用依赖注入(inject),因此在 Controller 中引用函数的方法是:
POST/Test @controllers.TestController.createTest()
注意“@”
关于java - Play框架中如何进行路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34403330/