java - Play 框架表单 (Java)

标签 java scala playframework dependency-injection

我正在看《Play!》框架,使用 Java(不想同时学习新框架和新语言 - 我将在学习时结合 Scala),到目前为止它非常棒。

不过,我在表单方面遇到了一些困难。我仍然停留在第一部分 here而且,据我所知,我以某种方式需要获取 FormFactory 的实例或相关的东西,但是我不知道它可能位于哪个包中,或者是否 formFactory > 也是另一个神奇的方法(如ok)。

如有任何指点,我们将不胜感激!

编辑这是我的代码:

package controllers;

import com.google.inject.Inject;
import play.data.FormFactory;

import play.api.data.Form;
import play.mvc.*;

public class User extends Controller {
    @Inject
    FormFactory form;
    final static Form<model.User> userForm = form(model.User.class);

    public Result post() {
        model.User user = userForm.bindFromRequest().get();
        return ok("The form was received!: " + user);
    }
}

play.data 包对我来说不会退出。也许我安装不正确?需要明确的是,我确实从 IntelliJ 启动了这个项目

最佳答案

一个问题是您的表单不应该是静态的,因为在注入(inject) FormFactory 之前无法对其进行初始化。

根据文档此调用

Form<model.User> userForm = form(model.User.class);

应该是

Form<model.User> userForm = form.form(model.User.class)

as formFormFactory 的方法。

如果类路径中缺少包,则说明存在某些配置问题或 Play 版本错误。一个工作项目通常可以通过activator获得。

关于java - Play 框架表单 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37240180/

相关文章:

java - 在 AIX 上设置命令输出的列宽

java - Java 中的字节默认占用 4 个字节?

scala - 如何访问案例类字段字段的字符串名称中的值

html - 使用 Play form helper 对某些字段进行并排布局

java - 错误: Driver cannot be resolved to a variable- selenium java eclipse

java - HBase Java连接

scala - 如何(管道)在模式匹配工作中?

scala - 在 spray-json 中返回带有对象属性子集的 json 响应

java - 数据库 [默认] 未找到驱动程序 - Playframework 1.4.x 中的 MySQL

java - 从 Java Play Framework 2.0 List<object> 生成/导出 excel 文件