The Spring Framework

## org.springframework.jndi
Class JndiObjectLocator

    java.lang.Object
      org.springframework.jndi.JndiAccessor
          org.springframework.jndi.JndiLocatorSupport
              org.springframework.jndi.JndiObjectLocator

All Implemented Interfaces:
  InitializingBean

Direct Known Subclasses:
  AbstractSlsbInvokerInterceptor, JndiObjectFactoryBean, JndiObjectTargetSource, JndiRmiClientInterceptor

    public abstract class JndiObjectLocator

extends JndiLocatorSupport
implements InitializingBean

Convenient superclass for JNDI-based service locators, providing configurable lookup of a specific JNDI resource.

Exposes a `"jndiName"` property. This may or may not include the "java:comp/env/" prefix expected by J2EE applications when accessing a locally mapped (Environmental Naming Context) resource. If it doesn't, the "java:comp/env/" prefix will be prepended if the "resourceRef" property is true (the default is false) and no other scheme (e.g. "java:") is given.

Subclasses may invoke the `lookup()` method whenever it is appropriate. Some classes might do this on initialization, while others might do it on demand. The latter strategy is more flexible in that it allows for initialization of the locator before the JNDI object is available.

Since:
  1.1
Author:
  Juergen Hoeller
See Also:
  `setJndiName(java.lang.String)`, `JndiAccessor.setJndiTemplate(org.springframework.jndi.JndiTemplate)`, `JndiAccessor.setJndiEnvironment(java.util.Properties)`, `JndiLocatorSupport.setResourceRef(boolean)`, `lookup()`

Field Summary

Fields inherited from class org.springframework.jndi.JndiLocatorSupport
`CONTAINER_PREFIX`

Fields inherited from class org.springframework.jndi.JndiAccessor
`logger`

Constructor Summary
`JndiObjectLocator()`

Method Summary
`void` `afterPropertiesSet()` Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).
`Class` `getExpectedType()` Return the type that the located JNDI object is supposed to be assignable to, if any.
`String` `getJndiName()` Return the JNDI name to look up.
`protected Object` `lookup()` Perform the actual JNDI lookup for this locator's target resource.
`void` `setExpectedType(Class expectedType)` Specify the type that the located JNDI object is supposed to be assignable to, if any.
`void` `setJndiName(String jndiName)` Specify the JNDI name to look up.

Methods inherited from class org.springframework.jndi.JndiLocatorSupport
`convertJndiName, isResourceRef, lookup, lookup, setResourceRef`

Methods inherited from class org.springframework.jndi.JndiAccessor
`getJndiEnvironment, getJndiTemplate, setJndiEnvironment, setJndiTemplate`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JndiObjectLocator

    public JndiObjectLocator()

Method Detail

### setJndiName

    public void setJndiName(String jndiName)

  Specify the JNDI name to look up. If it doesn't begin with "java:comp/env/" this prefix is added automatically if "resourceRef" is set to "true".

  Parameters:
    `jndiName` - the JNDI name to look up
  See Also:
    `JndiLocatorSupport.setResourceRef(boolean)`

### getJndiName

    public String getJndiName()

  Return the JNDI name to look up.

### setExpectedType

    public void setExpectedType(Class expectedType)

  Specify the type that the located JNDI object is supposed to be assignable to, if any.

### getExpectedType

    public Class getExpectedType()

  Return the type that the located JNDI object is supposed to be assignable to, if any.

### afterPropertiesSet

    public void afterPropertiesSet()
                            throws IllegalArgumentException,
                                   NamingException

  Description copied from interface: `InitializingBean`
  Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).

  This method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.

  Specified by:
    `afterPropertiesSet` in interface `InitializingBean`
  Throws:
    `IllegalArgumentException`
    `NamingException`

### lookup

    protected Object lookup()
                     throws NamingException

  Perform the actual JNDI lookup for this locator's target resource.

  Returns:
    the located target object
  Throws:
    `NamingException` - if the JNDI lookup failed or if the located JNDI object is not assigable to the expected type
  See Also:
    `setJndiName(java.lang.String)`, `setExpectedType(java.lang.Class)`, `JndiLocatorSupport.lookup(String, Class)`

The Spring Framework

Copyright © 2002-2008 The Spring Framework.