ドキュメントの例に従って、クエリ文字列にオプションのパラメーターを含むルートをPlayframework 2.0(Scala)で設定しようとしています。
GET /my/path controllers.foo.Bar.list(offset: Int ?= 0, limit: Int ?= 20)
ただし、コンパイルすると、次のエラーメッセージが表示されます。
object controllers.foo.Bar does not take parameters
私は、controllers.foo.Bar.listメソッドが実際に2つのIntをパラメーターとして受け取ることを確認しました。重要な観察の1つ(私は願っています)は、これが以前はコントローラーパッケージに直接Controllerクラスを持っていたときに機能していたことかもしれません。
controllers.Bar.list
しかし、コントローラーに「foo」サブパッケージを導入するとすぐに機能しなくなりました。
私が間違っていることについての入力は非常に高く評価されています!
更新:申し訳ありませんが、私はもう少し実験を行いましたが、理由はまったく異なるもののようです(d'oh)。私の具体的なケースでは、私のコントローラークラスは
controllers.foo.List.list
そしてそれは名前の衝突を引き起こしたようでした。別の名前( "FooList")に名前を変更すると、問題が解決しました。