0
サービス内の@PostConstructでアノテーションされたメソッドからリソースファイルを読み込む際に問題があります。PostConstructメソッドでリソースをロードする
@Service
public class MyService {
@Autowired
ResourceLoader resourceLoader;
//@Autowired
//private ApplicationContext applicationContext;
@PostConstruct
public void initialize() {
Resource res = resourceLoader.getResource("classpath*:myResource.csv");
//Resource res = applicationContext.getResource("classpath*:myResource.csv");
... use loaded resource ...
}
}
私はエラーIllegalStateException: The resources may not be accessed if they are not currently started
を受け取り続けます。
どこが間違っていますか?おそらく、Beanの初期化の順序で何か?
@PostConstructは、Beanが完全に初期化された後に呼び出されるため、理想的にはResourceLoaderが注入されている必要があります。おそらく、サーブレットのバージョンの問題?ここで答えを見てください:http://stackoverflow.com/a/29453024/1969874 –