Spring Application Context Provider

Accessing the application context in java class is very easy. if you want to access the application context beans in any java class we have to set the application context at the time of server loading for that follow the following process

The following class is used to set values in the application context dynamically.

AppContext.java

package com.doj.spring;

import org.springframework.context.ApplicationContext;

/**
 * @author Dinesh
 *
 */

public class AppContext {

    private static ApplicationContext ctx;

    /**
     * Injected from the class "ApplicationContextProvider" which is automatically loaded during Spring-Initialization.
     */
    public static void setApplicationContext(ApplicationContext applicationContext) {
        ctx = applicationContext;
    }

    /**
     * Get access to the Spring ApplicationContext from everywhere in your Application.
     * 
     * @return
     */
    public static ApplicationContext getApplicationContext() {
        return ctx;
    }

}


The following class is used to set the application context at the time of loading the server.

ApplicationContextProvider.java

package com.doj.spring;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import com.doj.spring.AppContext;

/**
 * @author Dinesh
 *
 */
public class ApplicationContextProvider implements ApplicationContextAware {

    public void setApplicationContext(ApplicationContext ctx) throws BeansException {
        // Wiring the ApplicationContext into a static method
        AppContext.setApplicationContext(ctx);
    }
}


Place the following line in applicationContext.xml file

applicationContext.xml

<?xml version="1.0"?>
<!DOCTYPE faces-config PUBLIC
  "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
  "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<!-- Application Context Provider -->
 <bean id="contextApplicationContextProvider" class="com.doj.spring.ApplicationContextProvider"></bean>



Spring Application Context provider, in any java class, provide Application context, dynamically.


Spring Application Context Provider


No comments:

Post a Comment