>>> In our case, I don't see any real purpose for all those interfaces beyond linking together unrelated objects just because they hold the same kind object.
I think this is a worthy purpose nevertheless and feel very strongly that we should keep them - I don't see the harm.... BTW, I could argue the same case against *InitializingBean* and *DisposableBean* in view of *@PostConstruct* and *@PreDispose*, but I still think they are very useful.