public class JiraActionFactory
extends webwork.action.factory.ActionFactory
DefaultActionFactory
and avoids is unsafe web
parameter setting as described in JRA-15664.
This is class is designed to load actions that are "safe by default".
The root ActionFactory it returns tries the regular, global application class loaders just like the JavaActionFactory in webwork1 and caches any matches it finds, but will also try the plugins class loader when it is unable to find an action class in the global class loaders.
Introduced / changed as part of JRA-15664
Modifier and Type | Class and Description |
---|---|
static class |
JiraActionFactory.NonWebActionFactory
Deprecated.
since 5.0.7
|
Constructor and Description |
---|
JiraActionFactory() |
JiraActionFactory(webwork.action.factory.ActionFactory factory,
com.atlassian.jira.config.webwork.JiraActionFactory.JiraPluginActionFactory rootActionFactory)
Deprecated.
since 5.0.7
|
Modifier and Type | Method and Description |
---|---|
void |
flushCaches()
If the set of loaded plugins (and hence loaded actions) has changed then this method must be called to flush the
cache of action names to action classes.
|
webwork.action.Action |
getActionImpl(String actionName)
This method is invoked by webwork1 to load an
Action for a given action name. |
public JiraActionFactory()
@Deprecated public JiraActionFactory(webwork.action.factory.ActionFactory factory, com.atlassian.jira.config.webwork.JiraActionFactory.JiraPluginActionFactory rootActionFactory)
JiraActionFactory.NonWebActionFactory
to set the action instantiation chain.factory
- The factory chain that will handle instantiating the passed in action names.rootActionFactory
- The root of the action factory chain, responsible for actual creation of Action
instances.public webwork.action.Action getActionImpl(String actionName) throws Exception
Action
for a given action name. The
parameters for that action are also set into the action before it is returnedgetActionImpl
in class webwork.action.factory.ActionFactory
actionName
- the name of the action to loadException
- because that is how webwork1 has declared its exception structurewebwork.action.ResultException
- if the parameters cannot be set into the action successfully AND the action is not
declared IllegalArgumentAware
public void flushCaches()
flushCaches
in class webwork.action.factory.ActionFactory
Copyright © 2002-2017 Atlassian. All Rights Reserved.