ok, so you're doing exactly what I mentioned in my previous post:
Code:
FlatFileItemWriter write1 = (FlatFileItemWriter)delegates.get(0);
FlatFileItemWriter write2 = (FlatFileItemWriter)delegates.get(1);
First, it can't work because the delegates are proxies (they're step-scoped). Second, you don't need to do that. Do it this way:
Code:
ItemWriter write1 = (ItemWriter)delegates.get(0);
ItemWriter write2 = (ItemWriter)delegates.get(1);
so try to make it work and then we'll see how to use generics.