获取Validator类的ClassNotFoundException

时间:2011-06-14 07:08:39

标签: java jsf

我正在尝试学习JSF做一个演示项目。当我尝试将验证器添加到某些组件时,我得到java.lang.ClassNotFoundException:com.test.validator.TestValidator

我的faces-config看起来像这样

    <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>

我不确定我是否遗漏了什么。所有帮助表示赞赏。感谢

1 个答案:

答案 0 :(得分:3)

我可以想到许多可能的原因:

  • TestValidator类缺少package声明,因此您实际上已在默认包中声明它......如@Jigar Joshi所述。

  • 您尚未编译。

  • 您尚未创建/更新包含该类的JAR。

  • 您尚未将JAR包含在WAR / EAR中。

  • WAR / EAR(或Web服务器)缺少包含TestValidator所依赖的某个类的JAR文件。 (似乎不太可能......)

  • 您尚未重新部署WAR / EAR。