struts2的DefaultActionMapper

来源:互联网 发布:淘宝加热管 编辑:程序博客网 时间:2024/06/01 09:48

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,比如 http://localhost:8080/工程名/userAction.action

int indexOfSemicolon = uri.indexOf(";");

uri = (indexOfSemicolon > -1) ? uri.substring(0, indexOfSemicolon) : uri;

这两句是修正url的带;jsessionid 时找不到的bug ,具体没理解

 

0 0
原创粉丝点击