2017-01-29 3 views
2

Ich versuche, ein Java-Formular in Play Framework zu implementieren. Ich mache alles wie in der Dokumentation, aber ich habe einen Fehler. https://www.playframework.com/documentation/2.5.x/JavaFormsPlay Framework 2.5 Anfänger. JavaForms Fehler

Mein Code:

import play.api.data.Form; 
import play.data.FormFactory; 

public class Products extends Controller { 

@Inject FormFactory formFactory; 
Form<Product> productForm = formFactory.form(Product.class); 
... 

Der Fehler:

no instance(s) of type variable(s) T exist so that play.data.Form<T> conforms to play.api.data.Form<models.Product> 

Nach dem Import-Bibliothek play.api.data Änderung dieser Fehler play.data ich habe:

1) Error injecting constructor, java.lang.NullPointerException 
at controllers.Products.<init>(Products.java:18) 
while locating controllers.Products 
for parameter 2 at router.Routes.<init>(Routes.scala:32) 
while locating router.Routes 
while locating play.api.inject.RoutesProvider 
while locating play.api.routing.Router 
for parameter 0 at play.api.http.JavaCompatibleHttpRequestHandler <init>(HttpRequestHandler.scala:200) 
while locating play.api.http.JavaCompatibleHttpRequestHandler 
while locating play.api.http.HttpRequestHandler 
for parameter 4 at play.api.DefaultApplication.<init>(Application.scala:221) 
at play.api.DefaultApplication.class(Application.scala:221) 
while locating play.api.DefaultApplication 
while locating play.api.Application 

Antwort

0

Sie machen einen Import von play.api.data.Form, der aus Play Jar kommt, aber FormFactory gibt play.data.Form zurück, nicht die vorherigen, also müssen Sie nur den Import ändern.

+0

@xzayt, plz werfen Sie einen Blick auf die aktualisierte Antwort – Mysterion

+0

Ich habe bereits einen anderen Fehler. Könnten Sie bitte die obigen Protokolle überprüfen? Die Fehlerzeile in Products.Java befindet sich in der Deklaration der Products-Klasse. –

+0

Mann, cmon das ist nicht wie SO sollte verwendet werden – Mysterion

Verwandte Themen