2015-01-09 128 views
0

我的项目最近将grails从2.0.0升级到2.4.3。在域对象中,我使用电子邮件验证约束。我在测试中注意到,假冒tld的电子邮件如'[email protected]'现在被认为是无效的。 Grails文档说它使用Apache Commons EmailValidation类来进行验证。该文档明确指出它doesn't check for valid tlds电子邮件验证更改从grails 2.0.0升级到2.4.3

有没有其他人看过这个问题,如果有的话,是否有一个简单的解决方法?我在自定义验证器之间的栅栏上,该验证器允许无效的tld或将约束全部排除在一起。

回答

1

似乎Grails v2.4.3使用的新Commons Vaidator v1.4.0有一个开放的缺陷VALIDATOR-338,其中电子邮件地址中的未知TLD无效。这只会影响1.4,而不会影响Grails 2.0.0使用的1.3.1。

最快的路线是现在实施自定义验证程序。你甚至可以使用自定义正则表达式(其中有很多的examples)。

+0

自定义验证器,直到错误得到解决。非常感谢。 – ethaler 2015-01-09 21:19:20

+0

不用担心,乐于帮忙! – 2015-01-09 21:34:02