Class DefaultManagedAwareThreadFactory
java.lang.Object
org.springframework.util.CustomizableThreadCreator
org.springframework.scheduling.concurrent.CustomizableThreadFactory
org.springframework.scheduling.concurrent.DefaultManagedAwareThreadFactory
- All Implemented Interfaces:
 Serializable,ThreadFactory,InitializingBean
public class DefaultManagedAwareThreadFactory
extends CustomizableThreadFactory
implements InitializingBean
JNDI-based variant of 
CustomizableThreadFactory, performing a default lookup
 for JSR-236's "java:comp/DefaultManagedThreadFactory" in a Jakarta EE environment,
 falling back to the local CustomizableThreadFactory setup if not found.
 This is a convenient way to use managed threads when running in a Jakarta EE environment, simply using regular local threads otherwise - without conditional setup (i.e. without profiles).
Note: This class is not strictly JSR-236 based; it can work with any regular
 ThreadFactory that can be found in JNDI. Therefore,
 the default JNDI name "java:comp/DefaultManagedThreadFactory" can be customized
 through the "jndiName" bean property.
- Since:
 - 4.0
 - Author:
 - Juergen Hoeller
 - See Also:
 
- 
Field Summary
Fields - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoidInvoked by the containingBeanFactoryafter it has set all bean properties and satisfiedBeanFactoryAware,ApplicationContextAwareetc.voidsetJndiEnvironment(Properties jndiEnvironment) Set the JNDI environment to use for JNDI lookups.voidsetJndiName(String jndiName) Specify a JNDI name of theThreadFactoryto delegate to, replacing the default JNDI name "java:comp/DefaultManagedThreadFactory".voidsetJndiTemplate(JndiTemplate jndiTemplate) Set the JNDI template to use for JNDI lookups.voidsetResourceRef(boolean resourceRef) Set whether the lookup occurs in a Jakarta EE container, i.e.Methods inherited from class org.springframework.util.CustomizableThreadCreator
createThread, getDefaultThreadNamePrefix, getThreadGroup, getThreadNamePrefix, getThreadPriority, isDaemon, nextThreadName, setDaemon, setThreadGroup, setThreadGroupName, setThreadNamePrefix, setThreadPriority 
- 
Field Details
- 
logger
 
 - 
 - 
Constructor Details
- 
DefaultManagedAwareThreadFactory
public DefaultManagedAwareThreadFactory() 
 - 
 - 
Method Details
- 
setJndiTemplate
Set the JNDI template to use for JNDI lookups. - 
setJndiEnvironment
Set the JNDI environment to use for JNDI lookups. - 
setResourceRef
public void setResourceRef(boolean resourceRef) Set whether the lookup occurs in a Jakarta EE container, i.e. if the prefix "java:comp/env/" needs to be added if the JNDI name doesn't already contain it. PersistenceAnnotationBeanPostProcessor's default is "true". - 
setJndiName
Specify a JNDI name of theThreadFactoryto delegate to, replacing the default JNDI name "java:comp/DefaultManagedThreadFactory".This can either be a fully qualified JNDI name, or the JNDI name relative to the current environment naming context if "resourceRef" is set to "true".
- See Also:
 
 - 
afterPropertiesSet
Description copied from interface:InitializingBeanInvoked by the containingBeanFactoryafter it has set all bean properties and satisfiedBeanFactoryAware,ApplicationContextAwareetc.This method allows the bean instance to perform validation of its overall configuration and final initialization when all bean properties have been set.
- Specified by:
 afterPropertiesSetin interfaceInitializingBean- Throws:
 NamingException
 - 
newThread
- Specified by:
 newThreadin interfaceThreadFactory- Overrides:
 newThreadin classCustomizableThreadFactory
 
 -