⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultrequesthelper.java

📁 dispalytag的源码
💻 JAVA
字号:
/** * Licensed under the Artistic License; you may not use this file * except in compliance with the License. * You may obtain a copy of the License at * *      http://displaytag.sourceforge.net/license.html * * THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */package org.displaytag.util;import java.io.UnsupportedEncodingException;import java.net.URLEncoder;import java.util.Enumeration;import java.util.HashMap;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.lang.ObjectUtils;import org.apache.commons.lang.StringUtils;import org.apache.commons.lang.UnhandledException;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.displaytag.Messages;/** * Default RequestHelper implementation. * @author Fabrizio Giustina * @version $Revision: 1104 $ ($Author: fgiust $) * @see org.displaytag.util.Href * @see org.displaytag.util.RequestHelper */public class DefaultRequestHelper implements RequestHelper{    /**     * logger.     */    private static Log log = LogFactory.getLog(DefaultRequestHelper.class);    /**     * original HttpServletRequest.     */    private HttpServletRequest request;    /**     * original HttpServletResponse.     */    private HttpServletResponse response;    /**     * Construct a new RequestHelper for the given request.     * @param servletRequest HttpServletRequest needed to generate the base href     * @param servletResponse HttpServletResponse needed to encode generated urls     */    public DefaultRequestHelper(HttpServletRequest servletRequest, HttpServletResponse servletResponse)    {        this.request = servletRequest;        this.response = servletResponse;    }    /**     * @see org.displaytag.util.RequestHelper#getHref()     */    public Href getHref()    {        String requestURI = this.request.getRequestURI();        // call encodeURL to preserve session id when cookies are disabled        Href href = new DefaultHref(this.response.encodeURL(requestURI));        href.setParameterMap(getParameterMap());        return href;    }    /**     * @see org.displaytag.util.RequestHelper#getParameter(java.lang.String)     */    public String getParameter(String key)    {        // actually simply return the parameter, this behaviour could be changed        return this.request.getParameter(key);    }    /**     * @see org.displaytag.util.RequestHelper#getIntParameter(java.lang.String)     */    public Integer getIntParameter(String key)    {        String value = this.request.getParameter(key);        if (value != null)        {            try            {                return new Integer(value);            }            catch (NumberFormatException e)            {                // It's ok to ignore, simply return null                log.debug(Messages.getString("RequestHelper.invalidparameter", //$NON-NLS-1$                    new Object[]{key, value}));            }        }        return null;    }    /**     * @see org.displaytag.util.RequestHelper#getParameterMap()     */    public Map getParameterMap()    {        Map map = new HashMap();        // get the parameters names        Enumeration parametersName = this.request.getParameterNames();        while (parametersName.hasMoreElements())        {            // ... get the value            String paramName = (String) parametersName.nextElement();            request.getParameter(paramName);            // put key/value in the map            String[] originalValues = (String[]) ObjectUtils.defaultIfNull(                this.request.getParameterValues(paramName),                new String[0]);            String[] values = new String[originalValues.length];            for (int i = 0; i < values.length; i++)            {                try                {                    values[i] = URLEncoder.encode(StringUtils.defaultString(originalValues[i]), StringUtils                        .defaultString(response.getCharacterEncoding(), "UTF8")); //$NON-NLS-1$                }                catch (UnsupportedEncodingException e)                {                    throw new UnhandledException(e);                }            }            map.put(paramName, values);        }        // return the Map        return map;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -