有什么方法可以在不使用 TomEE 的情况下在 Tomcat 中使用 bean 验证?
欢迎任何建议。谢谢
(更新)
我已将以下内容包含到我的 pom.xml 中。
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.0.2.GA</version>
</dependency>
但是,以下 JSF 页面在 Tomcat 中不显示验证错误消息。
<h:form id="validateID">
<h:outputLabel for="id" value="ID : " title="id" />
<h:inputText id="myid" value="#{validationDemoManagedBean.myid}"
title="id" tabindex="8" size="20">
</h:inputText>
<h:message for="myid" style="color:red" />
<h:commandButton value="Validate" type="submit" />
</h:form>
我们的 validationDemoManagedBean 支持 bean 具有以下内容
@ManagedBean
@SessionScoped
public class ValidationDemoManagedBean implements Serializable {
@Pattern(regexp = "\\d{7}\\(\\d{1}\\)", message = "Must in pattern 9999999(9)")
private String myid = "";
. . .
}
我们没有在 faces-config.xml 中指定任何默认验证器。
当此应用程序在 TomEE 中运行并且用户输入任何无效 ID 文本并单击“验证”按钮时,应该能够显示验证错误消息。但是,这在 tomcat 中不起作用。我在部署到 Tomcat 时是否遗漏了什么?
最佳答案
Bean Validation 不依赖于 JavaEE,您只需将 Hibernate Validator 等提供程序的 JAR 添加到您的应用程序类路径或服务器的“lib”目录中。对于 Hibernate Validator,您可以了解有关所需依赖项的更多信息 here .另请参阅此 FAQ entry了解有关在 Tomcat 6 上使用 Hibernate Validator 5 的更多信息。
关于tomcat - 如何在 Tomcat 中使用 bean 验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24902754/