簡體   English   中英

將struts 2.1升級到struts 2.3面臨的問題

[英]upgrade struts 2.1 to struts 2.3 facing issue

在我的應用程序中,我使用的是Struts XML驗證,該驗證在Struts 2.1上可以正常工作,我只是將其升級到2.3,現在電子郵件驗證不適用於jamshed.katta@icab.cat

我的正則表達式是這樣的

<field name="email">
    <field-validator type="requiredstring">
        <message key="register.validation.email" />
    </field-validator>
    <field-validator type="email">
    <param name="regexExpression">\\b^['_a-z0-9-\\+]+(\\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)\*\.([a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|**cat**)$\\b</param>
        <message key="register.validation.email.format" />
    </field-validator>
</field>

如果您想要一個正則表達式,如下圖所示:

在此處輸入圖片說明

您可以這樣更改正則表達式:

(^['_a-z0-9-\\+]+(?:\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(?:\.[a-z0-9-]+\.?)*(?:[a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|cat)$)

演示和說明

試試這個正則表達式驗證器:

<field name="email">
    <field-validator type="requiredstring">
        <message key="register.validation.email" />
    </field-validator>
    <field-validator type="regex">
      <param name="regexExpression"><![CDATA[^['_a-z0-9-\+]+(\.['_a-z0-9-\+]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2}|aero|arpa|asia|biz|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|nato|net|org|pro|tel|travel|xxx|cat)$]]></param>
        <message key="register.validation.email.format" />
      <param name="caseSensitiveExpression">${false}</param>
      <param name="trimExpression">${true}</param>
    </field-validator>
</field>

它還應用了caseSensitiveExpression參數和trimExpression參數。 您可以在文檔中找到有關正則表達式驗證器的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM