16

Play 2 Java のコントローラーから絶対 URL を取得したいと考えています。Scala についてまったく同じ質問を見つけましたが、Java で動作させることはできません。

public class MyController extends Controller {
    public static Result myMethod() {
        return ok();
    }

    public static Result test() {
        Logger.info(routes.MyController.myMethod().url); // Doesn't work !
        Logger.info(routes.MyController.myMethod().absoluteURL()); // Doesn't work !
        Logger.info(routes.MyController.myMethod().absoluteURL(true)); // Doesn't work !
        return ok();
    }
}

ご協力いただきありがとうございます !

4

2 に答える 2

26

リクエストを追加absoluteURL()

routes.MyController.myMethod().absoluteURL(request());
于 2012-06-22T15:31:52.913 に答える
2

これが 2.0 で機能するかどうかはわかりませんが、Java を使用しているのでうまくいくかもしれません。1.2.4で使用しています。

Router.getFullUrl("Controller.action")

幸運を !

編集:私は play.mvc.Router をインポートするので、これが 2.0 に存在しない場合は、似たようなものが見つかるかもしれません。

また、これはルーティングに関する play の 2.0 ドキュメントです。リバース ルーティングを確認してください。役立つかもしれません。

http://www.playframework.org/documentation/2.0.1/JavaRouting

于 2012-06-22T15:06:39.547 に答える