본문 바로가기

반응형

Batch

[Spring Batch] cannot be cast to org.springframework.batch.item.~ 모니터링 배치를 만들 일이 생겼습니다. 미발송 데이터를 읽어 슬랙으로 알림 처리를 하는 배치인데, 리더를 구현 후 JUnit으로 테스트를 시도했더니 본 적 없던 에러가 발생했습니다. 늘 쓰던 JdbcPagingItemReader였는데... 레퍼런스의 예제와도 동일한데 아래와 같이 에러가 발생했습니다. java.lang.ClassCastException: com.sun.proxy.$Proxy254 cannot be cast to org.springframework.batch.item.support.AbstractItemCountingItemStreamItemReader java.lang.ClassCastException: com.sun.proxy.$Proxy254 cannot be cast to org.s.. 더보기
[Spring Batch] If you want to run this job again, change the parameters. 이전에 스프링 배치의 기본 개념을 설명한 글에서 JobParameter에 대한 간단한 설명을 한 적이 있습니다. https://halfstorage.tistory.com/31?category=857145 스프링 배치 기본 개념 스프링 배치는 스프링에서 기본적으로 제공하는 일괄처리를 위한 기능입니다. - Job 하나의 배치 작업을 Job이라고 하며, Job은 최소 하나 이상의 Step을 수행해야합니다. - JobInstance Job�� halfstorage.tistory.com "JobInstance와 JobParameters는 1:1 관계입니다." 1:1 관계를 지키지 않고 Job을 실행시키게 되면 처음 동작할 Job은 1:1 관계임으로 정상 동작하지만 두 번째 동작할 때부터는 아래와 같은 에러가 발생.. 더보기
[Spring Batch] 기본 개념 스프링 배치는 스프링에서 기본적으로 제공하는 일괄처리를 위한 기능입니다. - Job 하나의 배치 작업을 Job이라고 하며, Job은 최소 하나 이상의 Step을 수행해야합니다. - JobInstance Job이 실행될 때 하나의 Job 실행 단위입니다. 매시간마다 동작하는 Job이 있다고 가정하면 한시간 전에 동작한 Job과 현재 동작하는 Job은 서로 다른 JobInstance입니다. 다만, 한시간 전의 Job이 실패했다면 동일한 JobInstance로 실행하게 됩니다. - JobExecution JobInstance에 대한 한번의 실행을 나타내는 객체입니다. JobInstance와 달리 Job의 성공, 실패 여부와 관련 없이 다른 JobExecution이 생성됩니다. 실패 또한 Job이 한번 실행되었.. 더보기

반응형