org.springframework.context.access
Class ContextJndiBeanFactoryLocator
java.lang.Object
org.springframework.jndi.JndiAccessor
org.springframework.jndi.JndiLocatorSupport
org.springframework.context.access.ContextJndiBeanFactoryLocator
- All Implemented Interfaces:
- BeanFactoryLocator
public class ContextJndiBeanFactoryLocator
- extends JndiLocatorSupport
- implements BeanFactoryLocator
BeanFactoryLocator implementation that creates the BeanFactory from one or
more classpath locations specified in one JNDI environment variable.
This default implementation creates a ClassPathXmlApplicationContext.
Subclasses may override createBeanFactory for custom instantiation.
- Author:
- Colin Sampaleanu, Juergen Hoeller
Field Summary |
static String |
BEAN_FACTORY_PATH_DELIMITERS
Any number of these characters are considered delimiters between
multiple bean factory config paths in a single String value. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
BEAN_FACTORY_PATH_DELIMITERS
public static final String BEAN_FACTORY_PATH_DELIMITERS
- Any number of these characters are considered delimiters between
multiple bean factory config paths in a single String value.
- See Also:
- Constant Field Values
ContextJndiBeanFactoryLocator
public ContextJndiBeanFactoryLocator()
useBeanFactory
public BeanFactoryReference useBeanFactory(String factoryKey)
throws BeansException
- Load/use a bean factory, as specified by a factoryKey which is a JNDI
address, of the form
java:comp/env/ejb/BeanFactoryPath
. The
contents of this JNDI location must be a string containing one or more
classpath resource names (separated by any of the delimiters
',; \t\n
' if there is more than one. The resulting
BeanFactory (or subclass) will be created from the combined resources.
- Specified by:
useBeanFactory
in interface BeanFactoryLocator
- Parameters:
factoryKey
- a resource name specifying which BeanFactory the BeanFactoryLocator
should return for usage. The actual meaning of the resource name is specific to the
actual implementation of BeanFactoryLocator.
- Returns:
- the BeanFactory instance, wrapped as a BeanFactoryReference object
- Throws:
BeansException
- if there is an error loading or accessing the BeanFactory
createBeanFactory
protected BeanFactoryReference createBeanFactory(String[] resources)
throws BeansException
- Actually create the BeanFactory, given an array of class path resource strings
which should be combined. This is split out as a separate method so that subclasses
can override the actual type uses (to be an ApplicationContext, for example).
- Parameters:
resources
- an array of Strings representing classpath resource names
- Returns:
- the created BeanFactory, wrapped in a BeanFactoryReference
- Throws:
BeansException
Copyright (c) 2002-2005 The Spring Framework Project.