出现这个错误的时候,<f:validateRegex> 部分的代码是这样的:
<h:inputText id="email"
class="form-control"
title="请输入你的邮箱"
value="#{register.email}"
required="true"
requiredMessage="邮箱必填"
validatorMessage="邮箱输入不合法"
/>
<f:validateRegex pattern="^[\w-.]+@[\w-]+(\.\w{2,})+$" />
逻辑很简单,就是想要用户输入一个比较合法的邮箱。
将其改为下面这样就对了:
<h:inputText id="email"
class="form-control"
title="请输入你的邮箱"
value="#{register.email}"
required="true"
requiredMessage="邮箱必填"
validatorMessage="邮箱输入不合法" >
<f:validateRegex pattern="^[\w-.]+@[\w-]+(\.\w{2,})+$" />
</h:inputText>
简单来说,就是用<inputText></inputText>将<f:validateRegex>包围。
本文参考了:https://forum.primefaces.org/viewtopic.php?f=3&t=15830