Class JndiPropertySource
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:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.core.env.PropertySource
PropertySource.StubPropertySource
-
Field Summary
Fields inherited from class org.springframework.core.env.PropertySource
logger, name, source
-
Constructor Summary
ConstructorDescriptionJndiPropertySource
(String name) Create a newJndiPropertySource
with the given name and aJndiLocatorDelegate
configured to prefix any names with "java:comp/env/".JndiPropertySource
(String name, JndiLocatorDelegate jndiLocator) Create a newJndiPropertySource
with the given name and the givenJndiLocatorDelegate
. -
Method Summary
Modifier and TypeMethodDescriptiongetProperty
(String name) This implementation looks up and returns the value associated with the given name from the underlyingJndiLocatorDelegate
.Methods inherited from class org.springframework.core.env.PropertySource
containsProperty, equals, getName, getSource, hashCode, named, toString
-
Constructor Details
-
JndiPropertySource
Create a newJndiPropertySource
with the given name and aJndiLocatorDelegate
configured to prefix any names with "java:comp/env/". -
JndiPropertySource
Create a newJndiPropertySource
with the given name and the givenJndiLocatorDelegate
.
-
-
Method Details
-
getProperty
This implementation looks up and returns the value associated with the given name from the underlyingJndiLocatorDelegate
. If aNamingException
is thrown during the call toJndiLocatorDelegate.lookup(String)
, returnsnull
and issues a DEBUG-level log statement with the exception message.- Specified by:
getProperty
in classPropertySource<JndiLocatorDelegate>
- Parameters:
name
- the property to find- See Also:
-