そのため、Spring バッチ プログラム用にカスタムの ApplicationEvent と ApplicationListener をセットアップしていました。ここのセクション 3.13.2の指示に従いました。
これが私が作成したApplicationEventです
import org.springframework.context.ApplicationEvent;
public class DataReaderEvent extends ApplicationEvent {
private final String progress;
private final String text;
public DataReaderEvent(Object source, String progress, String text) {
super(source);
this.progress = progress;
this.text = text;
}
public String getProgress() {
return progress;
}
public String getText() {
return text;
}
}
そして私の ApplicationListener
import org.springframework.context.ApplicationListener;
public class DataReaderNotifier implements ApplicationListener<DataReaderEvent> {
private String progress;
private String text;
@Override
public void onApplicationEvent(DataReaderEvent event) {
this.progress = event.getProgress();
this.text = event.getText();
}
public String getProgress() {
return progress;
}
public String getText() {
return text;
}
}
私が抱えている問題は、ApplicationListener が ApplicationListener < DataReaderEvent > を実行しようとしていると不平を言うことです
「タイプ ApplicationListener はジェネリックではありません。引数 DataEventReader でパラメーター化することはできません」
例にかなり忠実に従っていると思うので、なぜこれが当てはまるのかわかりません。誰かに何かアイデアがあれば、大歓迎です。