DefaultActionMapper是ActionMapper的实现类
其中一个用法是解析url请求 然后把信息封装成一个ActionMapping, ActionMapping对应一个Action,比如Action的name,namespace,method等信息
public ActionMapping getMapping(HttpServletRequest request, ConfigurationManager configManager) {ActionMapping mapping = new ActionMapping();String uri = RequestUtils.getUri(request);int indexOfSemicolon = uri.indexOf(";");uri = (indexOfSemicolon > -1) ? uri.substring(0, indexOfSemicolon) : uri;uri = dropExtension(uri, mapping);if (uri == null) {return null;}parseNameAndNamespace(uri, mapping, configManager);handleSpecialParameters(request, mapping);return parseActionName(mapping);}
从HttpServletRequest得到url,比如 :8080/工程名/userAction.action
int indexOfSemicolon = uri.indexOf(";");
uri = (indexOfSemicolon > -1) ? uri.substring(0, indexOfSemicolon) : uri;
这两句是修正url的带;jsessionid 时找不到的bug ,具体没理解
,别想一下造出大海,必须先由小河川开始。