class ValidationSampleConfiguration {

	@Bean
	public ListItemReader<Person> itemReader() {<FILL_FUNCTION_BODY>}

	@Bean
	public ListItemWriter<Person> itemWriter() {
		return new ListItemWriter<>();
	}

	@Bean
	public BeanValidatingItemProcessor<Person> itemValidator() throws Exception {
		BeanValidatingItemProcessor<Person> validator = new BeanValidatingItemProcessor<>();
		validator.setFilter(true);
		validator.afterPropertiesSet();

		return validator;
	}

	@Bean
	public Step step(JobRepository jobRepository, JdbcTransactionManager transactionManager) throws Exception {
		return new StepBuilder("step", jobRepository).<Person, Person>chunk(1, transactionManager)
			.reader(itemReader())
			.processor(itemValidator())
			.writer(itemWriter())
			.build();
	}

	@Bean
	public Job job(JobRepository jobRepository, Step step) throws Exception {
		return new JobBuilder("job", jobRepository).start(step).build();
	}

}

		Person person1 = new Person(1, "foo");
		Person person2 = new Person(2, "");
		return new ListItemReader<>(Arrays.asList(person1, person2));
	
<no_super_class>