struts的validation.xml为何只是正则表达不起作用--------向高人请教(SOS)

rikky 2004-09-01 08:48:12
我的LoginAction extends Action,LoginForm extends ValidatorForm
现在在我的validation.xml中有一下一段验证
<formset>
<form name="LoginForm">
<field property="username" depends="required,maxlength,mask">
<arg0 key="LoginForm.username"/>
<arg1 name="maxlength" key="${var:maxlength}" resource="false"/>
<var>
<var-name>maxlength</var-name>
<var-value>2</var-value>
</var>
<var>
<var-name>mask</var-name>
<var-value>^[0-9a-zA-Z]*$</var-value>
</var>
</field>
</form>
</formset>
现在的问题是:此时,required,maxlength能起作用,而mask就是不起作用。
例如:你在页面上输入
空 ---〉 提示 username is required
'aaaaa'---> 提示 username 的长度不能超过2位
但是你如果输入'!~' ---->验证既然通过,或者说验证没有起到作用,不报错

说明:我几乎一模一样的代码在另外的project中能正确运行,没有任何问题

请教各位,谢谢
...全文
204 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
软猫克鲁 2004-09-07
  • 打赏
  • 举报
回复
jsp页面中加入:
<html:javascript formName="YourFromName"/>
lianeng 2004-09-07
  • 打赏
  • 举报
回复
up
xunyiren 2004-09-07
  • 打赏
  • 举报
回复
看看你的WEB-INF\lib下有没有jakarta-oro.jar,没有从jakarta-struts-1.1中拷一个过来,Struts的正则表达式需要这个包
qyzj_wanghx 2004-09-07
  • 打赏
  • 举报
回复
<arg0 key="LoginForm.username"/>
<arg1 name="maxlength" key="${var:maxlength}" resource="false"/>


中没有对 mask进行定义啊...
wenic705 2004-09-02
  • 打赏
  • 举报
回复
正则表达式有没有错?是这样吧^[0-9a-zA-Z]+$
rikky 2004-09-02
  • 打赏
  • 举报
回复
不同的表达式不一样的意思
rikky 2004-09-01
  • 打赏
  • 举报
回复
没人顶一下?
rikky 2004-09-01
  • 打赏
  • 举报
回复
个人感觉,他好像认不得mask,不知道为什么
rikky 2004-09-01
  • 打赏
  • 举报
回复
^[\d]*$也不行,看来不是正则表达式的问题
至于页面的源代码里面是否没有验证的script,服务器端验证不会在客户端生成脚本的,好像加一点东西就可以生成这样的cript了,不知道具体如何加的

tomcat启动没有任何问题

希望有人再指点一下
rikky 2004-09-01
  • 打赏
  • 举报
回复
多谢提醒,我一直在钻牛角呢,我马上去试
软猫克鲁 2004-09-01
  • 打赏
  • 举报
回复
看你的配置应该是没什么问题。要不你用^[\d]*$试试看。

另外在你的页面察看源代码,看看Struts是否帮你生成了相应的Mask认证script代码?
Tomcat等server启动时候有没有错误?

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧