I'm seeing strange error on trying to deploy our custom CAS overlaid
on top of 3.3.6-SNAPSHOT.  Based on the stack trace it looks like
org.springframework.validation.beanvalidation.BeanValidationPostProcessor
is is using a _Hibernate_ validator to process the
javax.validation.constraints annotations in classes having nothing to
do with Hibernate.  In the case below it's
SamlCompliantUniqueTicketIdGenerator.

2010-01-15 16:48:44,607 ERROR
[org.springframework.web.context.ContextLoader] - Context
initialization failed
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'samlServiceTicketUniqueIdGenerator' defined
in ServletContext resource
[/WEB-INF/spring-configuration/uniqueIdGenerators.xml]: Initialization
of bean failed; nested exception is java.lang.NoSuchMethodError:
javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil;
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
...
Caused by: java.lang.NoSuchMethodError:
javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil;
        at 
org.hibernate.validator.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:33)
        at 
org.hibernate.validator.engine.resolver.DefaultTraversableResolver.isReachable(DefaultTraversableResolver.java:112)
        at 
org.hibernate.validator.engine.resolver.SingleThreadCachedTraversableResolver.isReachable(SingleThreadCachedTraversableResolver.java:47)
        at 
org.hibernate.validator.engine.ValidatorImpl.isValidationRequired(ValidatorImpl.java:764)
        at 
org.hibernate.validator.engine.ValidatorImpl.validateConstraint(ValidatorImpl.java:331)
        at 
org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForRedefinedDefaultGroup(ValidatorImpl.java:278)
        at 
org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForCurrentGroup(ValidatorImpl.java:260)
        at 
org.hibernate.validator.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:213)
        at 
org.hibernate.validator.engine.ValidatorImpl.validate(ValidatorImpl.java:119)
        at 
org.springframework.validation.beanvalidation.BeanValidationPostProcessor.doValidate(BeanValidationPostProcessor.java:103)
        at 
org.springframework.validation.beanvalidation.BeanValidationPostProcessor.postProcessBeforeInitialization(BeanValidationPostProcessor.java:84)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
...

I see that BeanValidationPostProcessor has a void
setValidator(javax.validation.Validator validator) method.  Maybe we
should explicitly supply a suitable validator implementation for
general purpose bean property validation.

M

-- 
You are currently subscribed to cas-dev@lists.jasig.org as: 
arch...@mail-archive.com
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-dev

Reply via email to