Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql *无法识别的字段位于:database,您的意思是?:-metrics-server-logging-DROPWIZARD_Postgresql_Jdbc_Yaml_Dropwizard - Fatal编程技术网

Postgresql *无法识别的字段位于:database,您的意思是?:-metrics-server-logging-DROPWIZARD

Postgresql *无法识别的字段位于:database,您的意思是?:-metrics-server-logging-DROPWIZARD,postgresql,jdbc,yaml,dropwizard,Postgresql,Jdbc,Yaml,Dropwizard,在应用程序配置文件(server.yml)中添加数据库详细信息后,我无法启动dropwizard应用程序 server.yml(应用程序配置文件) 运行dropwizard应用程序后,我可以看到: has an error: * Unrecognized field at: database Did you mean?: - metrics - server - logging 在应用程序配置java文件中,必须为“数据库”添加匹配属性。如果指定

在应用程序配置文件(server.yml)中添加数据库详细信息后,我无法启动dropwizard应用程序

server.yml(应用程序配置文件)

运行dropwizard应用程序后,我可以看到:

has an error:
  * Unrecognized field at: database
    Did you mean?:
      - metrics
      - server
      - logging

在应用程序配置java文件中,必须为“数据库”添加匹配属性。如果指定的属性是标准属性(看起来不错!),则可以使用
DataSourceFactory
类型:

public class ExampleConfiguration extends Configuration {
    @Valid
    @NotNull
    @JsonProperty
    private DataSourceFactory database = new DataSourceFactory();

    public DataSourceFactory getDataSourceFactory() {
        return database;
    }

    public void setDatabase(DataSourceFactory database) {
        this.database = database;
    }
}

这里的示例:

除了dropwizard示例给出的代码之外,您还需要为数据库属性添加一个setter

@Valid
@NotNull
@JsonProperty("database")
private DataSourceFactory database = new DataSourceFactory();

public DataSourceFactory getDataSourceFactory() {
    return database;
}

public void setDatabase(DataSourceFactory database) {
    this.database = database;
}

谢谢如果成功了,这个答案应该被标记为correct。我也有同样的错误,但是对于yml的服务器部分:“unrecognedfieldat:http”我应该如何实现这个部分的配置类属性?谢谢。这对我不起作用:(我已经有了我的字段的getter,仍然面临着问题。请检查链接文档页面?自从这个答案之后,情况可能已经发生了变化……看起来他们现在可能需要JsonProperty注释(或者可能示例只是指定了它)。这将无法单独工作-设置程序也需要存在。添加一个设置程序,这将非常有效。
@Valid
@NotNull
@JsonProperty("database")
private DataSourceFactory database = new DataSourceFactory();

public DataSourceFactory getDataSourceFactory() {
    return database;
}

public void setDatabase(DataSourceFactory database) {
    this.database = database;
}