Struts 1:从任何Action类输入ActionForm输入

时间:2014-07-01 01:41:44

标签: java jsp servlets struts struts-1

假设我想用Struts创建表单,所以我的struts-config会喜欢这个:

<form-bean name="myForm" type="com.MyForm" />


<action path="/entryyourinputs"
    type="com.MyAction" name="myForm"
    input="/myJsp.jsp">

    <forward name="success" path="/regSuccess.jsp" />
</action>

它将显示myJsp以指定myForm 我的问题是如何在MyAction中分配myForm而不是myJsp? 或者从MyAction分配一些myForm输入的方法是什么?

最好的问候 感谢

1 个答案:

答案 0 :(得分:1)

在com.MyForm中,我们需要为输入创建getter和setter,如下所示:

String input;
public String getInput() {return this.input;}

public void setInput(String input) {this.input = input;}

在扩展struts Action类的MyAction中,我们将值赋给MyForm输入,如下所示:

public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {
  MyForm myForm = (MyForm) form;
// assigning values to the inputs from action
  myForm.setInput("input value");

 .....
 .....
 .....
}

要获取jsp中的值,我们必须使用html标记lib:

Jsp代码如下所示:

<html:form action="/entryyourinputs">
   <html:text name="myForm" property="input" />
</html:form>

注意: html 标记必须位于**<html:form>**标记内。

在jsp中输入文件,由于控制器,在MyAction类中分配的值自动分配给jsp输入字段。