I guess you should write your "dataSource" bean outside the
"authenticationManager" bean, it shouldn't be a nested bean.
<bean
class="
org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHand
ler">
<property name="tableUsers"><value>users</value></property>
<property name="fieldUser"><value>username</value></property>
<property name="fieldPassword"><value>pwd</value></property>
<property name="dataSource" ref="dataSource"/>
</bean>
----> from here
<bean id="dataSource" class="
org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/mydb</value>
</property>
<property name="username">
<value>my_id</value>
</property>
<property name="password">
<value>my_pass</value>
</property>
</bean>
----> to here, please move outside the <bean
id="authenticationManager"...><list><property>...</list></property></
bean>
</list>
</property>
</bean>
Should be:
...
<bean
class="
org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHandle
r">
...
</bean>
</list>
</property>
</bean>
...
<bean id="dataSource" class=" org.apache.commons.dbcp.BasicDataSource">
....
</bean>
It works for me
thanks,
Li Wei Nan
在 2008-1-22,上午9:58,Scott Battaglia 写道:
Can you post your entire deployerConfigContext.xml. My guess is
you have it defined in the wrong location, but I can't tell from
the snippit included.
-Scott
On Jan 21, 2008 8:47 PM, Jack HU < [EMAIL PROTECTED]> wrote:
I deployed cas to Tomcat 5.5 , and copied cas-server-support-
jdbc*.jar, commons-dbcp*.jar, commons-pool*.jar etc into /cas/WEB-
INF/lib/. I also edited "deployerConfigContext.xml" as instructed
as follows:
<bean
class="
org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHand
ler">
<property name="tableUsers"><value>users</value></property>
<property name="fieldUser"><value>username</value></property>
<property name="fieldPassword"><value>pwd</value></property>
<property name="dataSource" ref="dataSource"/>
</bean>
<bean id="dataSource" class="
org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/mydb</value>
</property>
<property name="username">
<value>my_id</value>
</property>
<property name="password">
<value>my_pass</value>
</property>
</bean>
</list>
</property>
</bean>
However, I kept on getting the following error, which seems related
to the "dataSource" bean:
2008-01-21 13:31:43 StandardContext[/cas]Exception starting filter
Acegi Filter Chain Proxy
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'centralAuthenticationService' defined in
ServletContext resource [/WEB-INF/applicationContext.xml]: Cannot
resolve reference to bean 'authenticationManager' while setting
bean property 'authenticationManager'; nested exception is
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'authenticationManager' defined in
ServletContext resource [/WEB-INF/deployerConfigContext.xml]:
Cannot create inner bean '
org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHand
ler#1d532ae' of type
[org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHan
dler] while setting bean property 'authenticationHandlers' with key
[1]; nested exception is
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name
'org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHan
dler#1d532ae' defined in
ServletContext resource [/WEB-INF/deployerConfigContext.xml]:
Cannot resolve reference to bean 'dataSource' while setting bean
property 'dataSource'; nested exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException: No
bean named 'dataSource' is defined
Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'authenticationManager' defined in
ServletContext resource [/WEB-INF/deployerConfigContext.xml]:
Cannot create inner bean '
org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHand
ler#1d532ae' of type
[org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHan
dler] while setting bean property 'authenticationHandlers' with key
[1]; nested exception is
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name
'org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHan
dler#1d532ae' defined in ServletContext resource [/WEB-INF/
deployerConfigContext.xml]: Cannot resolve reference to bean
'dataSource' while setting bean property 'dataSource'; nested
exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException: No
bean named 'dataSource' is defined
Caused by: org.springframework.beans.factory.BeanCreationException:
Error creating bean with name
'org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHan
dler#1d532ae ' defined in ServletContext resource [/WEB-INF/
deployerConfigContext.xml]: Cannot resolve reference to bean
'dataSource' while setting bean property 'dataSource'; nested
exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException :
No bean named 'dataSource' is defined
Caused by:
org.springframework.beans.factory.NoSuchBeanDefinitionException: No
bean named 'dataSource' is defined
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.g
etBeanDefinition (DefaultListableBeanFactory.java:356)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getMerge
dBeanDefinition(AbstractBeanFactory.java:916)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:243)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(
AbstractBeanFactory.java:160)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveReference (BeanDefinitionValueResolver.java:261)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveValueIfNecessary(BeanDefinitionValueResolver.java:109)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.applyPropertyValues (AbstractAutowireCapableBeanFactory.java:
1099)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.populateBean(AbstractAutowireCapableBeanFactory.java:861)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.createBean (AbstractAutowireCapableBeanFactory.java:421)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveInnerBean(BeanDefinitionValueResolver.java:215)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveValueIfNecessary (BeanDefinitionValueResolver.java:122)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveManagedList(BeanDefinitionValueResolver.java:281)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveValueIfNecessary (BeanDefinitionValueResolver.java:131)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:
1099)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.populateBean (AbstractAutowireCapableBeanFactory.java:861)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.createBean(AbstractAutowireCapableBeanFactory.java:421)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject (AbstractBeanFactory.java:251)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
.getSingleton(DefaultSingletonBeanRegistry.java:156)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:248)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(
AbstractBeanFactory.java:160)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveReference (BeanDefinitionValueResolver.java:261)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.
resolveValueIfNecessary(BeanDefinitionValueResolver.java:109)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.applyPropertyValues (AbstractAutowireCapableBeanFactory.java:
1099)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.populateBean(AbstractAutowireCapableBeanFactory.java:861)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
actory.createBean (AbstractAutowireCapableBeanFactory.java:421)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:251)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
.getSingleton (DefaultSingletonBeanRegistry.java:156)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(
AbstractBeanFactory.java:248)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:160)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.p
reInstantiateSingletons(DefaultListableBeanFactory.java:287)
at
org.springframework.context.support.AbstractApplicationContext.refresh
(AbstractApplicationContext.java:352)
at
org.springframework.web.context.ContextLoader.createWebApplicationCont
ext(ContextLoader.java:244)
at
org.springframework.web.context.ContextLoader.initWebApplicationContex
t (ContextLoader.java:187)
at
org.springframework.web.context.ContextLoaderListener.contextInitializ
ed(ContextLoaderListener.java:49)
at
org.jasig.cas.web.init.SafeContextLoaderListener.contextInitialized
(SafeContextLoaderListener.java :62)
at org.apache.catalina.core.StandardContext.listenerStart
(StandardContext.java:3827)
at org.apache.catalina.core.StandardContext.start
(StandardContext.java:4343)
at org.apache.catalina.core.StandardHostDeployer.start
(StandardHostDeployer.java:830)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:991)
at org.apache.catalina.manager.ManagerServlet.start
(ManagerServlet.java:1322)
at org.apache.catalina.manager.HTMLManagerServlet.start
(HTMLManagerServlet.java:530)
at org.apache.catalina.manager.HTMLManagerServlet.doGet
(HTMLManagerServlet.java:104)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service (HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal
(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.java:540)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service
(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol
$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
2008-01-21 13:31:43 StandardContext[/cas]Closing Spring root
WebApplicationContext
2008-01-21 13:31:43 StandardContext[/cas]Shutting down Log4J
2008-01-21 13:31:43 StandardContext[/manager]HTMLManager: list:
Listing contexts for virtual host 'localhost'
I've been trying for a whole day, but still could not figure out
what's wrong. Any guru here can help?
Thank you so much.
Yan
______________________________________________________________________
______________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://
mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
_______________________________________________
Yale CAS mailing list
[email protected]
http://tp.its.yale.edu/mailman/listinfo/cas
--
-Scott Battaglia
LinkedIn: http://www.linkedin.com/in/scottbattaglia
_______________________________________________
Yale CAS mailing list
[email protected]
http://tp.its.yale.edu/mailman/listinfo/cas
_______________________________________________
Yale CAS mailing list
[email protected]
http://tp.its.yale.edu/mailman/listinfo/cas