Jouer Cadre: Rediriger vers la méthode du contrôleur avec des arguments

Je suis en création d'une application web avec PLAY framework 2.2.1 et essaie d'afficher toutes disponibles http obtenir les paramètres de la requête pour le site dans la barre d'adresse, même ceux qui ne sont pas définis dans la requête. Dans les cas où
pas tous http obtenir les paramètres sont définis, je tiens à ajouter les unset les paramètres avec les valeurs par défaut et de faire une redirection.

J'ai un site qui peut être demandé à l'OBTENIR:

GET /test controllers.Application.test(q:String, w:String ?= null, f:String ?= null, o:String ?= null)

Voici la méthode que j'aimerais avoir dans controllers.Application:

public static Result test(String q, String w, String f, String o){

    ...

    //In case not all parameters where set
    if (reload == 1){
            return redirect(controllers.Application.test(qDefault, wDefault, fDefault, oDefault));
    }
    else {
        ok(...);
    }
}

Le problème est que la fonction redirect() prend une Chaîne et non un objet de Résultat.

Ma première solution est d'écrire

return controllers.Application.test(qDefault, wDefault, fDefault, oDefault);

Mais malheureusement la barre d'adresse n'est pas à jour.

Mon deuxième solution est de construire la chaîne manuellement:

return redirect("/test?q=" + query + "&f=" + f + "&w=" + w + "&o=" + showOptions);

Cela fonctionne bien, mais il n'y a pas d'autres façon plus élégante façon de le faire?