org.apache.struts2.config
Class BeanSelectionProvider
java.lang.Object
org.apache.struts2.config.BeanSelectionProvider
- All Implemented Interfaces:
- ConfigurationProvider
public class BeanSelectionProvider
- extends Object
- implements ConfigurationProvider
Selects the implementations of key framework extension points, using the loaded
property constants. The implementations are selected from the container builder
using the name defined in its associated property. The default implementation name will
always be "struts".
The following is a list of the allowed extension points:
Type |
Property |
Scope |
Description |
com.opensymphony.xwork2.ObjectFactory |
struts.objectFactory |
singleton |
Creates actions, results, and interceptors |
com.opensymphony.xwork2.ActionProxyFactory |
struts.actionProxyFactory |
singleton |
Creates the ActionProxy |
com.opensymphony.xwork2.util.ObjectTypeDeterminer |
struts.objectTypeDeterminer |
singleton |
Determines what the key and and element class of a Map or Collection should be |
org.apache.struts2.dispatcher.mapper.ActionMapper |
struts.mapper.class |
singleton |
Determines the ActionMapping from a request and a URI from an ActionMapping |
org.apache.struts2.dispatcher.multipart.MultiPartRequest |
struts.multipart.parser |
per request |
Parses a multipart request (file upload) |
org.apache.struts2.views.freemarker.FreemarkerManager |
struts.freemarker.manager.classname |
singleton |
Loads and processes Freemarker templates |
org.apache.struts2.views.velocity.VelocityManager |
struts.velocity.manager.classname |
singleton |
Loads and processes Velocity templates |
Implementations are selected using the value of its associated property. That property is
used to determine the implementation by:
- Trying to find an existing bean by that name in the container
- Trying to find a class by that name, then creating a new bean factory for it
- Creating a new delegation bean factory that delegates to the configured ObjectFactory at runtime
Finally, this class overrides certain properties if dev mode is enabled:
struts.i18n.reload = true
struts.configuration.xml.reload = true
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DEFAULT_BEAN_NAME
public static final String DEFAULT_BEAN_NAME
- See Also:
- Constant Field Values
LOG
private static final Log LOG
BeanSelectionProvider
public BeanSelectionProvider()
destroy
public void destroy()
- Specified by:
destroy
in interface ConfigurationProvider
loadPackages
public void loadPackages()
throws ConfigurationException
- Specified by:
loadPackages
in interface ConfigurationProvider
- Throws:
ConfigurationException
init
public void init(Configuration configuration)
throws ConfigurationException
- Specified by:
init
in interface ConfigurationProvider
- Throws:
ConfigurationException
needsReload
public boolean needsReload()
- Description copied from interface:
ConfigurationProvider
- Tells whether the ConfigurationProvider should reload its configuration
- Specified by:
needsReload
in interface ConfigurationProvider
- Returns:
- true, whether the ConfigurationProvider should reload its configuration, falseotherwise.
register
public void register(ContainerBuilder builder,
LocatableProperties props)
- Specified by:
register
in interface ConfigurationProvider
alias
void alias(Class type,
String key,
ContainerBuilder builder,
Properties props)
alias
void alias(Class type,
String key,
ContainerBuilder builder,
Properties props,
Scope scope)
Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.