2016-12-07 14 views
1

HelloWorldServiceを実装している場所で、dropwizardサンプルアプリケーションをキックスタートしています。私のクラスは以下の通りです。Dropwizard - バインドされた不一致:バインドされたパラメータの有効な代用品ではありません。

しかし、私はエラーに

バウンドのミスマッチを取得しています:タイプTaskManagerConfigurationはTaskManagerApplication.java内とHelloWorldServiceで 型アプリケーション

の有界パラメータの有効な 代わるものではありません。 Javaクラス。

誰もが私にこれを助けることができますか?

TaskManagerConfiguration.java

package com.nagra.taskManager.config; 

import com.fasterxml.jackson.annotation.JsonProperty; 
import com.yammer.dropwizard.config.Configuration; 

import org.hibernate.validator.constraints.*; 

public class TaskManagerConfiguration extends Configuration { 

    @NotEmpty 
    @JsonProperty 
    private String template; 

    @NotEmpty 
    @JsonProperty 
    private String defaultName = "Stranger"; 

    public String getTemplate() { 
     return template; 
    } 

    public String getDefaultName() { 
     return defaultName; 
    } 
} 

HelloWorldService.java

package com.nagra.taskManager.resources.service; 

import com.nagra.taskManager.TaskManagerApplication; 
import com.yammer.dropwizard.Service; 
import com.yammer.dropwizard.config.Bootstrap; 
import com.yammer.dropwizard.config.Environment; 

public class HelloWorldService extends Service<TaskManagerApplication> { 

    @Override 
    public void initialize(Bootstrap<TaskManagerApplication> arg0) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void run(TaskManagerApplication arg0, Environment arg1) 
     throws Exception { 
     // TODO Auto-generated method stub 

    } 

} 

とTaskManagerApplication.java

package com.nagra.taskManager; 

import com.nagra.taskManager.config.TaskManagerConfiguration; 

import io.dropwizard.Application; 
import io.dropwizard.setup.Bootstrap; 
import io.dropwizard.setup.Environment; 

public class TaskManagerApplication extends Application<TaskManagerConfiguration> { 

    public static void main(final String[] args) throws Exception { 
     new TaskManagerApplication().run(args); 
    } 

    @Override 
    public String getName() { 
     return "TaskManager"; 
    } 

    @Override 
    public void initialize(final Bootstrap<TaskManagerConfiguration> bootstrap) { 
     // TODO: application initialization 
    } 

    @Override 
    public void run(final TaskManagerConfiguration configuration, 
       final Environment environment) { 
     // TODO: implement application 
    } 

} 
+0

あなたが使用している 'dropwizard'バージョンはありますか? – nullpointer

+1

あなたの 'TaskManagerConfiguration'に' import com.yammer.dropwizard.config.Configuration; 'の代わりに' import io.dropwizard.Configuration; 'を使用してください – nullpointer

+0

私は1.0.5バージョンを使用しています。はい、TaskManagerConfigurationのimport io.dropwizard.Configurationを使用して、TaskManagerConfigurationの問題を解決しました。しかし、問題はまだHelloWorldService.javaクラスに存在します... –

答えて

0

いくつかのこと -

  1. Configurationクラスがio.dropwizard.Configurationからインポートされ、現在使用されている `com.yammer.dropwizard.config.Configuration;あなたのTaskManagerConfiguration.javaにあります。あなたがリリースnotes from dropwizardを通過した場合

  2. - com.yammer.dropwizard.Serviceは、バージョン0.6.2に前dropwizardを使用した、これはimport io.dropwizard.Application;に移動されました。したがって、現在このアプリケーションを実行するためのメインクラスとしてTaskManagerApplicationを使用することができます。

関連する問題