大家下午好!今天遇到一个好郁闷的问题,因为初次使用struts1.2好多东西都不熟悉
我在提交表单后,在action类中ActionForm获取不到,为null!这是怎么回事呀,希望各位大侠帮帮忙,谢谢哦,急!
------
在action中:
public ActionForward editInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response){
DynaActionForm editInfoForm=(DynaActionForm)form;
System.out.println("form:"+editInfoForm);
}打印结果是:form:null
我在提交表单后,在action类中ActionForm获取不到,为null!这是怎么回事呀,希望各位大侠帮帮忙,谢谢哦,急!
------
在action中:
public ActionForward editInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response){
DynaActionForm editInfoForm=(DynaActionForm)form;
System.out.println("form:"+editInfoForm);
}打印结果是:form:null
这是我的struts-config.xml的配置<form-beans>
<form-bean name="EditInfoForm" type="com.ankang.scenicspot.web.form.EditInfoForm"></form-bean>
<form-bean name="dynaEditInfoForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="scenicspotName" type="java.lang.String"></form-property>
<form-property name="scenicspotlevelName" type="java.lang.String"></form-property>
<form-property name="scenicspotState" type="java.lang.String"></form-property>
<form-property name="ssPhotoUrl" type="java.lang.String[]"></form-property>
....
</form-bean>
</form-beans><action-mappings>
<!-- 修改 -->
<action path="/manager/editInfo"
parameter="method"
name="dynaEditInfoForm"
type="com.ankang.scenicspot.web.action.ScenicspotManagerAction"
validate="true">
<forward name="success" path="/admin/scenicspotJSP/Info.jsp"></forward>
</action>
</action-mappings> 这样有问题吗?
很可能是下面的问题:
你想要得到jsp文件中的数据必须要:
editInfoForm.setXXX(editInfoForm.getXXX);
HttpServletRequest request, HttpServletResponse response){
DynaActionForm editInfoForm=(DynaActionForm)form;
System.out.println("form:"+editInfoForm);
}
<form-bean name="dynaEditInfoForm" type="org.apache.struts.action.DynaActionForm">
配置写的是dynaEditInfoForm
而你调用的是editInfoForm
一般都不怎么用的。。如果不是动态from的话看一下你页面的和frombean里字段有没有对应的。
楼主把这句话改成这样试下
<form-bean name="dynaEditInfoForm" type="org.apache.struts.action.DynaActionForm"> </form-bean>