我正在嘗試使用Struts驗證來檢查用戶輸入的各個字段。如果任何人能夠幫助我看到我缺乏的東西,我會非常感激。下面是我有:爲什麼struts驗證不適合我?
我把validation.xml
和TestAction-validation.xml
在WEB-INF/classes/
這裏是validation.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator Config 1.0//EN"
"http://www.opensymphony.com/xwork/xwork-validator-config-1.0.dtd">
<validators>
<validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/>
<validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/>
. . .
</validators>
這裏是TestAction-validation.xml
:
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="testInt">
<field-validator type="int">
<param name="min">0</param>
<param name="max">9</param>
<message>Number not in range</message>
</field-validator>
</field>
<field name="testString">
<field-validator type="stringlength">
<param name="minLength">4</param>
<message>String not long enough.</message>
</field-validator>
</field>
</validators>
我struts.xml
延伸struts-default
,我有一個非常簡單的行動類TestAction
,其延伸ActionSupport
且具有字段testInt
和testString
。
從我讀過,這應該足以對Struts檢查值輸入,但情況並非如此。我錯過了什麼?
你可以發佈你的動作映射/ struts.xml嗎?如果沒有開啓dev模式(struts.devMode),可能會爲您提供更多關於發生的事情的線索。 – Nate 2010-02-22 18:44:00