【发布时间】:2013-03-14 12:34:42
【问题描述】:
我正在尝试使用使用 XML 的 Struts2 验证来检查客户输入的各种字段。我的struts.xml 扩展了struts-default,我有一个非常简单的动作类TestAction 扩展了ActionSupport,但它不起作用。
如果有人能够帮助我了解我的不足,我将非常感激。
这是我所拥有的:
CustomerAction-validation.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.2//EN" "http://struts.apache.org/dtds/xwork-validator-1.0.2.dtd">
<validators>
<field name="customerName">
<field-validator type="requiredstring">
<message>Required</message>
</field-validator>
</field>
</validators>
struts.xml
<action name="addCustomer" class="com.yell.hibu.action.CustomerAction"
method="execute">
<interceptor-ref name="validation"/>
<param name="excludeMethods">
input,back,cancel,browse
</param>
<interceptor-ref name="fileUpload">
<param name="maximumSize">2097152</param>
<param name="allowedTypes">
image/png,image/gif,image/jpeg,image/pjpeg
</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
<result name="success">/success.jsp</result>
<result name="input">/registration.jsp</result>
</action>
这里我只有一个字段的 Registration.jsp
<s:form action="addCustomer" id="register-form" method="post" validate="true" theme="xhtml" enctype="multipart/form-data">
<s:actionerror/>
<s:fielderror/>
<s:textfield name="customer.customerName" label="Customer Name:" cssClass="tooltip" title="Max 10 characters allowed." maxlength="10"/>
【问题讨论】:
-
没有足够的信息来提供帮助。验证文件部署到哪里?发生/不发生什么?该操作是否具有适当的 getter/setter?
-
类
TestAction的代码是什么? -
试试这个链接,希望它能解决你的问题roseindia.net/struts/struts/struts2.2.1/…