我有一个游戏! 2路由文件和控制器看起来像这样:
GET /books BooksController.getBooks(author: play.libs.F.Option[String])
public class BooksController extends Controller {
public static Result getBooks(play.libs.F.Option<String> author) {
...
}
}
我想重构它以使用Java 8的Optional
,但这会导致编译错误:
GET /books BooksController.getBooks(author: java.util.Optional[String])
public class BooksController extends Controller {
public static Result getBooks(java.util.Optional<String> author) {
...
}
}
我尝试创建自定义QueryStringBindable,但这迫使我将控制器的参数键入为可绑定的类型,而不是Optional
。这样做的其他任何方式?感谢。
答案 0 :(得分:3)
现在不可能。有一个github issue可以将F.Option
替换为java.util.Optional
。它将在Playframework 2.5.0
中发送。