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 }