File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Spring and the fly likes Automatic object initializing based on type in spring Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCA/OCP Java SE 7 Programmer I & II Study Guide this week in the OCPJP forum!
JavaRanch » Java Forums » Frameworks » Spring
Bookmark "Automatic object initializing based on type in spring" Watch "Automatic object initializing based on type in spring" New topic
Author

Automatic object initializing based on type in spring

Lucas Vo
Greenhorn

Joined: Mar 06, 2013
Posts: 1
Hi there everybody,

I have a list of Class types that I need to iterate over and for every type in that list, Spring needs to automatically find the correct sort of object to initialize.

For example : I have a ClassA and ClassB. When for example there is a type User, a ClassA needs to be initialized with certain parameters (which are defined in the context.xml). When for example there is a type of Message, it should also make an object from type ClassA but with different parameters, which are again defined in the context.xml.

How would I go about doing this? I have looked at the inversion of control feature of spring but cannot seem to find the correct implementation for my specific purpose

One idea was that I make a bean for every kind of possible type such as



Kind regards,

Merlijn
Mark Spritzler
ranger
Sheriff

Joined: Feb 05, 2001
Posts: 17258
    
    6

I don't quite understand what you mean.

But I can point you to some ideas.

1) Use @PostConstruct and @Autowired on a List<typesHere>, in the postConstruct loop through the list and create instances?
2) Use Spring Expression language in your config, calling a method that goes through your list and creates instances based on that.
3) implement a BeanFactoryPostProcessor that looks at all the BeanDefinitions in your ApplicationContext and for every type, create a BeanDefinition for your class types
4) implement a BeanFactory or POJO factory, which creates those objects.

Just ideas without understanding your needs.

Mark


Perfect World Programming, LLC - Two Laptop Bag - Tube Organizer
How to Ask Questions the Smart Way FAQ
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Automatic object initializing based on type in spring