玩 Framework 2.5 初学者。 JavaForms 错误

Play Framework 2.5 Beginner. JavaForms error

我正在尝试在 Play 框架中实现一个 Java 表单。我按照文档中的说明进行所有操作,但出现错误。 https://www.playframework.com/documentation/2.5.x/JavaForms

我的代码:

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

public class Products extends Controller {

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

错误:

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

将导入库 play.api.data 更改为 play.data 后出现此错误:

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

你导入了来自Play jar的play.api.data.Form,但是FormFactory returns play.data.Form,不是之前的,所以你只需要改变导入。