Guy Malachi - 2016-03-14

I defined two identity stores JDBC and LDAP. Here is my configuration for identity stores:
<vis:virtual-bind-store id="josso-identity-store">
<vis:sources>
<vis:source alias="source-1">
<vis:backing-store>
<db-istore:jdbc-store id="identity-store-1" driverName="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/josso" connectionName="XXXX" connectionPassword="XXXX" userQueryString="SELECT email AS NAME FROM JOSSO_USER WHERE email = ?" rolesQueryString="SELECT NAME AS ROLE FROM JOSSO_USER_ROLE WHERE email = ?" credentialsQueryString="SELECT email AS USERNAME, PASSWORD FROM JOSSO_USER WHERE email = ?" userPropertiesQueryString="SELECT NAME, VALUE FROM JOSSO_USER_PROPERTY WHERE email = ?" resetCredentialDml="UPDATE JOSSO_USER SET PASSWORD = ? WHERE email = ?" relayCredentialQueryString="SELECT email FROM JOSSO_USER WHERE #?# = ?"/>
</vis:backing-store>
</vis:source>

<vis:source alias="source-2">
<vis:backing-store>
<ldap-istore:ldap-bind-store id="identity-store-2" initialContextFactory="com.sun.jndi.ldap.LdapCtxFactory" providerUrl="ldap://XXXX:XXX" securityPrincipal="CN=a User,OU=NoPolicy,OU=b,DC=c,DC=d" securityCredential="XXXX" securityAuthentication="simple" ldapSearchScope="SUBTREE" usersCtxDN="OU=a,DC=b,DC=local" principalUidAttributeID="sAMAccountName" uidAttributeID="sAMAccountName" rolesCtxDN="OU=a,DC=b,DC=local" roleAttributeID="sAMAccountName" credentialQueryString="uid=username,userPassword=password" updateableCredentialAttribute="userPassword" userPropertiesQueryString="mail=mail,cn=description"/>
</vis:backing-store>
</vis:source>
</vis:sources>
<vis:mapping-policy>
<vis:rule-based-mapping-policy>
<vis:user-mapping-rules>
<vis:select-all-users/>
<vis:merge-properties/>
</vis:user-mapping-rules>
<vis:roles-mapping-rules>
<vis:select-all-roles/>
<vis:merge-roles/>
</vis:roles-mapping-rules>
<vis:credentials-mapping-rules>
<vis:select-all-credentials/>
<vis:merge-credentials/>
</vis:credentials-mapping-rules>
<vis:uid-mapping-rules>
<vis:select-first-uid/>
<vis:qualify-uid namespace="dc=foo,dc=com"/>
</vis:uid-mapping-rules>
<vis:bind-mapping-rules>
<vis:bind-on-any-source/>
</vis:bind-mapping-rules>
<vis:user-exists-mapping-rules>
<vis:user-exists-on-any-source/>
</vis:user-exists-mapping-rules>
</vis:rule-based-mapping-policy>
</vis:mapping-policy>
</vis:virtual-bind-store>

but when i start the server i get the following exception:

SEVERE: Error creating bean with name 'josso-basic-authentication' defined in class path resource [josso-gateway-auth.xml]: Cannot resolve reference to bean 'josso-identity-store' while setting bean property 'credentialStore'; nested
exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'josso-identity-store' defined in class path resource [josso-gateway-virtual-stores.xml]: Cannot create inner bean 'vis:source#34d91b6
6' of type [org.josso.gateway.identity.service.store.virtual.IdentitySourceImpl] while setting bean property 'identitySources' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating b
ean with name 'vis:source#34d91b66' defined in class path resource [josso-gateway-virtual-stores.xml]: Initialization of bean failed; nested exception is org.springframework.beans.TypeMismatchException: Failed to convert property valu
e of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backingIdentityStore'; nested exception is java.lang.IllegalArgumentExce
ption: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backingIdentityStore': no matching editors or
conversion strategy found
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'josso-basic-authentication' defined in class path resource [josso-gateway-auth.xml]: Cannot resolve reference to bean 'josso-identity-store' while
setting bean property 'credentialStore'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'josso-identity-store' defined in class path resource [josso-gateway-virtual-stores.x
ml]
: Cannot create inner bean 'vis:source#34d91b66' of type [org.josso.gateway.identity.service.store.virtual.IdentitySourceImpl] while setting bean property 'identitySources' with key [0]; nested exception is org.springframework.bean
s.factory.BeanCreationException: Error creating bean with name 'vis:source#34d91b66' defined in class path resource [josso-gateway-virtual-stores.xml]: Initialization of bean failed; nested exception is org.springframework.beans.TypeM
ismatchException: Failed to convert property value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backingIdentityStore';
nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for propert
y 'backingIdentityStore': no matching editors or conversion strategy found
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)
at org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:161)
at org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:51)
at org.josso.spring.SpringComponentKeeperImpl.<init>(SpringComponentKeeperImpl.java:52)
at org.josso.spring.SpringComponentKeeperFactoryImpl.newComponentKeeper(SpringComponentKeeperFactoryImpl.java:36)
at org.josso.Lookup.getComponentKeeper(Lookup.java:182)
at org.josso.Lookup.lookupSSOGateway(Lookup.java:109)
at org.josso.gateway.signon.SSOContextListener.contextInitialized(SSOContextListener.java:51)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4210)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4709)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:802)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:583)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1080)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1003)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:507)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1322)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:325)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1068)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:822)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1060)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:759)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'josso-identity-store' defined in class path resource [josso-gateway-virtual-stores.xml]: Cannot create inner bean 'vis:source#34d91b66'
of type [org.josso.gateway.identity.service.store.virtual.IdentitySourceImpl] while setting bean property 'identitySources' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bea
n with name 'vis:source#34d91b66' defined in class path resource [josso-gateway-virtual-stores.xml]: Initialization of bean failed; nested exception is org.springframework.beans.TypeMismatchException: Failed to convert property value
of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backingIdentityStore'; nested exception is java.lang.IllegalArgumentExcept
ion: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backingIdentityStore': no matching editors or co
nversion strategy found
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:230)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:117)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:126)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
... 46 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'vis:source#34d91b66' defined in class path resource [josso-gateway-virtual-stores.xml]: Initialization of bean failed; nested exception
is org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] fo
r property 'backingIdentityStore'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.servi
ce.store.IdentityStore]
for property 'backingIdentityStore': no matching editors or conversion strategy found
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:480)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:219)
... 61 more
Caused by: org.springframework.beans.TypeMismatchException: Failed to convert property value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentitySt
ore]
for property 'backingIdentityStore'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identit
y.service.store.IdentityStore]
for property 'backingIdentityStore': no matching editors or conversion strategy found
at org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:391)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.convertForProperty(AbstractAutowireCapableBeanFactory.java:1288)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1249)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
... 65 more
Caused by: java.lang.IllegalArgumentException: Cannot convert value of type [org.josso.gateway.identity.service.store.db.JDBCIdentityStore] to required type [org.josso.gateway.identity.service.store.IdentityStore] for property 'backin
gIdentityStore': no matching editors or conversion strategy found
at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:219)
at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:138)
at org.springframework.beans.BeanWrapperImpl.convertForProperty(BeanWrapperImpl.java:386)
... 69 more

    **I would appreciate that is anyone can help...**