org.springframework.jndi
Class JndiPropertySource
java.lang.Object
org.springframework.core.env.PropertySource<JndiLocatorDelegate>
org.springframework.jndi.JndiPropertySource
public class JndiPropertySource
- extends PropertySource<JndiLocatorDelegate>
PropertySource implementation that reads properties from an underlying Spring
JndiLocatorDelegate.
By default, the underlying JndiLocatorDelegate will be configured with its
"resourceRef" property set to
true, meaning that names looked up will automatically be prefixed with
"java:comp/env/" in alignment with published
JNDI
naming conventions. To override this setting or to change the prefix, manually
configure a JndiLocatorDelegate and provide it to one of the constructors here
that accepts it. The same applies when providing custom JNDI properties. These should
be specified using JndiAccessor.setJndiEnvironment(java.util.Properties)
prior to construction of the JndiPropertySource.
Note that StandardServletEnvironment includes a JndiPropertySource by default, and any
customization of the underlying JndiLocatorDelegate may be performed within an
ApplicationContextInitializer or WebApplicationInitializer.
- Since:
- 3.1
- Author:
- Chris Beams, Juergen Hoeller
- See Also:
JndiLocatorDelegate,
ApplicationContextInitializer,
WebApplicationInitializer,
StandardServletEnvironment
JndiPropertySource
public JndiPropertySource(String name)
- Create a new
JndiPropertySource with the given name
and a JndiLocatorDelegate configured to prefix any names with
"java:comp/env/".
JndiPropertySource
public JndiPropertySource(String name,
JndiLocatorDelegate jndiLocator)
- Create a new
JndiPropertySource with the given name and the given
JndiLocatorDelegate.
getProperty
public Object getProperty(String name)
- Return the value associated with the given name,
null if not found.
This implementation looks up and returns the value associated with the given
name from the underlying JndiLocatorDelegate. If a NamingException
is thrown during the call to JndiLocatorDelegate.lookup(String), returns
null and issues a DEBUG-level log statement with the exception message.
- Specified by:
getProperty in class PropertySource<JndiLocatorDelegate>
- Parameters:
name - the property to find- See Also:
PropertyResolver.getRequiredProperty(String)