亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁/技術文章
文章詳情頁

hibernate-validator中的異常嵌套的異常是java.lang.NoClassDefFoundError:ConfigurationImpl

瀏覽:78日期:2024-05-16 08:51:09
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決hibernate-validator中的異常嵌套的異常是java.lang.NoClassDefFoundError:ConfigurationImpl?

根據Hibernate Validator常見問題解答,網址為

http://hibernate.org/validator/faq/

Hibernate Validator 3、4和5有什么區別?

Hibernate Validator 3.x和4.x / 5.x是不同的代碼庫。

Hibernate Validator是Hibernate團隊的原始驗證框架,現在稱為“傳統Hibernate Validator”。HibernateValidator 4.x是Bean Validation 1.0(JSR 303)的參考實現,而Hibernate Validator 5.x是BeanValidation 1.1(JSR 349)的參考實現。主動開發發生在5.x代碼庫上。

同樣,當您使用針對MVC的spring驗證框架時:

<!-- JSR-303 support will be detected on classpath and enabled automatically --> <mvc:annotation-driven />

因此,差異可能是:hibernate-validator-5.x將不支持JSR303,請嘗試將版本降級為4.x。

也更喜歡Hibernate Validator 4.3.1.Final。而不是4.2.x,因為兩者都有不同的包結構。

解決方法 細節:

我在Spring中使用javax-validation和hibaernate-validator進行表單驗證。除了用于Spring的基本必要JAR文件。

我包括:

驗證API-1.1.0.Finalhibernate-validator-5.1.0.Final

我讀到某處也關注到了spl4j版本:所以我也告訴:

###slf4j-api-1.7.5######slf4j-simple-1.7.5######log4j-1.2.17###

錯誤原因可以歸因于slf4j和log4j兼容性嗎?

我使用注釋基礎驗證。

讓我提供一些代碼:

客戶.java

import java.util.Date;import javax.validation.constraints.Max;import javax.validation.constraints.Min;import javax.validation.constraints.NotNull;import javax.validation.constraints.Past;import javax.validation.constraints.Size;import org.hibernate.validator.constraints.Email;import org.hibernate.validator.constraints.NotEmpty;import org.springframework.format.annotation.DateTimeFormat;public class Customer { @Size(min=2,max=30) @NotEmpty private String name; @NotEmpty @Email private String email; @NotNull @Min(18) @Max(100) private Integer age;public String getName() {return name; } public void setName(String name) {this.name = name; } public String getEmail() {return email; } public void setEmail(String email) {this.email = email; } public Integer getAge() {return age; } public void setAge(Integer age) {this.age = age; }}CustomerController.java

import javax.validation.Valid;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.context.MessageSource;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.validation.BindingResult;import org.springframework.validation.FieldError;import org.springframework.web.bind.annotation.ModelAttribute;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;@Controller@RequestMapping('/customer')public class CustomerController { @Autowired @Qualifier('messageSource') private MessageSource messageSource; @RequestMapping(value = '',method = RequestMethod.POST) public @ResponseBody List<String> saveCustomerAction( @Valid @ModelAttribute('customer') Customer customer,BindingResult bindingResult,Model model) { List<String> errorLog = new ArrayList<String>();if (bindingResult.hasErrors()) { errorLog.add('Error');} } return errorLog;}errorLog.add('No Error');return errorLog; }}為消息源添加了必需的Bean,為消息添加了message_en.propertires錯誤記錄-----

type Exception report message Servlet.init() for servlet spring-rest threw exception description The server encountered an internal error that prevented it from fulfilling this request. exception javax.servlet.ServletException: Servlet.init() for servlet spring-rest threw exception org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040) org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607) org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Thread.java:745)###----######root cause### org.springframework.beans.factory.BeanCreationException: Error creating bean with name ’org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean#0’: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.validator.internal.engine.ConfigurationImplorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1553)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760)org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:658)org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:624)org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:672)org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:543)org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:484)org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)javax.servlet.GenericServlet.init(GenericServlet.java:158)org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)java.lang.Thread.run(Thread.java:745)

標簽: java
相關文章:
主站蜘蛛池模板: 国产精品线在线精品 | 黄在线网站 | 亚洲午夜精品一区二区 | 久久久久国产精品免费免费 | 国产一线视频在线观看高清 | 日本片网址 | 久久综合亚洲 | 成人欧美一区二区三区 | 欧美一级特级毛片 | 一男一女野外大黄毛片 | 成人欧美视频在线观看播放 | 精品国产免费人成高清 | 久99re视频9在线观看 | 毛片色 | 久久青草免费线观最新 | 美日韩黄色大片 | 一区二区在线欧美日韩中文 | 中国一级毛片国产高清 | a级情欲视频免费观看 | 免费大片在线观看www | 国产高清xxxsexvideo | 亚洲一区二区三区在线网站 | 欧美一区二区三区免费 | 一级生活毛片 | 综合九九 | 91国内精品线免费播放 | 国产 日韩 欧美 在线 | 国产三级图片 | 91精品国产综合成人 | 伊人久久精品亚洲精品一区 | 免费黄色网址大全 | 婷婷丁香九月 | 国产毛片一级aaaaa片 | 免费的全黄一级录像带 | 久久精品图片 | 亚洲精品成人一区二区www | 久久精品视频99精品视频150 | 农村女人的一级毛片 | 国产精品三级a三级三级午夜 | 国产精品视频久久久 | 天堂素人搭讪系列嫩模在线观看 |