I tried to enable JPA ticket registry (PostgreSQL database), but I'm
experiencing some problems with CAS. When I add the hibernate-entitymanager
dependency, according to the CAS documentation, to my custom overlay pom.xml,
authentication fails. It's quite strange since I haven't changed the ticket
registry configuration, so it should still use the default registry. (By the
way: the same error occurs whether I'm configuring the ticket registry for JPA
or not...it's adding the hibernate-entity manager dependency that triggers the
problem.)
Below is the debug output from the authentication attempt. After submitting a
username and password in the login form, I'm presented with the following
generic message:
"CAS is Unavailable
There was an error trying to complete your request. Please notify your support
desk or try again."
Any help is appreciated since I'm stuck. :)
2010-05-05 11:44:50,321 DEBUG
[org.springframework.web.servlet.DispatcherServlet] - <DispatcherServlet with
name 'cas' processing POST request for [/cas/login]>
2010-05-05 11:44:50,321 DEBUG
[org.springframework.webflow.mvc.servlet.FlowHandlerMapping] - <Mapping request
with URI '/cas/login' to flow with id 'login'>
2010-05-05 11:44:50,321 DEBUG
[org.springframework.webflow.executor.FlowExecutorImpl] - <Resuming flow
execution with key 'e1s1>
2010-05-05 11:44:50,321 DEBUG
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
- <Locking conversation 1>
2010-05-05 11:44:50,322 DEBUG
[org.springframework.webflow.execution.repository.impl.DefaultFlowExecutionRepository]
- <Getting flow execution with key 'e1s1'>
2010-05-05 11:44:50,322 DEBUG
[org.springframework.webflow.definition.registry.FlowDefinitionRegistryImpl] -
<Getting FlowDefinition with id 'login'>
2010-05-05 11:44:50,323 DEBUG
[org.springframework.webflow.engine.impl.FlowExecutionImpl] - <Resuming in
org.springframework.webflow.mvc.servlet.mvcexternalcont...@76340c9c>
2010-05-05 11:44:50,323 DEBUG [org.springframework.webflow.engine.ViewState] -
<Restoring org.springframework.webflow.engine.viewvaria...@60a537e3>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Processing user event
'submit'>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Resolved model
[username: null]>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Binding to model>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Adding mapping for
parameter 'username'>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Adding mapping for
parameter 'password'>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.binding.mapping.impl.DefaultMapper] - <Beginning mapping
between source [org.springframework.webflow.core.collection.LocalParameterMap]
and target [org.jasig.cas.authentication.principal.UsernamePasswordCredentials]>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.binding.mapping.impl.DefaultMapping] - <Adding mapping
result [succ...@53281264 mapping = parameter:'username' -> username, code =
'success', error = false, originalValue = 'foo', mappedValue = 'foo']>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.binding.mapping.impl.DefaultMapping] - <Adding mapping
result [succ...@6bcf8de2 mapping = parameter:'password' -> password, code =
'success', error = false, originalValue = 'bar', mappedValue = 'bar']>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.binding.mapping.impl.DefaultMapper] - <Completing mapping
between source [org.springframework.webflow.core.collection.LocalParameterMap]
and target
[org.jasig.cas.authentication.principal.UsernamePasswordCredentials]; total
mappings = 2; total errors = 0>
2010-05-05 11:44:50,324 DEBUG
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Validating model>
2010-05-05 11:44:50,325 DEBUG
[org.springframework.beans.factory.support.DefaultListableBeanFactory] -
<Returning cached instance of singleton bean 'credentialsValidator'>
2010-05-05 11:44:50,325 DEBUG
[org.springframework.webflow.validation.ValidationHelper] - <Invoking Spring
Validator 'LocalValidatorFactoryBean'>
2010-05-05 11:44:50,325 DEBUG
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
- <Unlocking conversation 1>
2010-05-05 11:44:50,325 DEBUG
[org.springframework.web.servlet.DispatcherServlet] - <Could not complete
request>
org.springframework.web.util.NestedServletException: Handler processing failed;
nested exception is java.lang.AbstractMethodError:
org.hibernate.ejb.HibernatePersistence.getProviderUtil()Ljavax/persistence/spi/ProviderUtil;
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:820)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:563)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.jasig.cas.web.init.SafeDispatcherServlet.service_aroundBody2(SafeDispatcherServlet.java:115)
at
org.jasig.cas.web.init.SafeDispatcherServlet.service_aroundBody3$advice(SafeDispatcherServlet.java:44)
at
org.jasig.cas.web.init.SafeDispatcherServlet.service(SafeDispatcherServlet.java:1)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
com.github.inspektr.common.web.ClientInfoThreadLocalFilter.doFilter(ClientInfoThreadLocalFilter.java:46)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.AbstractMethodError:
org.hibernate.ejb.HibernatePersistence.getProviderUtil()Ljavax/persistence/spi/ProviderUtil;
at javax.persistence.Persistence$1.isLoaded(Persistence.java:78)
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.SpringValidatorAdapter.validate(SpringValidatorAdapter.java:74)
at
org.springframework.webflow.validation.ValidationHelper.invokeValidatorDefaultValidateMethod(ValidationHelper.java:233)
at
org.springframework.webflow.validation.ValidationHelper.invokeModelValidator(ValidationHelper.java:185)
at
org.springframework.webflow.validation.ValidationHelper.validate(ValidationHelper.java:104)
at
org.springframework.webflow.mvc.view.AbstractMvcView.validate(AbstractMvcView.java:534)
at
org.springframework.webflow.mvc.view.AbstractMvcView.processUserEvent(AbstractMvcView.java:217)
at
org.springframework.webflow.engine.ViewState.handleEvent(ViewState.java:224)
at
org.springframework.webflow.engine.ViewState.resume(ViewState.java:196)
at org.springframework.webflow.engine.Flow.resume(Flow.java:545)
at
org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:259)
at
org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:163)
at
org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:771)
... 23 more
2010-05-05 11:44:50,327 DEBUG [org.jasig.cas.web.support.CasArgumentExtractor]
- <Extractor did not generate service.>
2010-05-05 11:44:50,328 DEBUG [org.jasig.cas.web.support.SamlArgumentExtractor]
- <Extractor did not generate service.>
Excerpts from my pom.xml
<dependencies>
<dependency>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-webapp</artifactId>
<version>${cas.version}</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-support-ldap</artifactId>
<version>${cas.version}</version>
<exclusions>
<exclusion>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>commons-dbcp-all</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.3.1.ga</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.3.0.ga</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.3.0.ga</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.4.sp1</version>
<scope>runtime</scope>
<exclusions>
<exclusion>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>concurrent</groupId>
<artifactId>concurrent</artifactId>
<version>1.3.4</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>8.4-701.jdbc3</version>
<scope>runtime</scope>
</dependency>
</dependencies>
--
You are currently subscribed to [email protected] as:
[email protected]
To unsubscribe, change settings or access archives, see
http://www.ja-sig.org/wiki/display/JSG/cas-user