Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 自定义Bean验证意外类型异常Spring 3.2_Java_Spring_Hibernate_Spring Mvc_Bean Validation - Fatal编程技术网

Java 自定义Bean验证意外类型异常Spring 3.2

Java 自定义Bean验证意外类型异常Spring 3.2,java,spring,hibernate,spring-mvc,bean-validation,Java,Spring,Hibernate,Spring Mvc,Bean Validation,我对使用Spring3.2的应用程序是新手。这个项目是关于升级的,我们将Java1.6升级到了1.7。升级后,我在字段组上面临一个自定义bean验证问题 <dependency org="javax.validation" name="validation-api" rev="1.0.0.GA" transitive="false"> <artifact name="validation-api" ext="jar"/> </dep

我对使用Spring3.2的应用程序是新手。这个项目是关于升级的,我们将Java1.6升级到了1.7。升级后,我在字段组上面临一个自定义bean验证问题

    <dependency org="javax.validation" name="validation-api" rev="1.0.0.GA" transitive="false">
         <artifact name="validation-api" ext="jar"/>
    </dependency>

    <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" transitive="false">
         <artifact name="slf4j-api" ext="jar"/>
    </dependency>
    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false">
         <artifact name="slf4j-log4j12" ext="jar"/>
    </dependency>
我有谷歌和了解的验证,它看起来不错。请注意,这在Java1.6中非常有效,我也进行了代码比较

    <dependency org="javax.validation" name="validation-api" rev="1.0.0.GA" transitive="false">
         <artifact name="validation-api" ext="jar"/>
    </dependency>

    <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" transitive="false">
         <artifact name="slf4j-api" ext="jar"/>
    </dependency>
    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false">
         <artifact name="slf4j-log4j12" ext="jar"/>
    </dependency>
Controller.java

@RequestMapping(value = Constants.URL, method = RequestMethod.POST)
    public ModelAndView process(
            @ModelAttribute("Bean") Bean Bean,
            BindingResult result, SessionStatus status,
            @RequestParam(Constants.WIZARD_PAGE) int currentPage,
            ModelMap modelMap, Model model, Locale locale,
            RedirectAttributes redirectAttributes, HttpServletRequest request,
            HttpServletResponse response) {
isNotValid(Bean, result, Interface.class);
}

public boolean isNotValid(Object target, Errors errors, Class<?>... groups) {
        Set<ConstraintViolation<Object>> result = validator.validate(target,
                groups);

Bean Class

    @NotEmpty
    @PhoneComposite(phone1 = "phone1", phone2 = "phone2", phone3 = "phone3", groups = {
            Interface.class, Interface2.class })
    private Phone phone = new Phone();

    Phone Bean Class

    public Phone() {
        super();
    }

    public Phone(String phone1, String phone2, String phone3) {
        this();
        this.phone1 = phone1;
        this.phone2 = phone2;
        this.phone3 = phone3;
    }

    //having getter and setter too
    <dependency org="javax.validation" name="validation-api" rev="1.0.0.GA" transitive="false">
         <artifact name="validation-api" ext="jar"/>
    </dependency>

    <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" transitive="false">
         <artifact name="slf4j-api" ext="jar"/>
    </dependency>
    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false">
         <artifact name="slf4j-log4j12" ext="jar"/>
    </dependency>

请帮助我找出它可能是指哪个jar,因为我怀疑它与某些java版本有关。

@NotEmpty
仅适用于字符串/字符和数组/集合。尝试删除it@isah真的非常感谢你的帮助…我很感激你救了我。它工作了,但是你能解释为什么它在1.6中工作而在1.7中失败吗。同样,注释过去我也删除了另一个日期参数,它工作了…你能解释一下吗
    <dependency org="javax.validation" name="validation-api" rev="1.0.0.GA" transitive="false">
         <artifact name="validation-api" ext="jar"/>
    </dependency>

    <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" transitive="false">
         <artifact name="slf4j-api" ext="jar"/>
    </dependency>
    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false">
         <artifact name="slf4j-log4j12" ext="jar"/>
    </dependency>