Передача данных в аннотированный метод @Finally в Play Framework - PullRequest
1 голос
/ 04 января 2012

В Play !, я хочу что-то записать после выполнения действия контроллера, используя аннотацию @Finally. Однако мне нужны данные из базы данных, которую я отправил на мой взгляд. Можно ли получить доступ к этим данным в аннотированном методе @Finally?

Это метод, в частности:

@Finally
private static void logSomething() {
    //System.out.println("User: " + u.first_name);
    System.out.println(response);

    for (String key : response.headers.keySet()) {
        System.out.println(key);
    }
}

Как я могу передать параметры этому? Если я добавлю параметр в определение, он всегда будет нулевым (потому что как этот метод должен знать, какие данные передавать?) .. так возможно ли это?

1 Ответ

3 голосов
/ 04 января 2012

Если вы отправили его на просмотр, он будет доступен с карты renederArgs.

Итак, предположим, что вы вызвали свой метод рендеринга как-то так ...

User user = User.findById(someId);
render(user);

Тогда вы сможете получить к нему доступ в renderArgs следующим образом

User user = (User)renderArgs.get("user");
...