Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to inject ApplicationContext itself

I want to inject an ApplicationContext itself to a bean.

Something like

public void setApplicationContext(ApplicationContect context) {   this.context = context; } 

Is that possible in spring?

like image 440
mibutec Avatar asked Feb 06 '11 14:02

mibutec


People also ask

How do you inject application context?

Easy, using the ApplicationContextAware interface. Then in your actual applicationContext you only need to reference your bean. Show activity on this post. Yes, just implement the ApplicationContextAware -interface.

Can we Autowire application context?

Getting ApplicationContext To access the application context, we can autowire the ApplicationContext interface or implement the ApplicationContextAware .


2 Answers

Previous comments are ok, but I usually prefer:

@Autowired private ApplicationContext applicationContext; 
like image 194
sinuhepop Avatar answered Sep 22 '22 03:09

sinuhepop


Easy, using the ApplicationContextAware interface.

public class A implements ApplicationContextAware {   private ApplicationContext context;    public void setApplicationContext(ApplicationContext context) {       this.context = context;   } } 

Then in your actual applicationContext you only need to reference your bean.

<bean id="a" class="com.company.A" /> 
like image 41
Johan Sjöberg Avatar answered Sep 23 '22 03:09

Johan Sjöberg