View Javadoc

1   /*
2    * $Id: ActionTag.java 451544 2006-09-30 05:38:02Z mrdon $
3    *
4    * Copyright 2006 The Apache Software Foundation.
5    *
6    * Licensed under the Apache License, Version 2.0 (the "License");
7    * you may not use this file except in compliance with the License.
8    * You may obtain a copy of the License at
9    *
10   *      http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   */
18  package org.apache.struts2.views.jsp;
19  
20  import javax.servlet.http.HttpServletRequest;
21  import javax.servlet.http.HttpServletResponse;
22  
23  import org.apache.struts2.components.ActionComponent;
24  import org.apache.struts2.components.Component;
25  
26  import com.opensymphony.xwork2.util.ValueStack;
27  
28  /***
29   * @see ActionComponent
30   */
31  public class ActionTag extends ComponentTagSupport {
32  	
33  	private static final long serialVersionUID = -5384167073331678855L;
34  	
35  	protected String name;
36      protected String namespace;
37      protected boolean executeResult;
38      protected boolean ignoreContextParams;
39  
40      public Component getBean(ValueStack stack, HttpServletRequest req, HttpServletResponse res) {
41          return new ActionComponent(stack, req, res);
42      }
43  
44      protected void populateParams() {
45          super.populateParams();
46  
47          ActionComponent action = (ActionComponent) component;
48          action.setName(name);
49          action.setNamespace(namespace);
50          action.setExecuteResult(executeResult);
51          action.setIgnoreContextParams(ignoreContextParams);
52          action.start(pageContext.getOut());
53      }
54  
55      protected void addParameter(String name, Object value) {
56          ActionComponent ac = (ActionComponent) component;
57          ac.addParameter(name, value);
58      }
59  
60      public void setName(String name) {
61          this.name = name;
62      }
63  
64      public void setNamespace(String namespace) {
65          this.namespace = namespace;
66      }
67  
68      public void setExecuteResult(boolean executeResult) {
69          this.executeResult = executeResult;
70      }
71  
72      public void setIgnoreContextParams(boolean ignoreContextParams) {
73          this.ignoreContextParams = ignoreContextParams;
74      }
75  }