2013-12-04 2 views
1

Чтобы быть более точным, я пытаюсь опустить «java.lang» в маршрутах какРаботает ли routeImport для типов параметров в Playframework-2.x?

GET  /users/profile/:userId    controllers.Users.getProfile(userId: java.util.UUID) 

К сожалению,

routesImport += "java.util.UUID" 

в build.sbt не работает, а если я указываю " UUID "вместо" java.lang.UUID "I get" not found: type UUID "

Итак, можно ли импортировать некоторые типы, а затем использовать только имя типа в маршрутах, а не указывать полное имя пакета каждый раз ?

+0

Я получил это, чтобы работать для некоторых классов, но не для других. 'java.util.UUID' не работает для меня, но когда я определяю настраиваемые типы, он работает. –

ответ

0

routesImport не работает для файла routes. Методы и параметры контроллера должны быть полностью квалифицированными. Единственные исключения (я думаю) на самом деле будут вашим примером java.lang.* и, возможно, scala.*. Таким образом, вы можете сделать String foo вместо java.lang.String foo, но классы в любом другом пакете должны быть полностью квалифицированы каждый раз.

+0

Разве это не так? Это очень уродливо, чтобы полностью квалифицировать все. – cdmckay

+0

@cdmckay Насколько я знаю, это все еще так. Немного больше информации о [этой теме Группы Google] (https://groups.google.com/d/topic/play-framework/k5MT68xFzDA/discussion) о том, что означает «routesImport». Я думаю, что для разворачивания реверсивного маршрутизатора необходимы полные имена. – estmatic

Смежные вопросы