com.bastengao.struts2.freeroute
类 DefaultActionMapper

java.lang.Object
  继承者 org.apache.struts2.dispatcher.mapper.DefaultActionMapper
      继承者 com.bastengao.struts2.freeroute.DefaultActionMapper
所有已实现的接口:
org.apache.struts2.dispatcher.mapper.ActionMapper

public class DefaultActionMapper
extends org.apache.struts2.dispatcher.mapper.DefaultActionMapper

重写 struts 对新来的请求到 ActionMapping 的处理, 前置加入 freeroute 的逻辑, 处理不了的交给父类处理(不影响 struts 本身之前的逻辑).

针对当前访问的 request 解析为合适的 ActionMapping

从以下版本开始:
1.0
作者:
bastengao

字段摘要
private static org.slf4j.Logger log
           
private  RouteMappingHandler routeMappingHandler
           
 
从类 org.apache.struts2.dispatcher.mapper.DefaultActionMapper 继承的字段
ACTION_PREFIX, allowDynamicMethodCalls, allowSlashesInActionNames, alwaysSelectFullNamespace, container, extensions, METHOD_PREFIX, prefixTrie, REDIRECT_ACTION_PREFIX, REDIRECT_PREFIX
 
构造方法摘要
DefaultActionMapper()
           
 
方法摘要
private static org.apache.struts2.dispatcher.mapper.ActionMapping createActionMapping(String namespace, String actionName, RouteMapping routeMapping, javax.servlet.http.HttpServletRequest request)
          创建对应的 ActionMapping, 并初始化 ActionMapping.params
 org.apache.struts2.dispatcher.mapper.ActionMapping getMapping(javax.servlet.http.HttpServletRequest request, com.opensymphony.xwork2.config.ConfigurationManager configManager)
           
private  org.apache.struts2.dispatcher.mapper.ActionMapping parseAndFindRouteMapping(javax.servlet.http.HttpServletRequest request)
          解析并查找对应的路由, 同时返回 ActionMapping
private static void setParamsByCookieValues(org.apache.struts2.dispatcher.mapper.ActionMapping actionMapping, RouteMapping routeMapping, javax.servlet.http.HttpServletRequest request)
          通过 cookie 设置 params
private static void setParamsByPathVariables(org.apache.struts2.dispatcher.mapper.ActionMapping actionMapping, RouteMapping routeMapping, javax.servlet.http.HttpServletRequest request)
          设置路径变量的值到 action 的 params 中, 然后 struts 会将 params 应用到对应的 action 的属性上(setter)
 void setRouteMappingHandler(RouteMappingHandler routeMappingHandler)
           
 
从类 org.apache.struts2.dispatcher.mapper.DefaultActionMapper 继承的方法
addParameterAction, dropExtension, dropExtension, getDefaultExtension, getMappingFromActionName, getUri, getUriFromActionMapping, handleSpecialParameters, isSlashesInActionNames, parseActionName, parseNameAndNamespace, setAllowDynamicMethodCalls, setAlwaysSelectFullNamespace, setContainer, setExtensions, setSlashesInActionNames
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

log

private static final org.slf4j.Logger log

routeMappingHandler

private RouteMappingHandler routeMappingHandler
构造方法详细信息

DefaultActionMapper

public DefaultActionMapper()
方法详细信息

setRouteMappingHandler

public void setRouteMappingHandler(RouteMappingHandler routeMappingHandler)

getMapping

public org.apache.struts2.dispatcher.mapper.ActionMapping getMapping(javax.servlet.http.HttpServletRequest request,
                                                                     com.opensymphony.xwork2.config.ConfigurationManager configManager)
指定者:
接口 org.apache.struts2.dispatcher.mapper.ActionMapper 中的 getMapping
覆盖:
org.apache.struts2.dispatcher.mapper.DefaultActionMapper 中的 getMapping

parseAndFindRouteMapping

private org.apache.struts2.dispatcher.mapper.ActionMapping parseAndFindRouteMapping(javax.servlet.http.HttpServletRequest request)
解析并查找对应的路由, 同时返回 ActionMapping

参数:
request -
返回:

createActionMapping

private static org.apache.struts2.dispatcher.mapper.ActionMapping createActionMapping(String namespace,
                                                                                      String actionName,
                                                                                      RouteMapping routeMapping,
                                                                                      javax.servlet.http.HttpServletRequest request)
创建对应的 ActionMapping, 并初始化 ActionMapping.params

参数:
namespace -
actionName -
routeMapping -
request -
返回:

setParamsByCookieValues

private static void setParamsByCookieValues(org.apache.struts2.dispatcher.mapper.ActionMapping actionMapping,
                                            RouteMapping routeMapping,
                                            javax.servlet.http.HttpServletRequest request)
通过 cookie 设置 params

参数:
actionMapping -
routeMapping -
request -

setParamsByPathVariables

private static void setParamsByPathVariables(org.apache.struts2.dispatcher.mapper.ActionMapping actionMapping,
                                             RouteMapping routeMapping,
                                             javax.servlet.http.HttpServletRequest request)
设置路径变量的值到 action 的 params 中, 然后 struts 会将 params 应用到对应的 action 的属性上(setter)

参数:
actionMapping -
routeMapping -
request -


Copyright © 2013 bastengao. All Rights Reserved.