Cadre de jeu: Mélange de contrôleur Java et Scala / vues
Il y a un paramètre .enablePlugins (PlayScala) dans le construit.fichier sbt qui définit mon projet sur scala.
Maintenant, je veux également utiliser Java. J'ai trouvé qu'il existe deux versions de données.Forme (jouer.données._ et l'importation de jouer.API.données._). J'ai donc utilisé le type complet pour la liste des paramètres.
@(loginForm: play.data.Form[User_LoginForm])
@import helpers._
@helper.form(action = routes.ApplicationJava.login(), 'id -> "loginForm") {
@helper.inputText(loginForm("username"))
@helper.inputPassword(loginForm("password"))
}
Mais maintenant j'ai le même problème avec les fonctions d'aide et je ne sais pas quel est le nom complet de helper pour qu'ils fonctionnent avec play.données.Formulaire (Java).
Est existe-t-il un moyen d'utiliser les fonctions d'assistance pour Java même lorsque le projet est défini sur scala?
Modifier:
Le message d'erreur pour cette ligne >> @helper.inputText(loginForm ("username"))
type mismatch; found : play.data.Form.Field required: play.api.data.Field
Modifier:
Voici la partie correspondante de mon contrôleur Java.
public static Result showForm() {
Form<User_LoginForm> userForm = play.data.Form.form(User_LoginForm.class);
User_LoginForm ulf = new User_LoginForm();
ulf.username = "abc";
userForm = userForm.fill(ulf);
return ok(views.html.userLoginJava.render(userForm));
}
1 answers
PlayMagicForJava est censé convertir implicitement votre jeu.données.Forme.Terrain en jeu.API.données.Champ
implicit def javaFieldtoScalaField(jField: Field): Field
Conversion implicite d'un champ de formulaire Java Play en un champ de formulaire Scala approprié.