Это документ о том, как загрузить файл в play2: https://github.com/playframework/Play20/wiki/ScalaFileUploadМы не можем использовать способ play1 для загрузки файла в игру 2.0?
Но у меня есть еще один вопрос: не можем ли мы использовать путь play1 больше?
В play1, я могу загрузить файл следующим образом:
routes
--------
post /upload Application.upload
Application.java
----------------
public static void upload(File file) { ... }
Действие upload
получит загруженный файл автоматически.
Но как сделать то же самое в play2?
Я пробовал:
routes:
--------
POST /upload controllers.Application.upload
Application.scala
-----------------
def upload(file: File) = Action { ...}
Но это не компилируется, то сообщение об ошибке:
not enough arguments for method upload: (file: java.io.File)
Затем добавить параметр к маршрутам:
POST /upload controllers.Application.upload(file: java.io.File)
Это еще сообщает об ошибке:
No QueryString binder found for type java.io.File. Try to implement an implicit QueryStringBindable for this type.