2014-10-17 80 views
1

我在我的实体中使用Hibernate-validator注释,这会在我的Junit测试中导致异常。 如果我禁用与财产休眠验证:Junit休眠验证错误

<prop key="javax.persistence.validation.mode">none</prop> 

然后JUnit测试工作得很好,否则我收到以下错误:

Caused by: java.lang.ClassFormatError: Absent Code attribute in method that is not native or  abstract in class file javax/el/ExpressionFactory 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637) 
at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:169) 
at org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:118) 
at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:110) 
at org.hibernate.validator.internal.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:86) 
at org.hibernate.validator.HibernateValidator.createGenericConfiguration(HibernateValidator.java:41) 
at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:276) 
at javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:110) 
at org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:445) 
at org.hibernate.cfg.beanvalidation.TypeSafeActivator.activate(TypeSafeActivator.java:96) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.integrate(BeanValidationIntegrator.java:148) 
... 61 more 

JUnit测试:

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration("classpath:spring-config-test.xml") 
@Transactional 
public class BaseTest { 

    @Test 
    public void init() { 
     Assert.assertEquals(15,15); 
    } 
} 

任何建议?

回答