我在整个WEB项目中就用了一个ACTIONFORM,就是org.apache.struts.validator.DynaValidatorForm,在struts-cofig.xml中是这样的:
<form-bean name="DemoForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="batchno" type="java.lang.String" />
<form-property name="disclcode" type="java.lang.String" />
<form-property name="disclint" type="java.lang.String" />
</form-bean>校验文件里我是这么写的:
<form name="DemoForm">
<field property="batchno" depends="required,maxlength">
<arg0 key="batchno" resource="false"/>
<arg1 key="batchno" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> <field property="disclcode" depends="required,maxlength">
<arg0 key="disclcode" resource="false"/>
<arg1 key="disclcode" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> <field property="disclint" depends="required,maxlength">
<arg0 key="disclint" resource="false"/>
<arg1 key="disclint" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> </form>在我的index.jsp页面里只有一个文本框和一个相应的提交按钮,文本框里要输入的值只有batchno一个,当我提交时就出现了下面的错误:
type Status reportmessage No input attribute for mapping path /DemoActiondescription The server encountered an internal error (No input attribute for mapping path /DemoAction) that prevented it from fulfilling this request.我认为原因是这样的,因为我只提交了一个数据,disclcode和disclint并没有提交,可是验证时还要校验这两个属性,所以就出错了,只想用这一个ACTIONFORM,不想再弄出来一个FORM,应该怎么弄才能让这三个属性都能进行校验,还不会出上面的错误?
<form-bean name="DemoForm" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="batchno" type="java.lang.String" />
<form-property name="disclcode" type="java.lang.String" />
<form-property name="disclint" type="java.lang.String" />
</form-bean>校验文件里我是这么写的:
<form name="DemoForm">
<field property="batchno" depends="required,maxlength">
<arg0 key="batchno" resource="false"/>
<arg1 key="batchno" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> <field property="disclcode" depends="required,maxlength">
<arg0 key="disclcode" resource="false"/>
<arg1 key="disclcode" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> <field property="disclint" depends="required,maxlength">
<arg0 key="disclint" resource="false"/>
<arg1 key="disclint" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>10</var-value>
</var>
</field> </form>在我的index.jsp页面里只有一个文本框和一个相应的提交按钮,文本框里要输入的值只有batchno一个,当我提交时就出现了下面的错误:
type Status reportmessage No input attribute for mapping path /DemoActiondescription The server encountered an internal error (No input attribute for mapping path /DemoAction) that prevented it from fulfilling this request.我认为原因是这样的,因为我只提交了一个数据,disclcode和disclint并没有提交,可是验证时还要校验这两个属性,所以就出错了,只想用这一个ACTIONFORM,不想再弄出来一个FORM,应该怎么弄才能让这三个属性都能进行校验,还不会出上面的错误?
没有输入属性映射路径检查下你的映射文件是否有错,是否映射对了。
名字,路径是否写错