View Javadoc

    1   /*
    2    * $Id: PopulateActionForm.java 471754 2006-11-06 14:55:09Z husted $
    3    *
    4    * Licensed to the Apache Software Foundation (ASF) under one
    5    * or more contributor license agreements.  See the NOTICE file
    6    * distributed with this work for additional information
    7    * regarding copyright ownership.  The ASF licenses this file
    8    * to you under the Apache License, Version 2.0 (the
    9    * "License"); you may not use this file except in compliance
    10   * with the License.  You may obtain a copy of the License at
    11   *
    12   *  http://www.apache.org/licenses/LICENSE-2.0
    13   *
    14   * Unless required by applicable law or agreed to in writing,
    15   * software distributed under the License is distributed on an
    16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    17   * KIND, either express or implied.  See the License for the
    18   * specific language governing permissions and limitations
    19   * under the License.
    20   */
    21  package org.apache.struts.chain.commands.servlet;
    22
    23  import org.apache.commons.logging.Log;
    24  import org.apache.commons.logging.LogFactory;
    25  import org.apache.struts.Globals;
    26  import org.apache.struts.action.ActionForm;
    27  import org.apache.struts.action.ActionMapping;
    28  import org.apache.struts.chain.commands.AbstractPopulateActionForm;
    29  import org.apache.struts.chain.contexts.ActionContext;
    30  import org.apache.struts.chain.contexts.ServletActionContext;
    31  import org.apache.struts.config.ActionConfig;
    32  import org.apache.struts.util.RequestUtils;
    33
    34  /**
    35   * <p>Populate the form bean (if any) for this request.  Sets the multipart
    36   * class from the action config in the request attributes.</p>
    37   *
    38   * @version $Rev: 471754 $ $Date: 2005-11-12 13:01:44 -0500 (Sat, 12 Nov 2005)
    39   *          $
    40   */
    41  public class PopulateActionForm extends AbstractPopulateActionForm {
    42      private static final Log log = LogFactory.getLog(PopulateActionForm.class);
    43
    44      // ------------------------------------------------------- Protected Methods
    45      protected void populate(ActionContext context, ActionConfig actionConfig,
    46          ActionForm actionForm)
    47          throws Exception {
    48          ServletActionContext saContext = (ServletActionContext) context;
    49
    50          RequestUtils.populate(actionForm, actionConfig.getPrefix(),
    51              actionConfig.getSuffix(), saContext.getRequest());
    52      }
    53
    54      protected void reset(ActionContext context, ActionConfig actionConfig,
    55          ActionForm actionForm) {
    56          ServletActionContext saContext = (ServletActionContext) context;
    57
    58          actionForm.reset((ActionMapping) actionConfig, saContext.getRequest());
    59
    60          // Set the multipart class
    61          if (actionConfig.getMultipartClass() != null) {
    62              saContext.getRequestScope().put(Globals.MULTIPART_KEY,
    63                  actionConfig.getMultipartClass());
    64          }
    65      }
    66  }