2012-06-01 1 views
0

Как создать функцию бездействия на контроллере Play 2? Есть ли способ создать функции утилит для контроллера?Воспроизвести 2 Методы бездействия в контроллере

public class Register extends Controller { 
    @BodyParser.Of(BodyParser.FormUrlEncoded.class) 
    public static Result registerByForm() { 
     ....... 

    } 

    // this is utility function 
    private static User getFacebookIdByToken(String fbToken) { 
    FacebookClient facebookClient = new DefaultFacebookClient(fbToken); 
    User user = facebookClient.fetchObject("me", User.class); 
    return user; 
    } 
} 

ответ

2

В Play 1.0 не было никакого способа отличить действие и действие static void foo(), следовательно, аннотация @Util. Мое предположение было бы в том, что Play 2.0 может различать на основе типа возврата, если метод является действием или нет, что может привести только к неприятностям, если по какой-либо причине вы захотите создать метод возврата Result в Controller, который это не действие.

3

Да, вы можете поместить его так, как вы показали. В любом случае, я считаю, что лучшим способом для метода является класс User.

-1

В Play 1.2 вы можете изменить модификатор доступа с общественностью до частным. This post объясняет подробности

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