2012-06-09 4 views
7

Перенаправление на внутренний URL-адрес кажется возможным с помощью метода redirect() в контроллере.Как перенаправить на внешний URL в Play Framework 2.0 (Java)

public static Result index() { 
    return redirect(routes.Application.tasks()); 
} 

Однако я хочу перенаправить внешний URL-адрес в контроллер. redirect (String) принимает только внутренние URL-адреса в качестве параметра.

Что требуется, это основа Play эквивалент стандартного Java сервлетов перенаправлять т.е.

request.sendRedirect(String url) 

ответ

19

Иногда простое решение просто ... работает:

return redirect("http://stackoverflow.com/questions/10962694"); 

Также стоит использовать other availabe redirects такие как

  • seeOther(String url)
  • movedPermanently(String url)
  • temporaryRedirect(String url)

и т.д.

+0

Эй Маркус, спасибо за Ваш ответ. Три других метода, которые вы упомянули, отлично подходят для меня. Однако простое решение «redirect (String)» дает мне эту ошибку - «Исключение исполнения [StackOverflowError: null]. ' –

+0

@ManishKumar eeechhhh .... это объявление метода ... это означает, что вам нужно вставить некоторую строку там, то есть' String url = "http: //domain.tld"; return seeOther (url); 'или' return seeOther ("http: //domain.tld"); ' – biesior

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