我正在尝试学习JSF进行演示项目。当我尝试将验证器添加到某些组件时,出现java.lang.ClassNotFoundException:com.test.validator.TestValidator
我的面孔配置看起来像这样
<validator>
<validator-id>Validator</validator-id>
<validator-class>com.test.validator.TestValidator</validator-class>
</validator>
验证器类
public class TestValidator implements Validator {
@Override
public void validate(FacesContext context, UIComponent componentToValidate,
Object value) throws ValidatorException {
//Add code
}
}
最后是小面
<f:validator validatorId="Validator"></f:validator>
我不确定是否遗漏了一些东西。感谢所有帮助。谢谢
最佳答案
我可以想到许多可能的原因:
TestValidator类缺少package
声明,因此您实际上已经在默认程序包中声明了它...如@Jigar Joshi所述。
您尚未编译。
您尚未创建/更新包含该类的JAR。
您尚未将JAR包含在WAR / EAR中。
WAR / EAR(或Web服务器)缺少包含您的TestValidator所依赖的类的JAR文件。 (似乎不太可能...)
您尚未重新部署WAR / EAR。
关于java - 获取Validator类的ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6340178/