Hi, I'm trying to setup AD as secondary user store in EMM 1.1.0.
When I try to create it via UI it creates the xml file as [1]. each property contains a space between words then the carbon log gives an error [2] saying "Required ConnectionURL property is not set at the LDAP configurations" Then I removed the space in between property "Connection URL" and save. Then carbon log gives another error [3] - "Required mandatory property Connection URL is not defined!" So I gave both "Connection URL" and "ConnectionURL" in xml file to solve the issue with ConnectionURL Same as above, I had to specify the same property with and without space to fix the errors in carbon log and there were some properties missing in the xml file too. had to add those manually. [4] shows the xml file after fixing all the errors. [missing properties shows in red color.] Still I can't see the Secondary user domain and users of the AD in users page. How can I fix this? [1] <?xml version="1.0" encoding="UTF-8"?><UserStoreManager class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager"> <Property name="*Connection Name* ">CN=Administrator,CN=Users,DC=wso2,DC=test</Property> <Property name="Connection URL">ldaps://192.168.18.13:636</Property> <Property name="Connection Password">pass#word2</Property> <Property name="User Search Base">CN=Users,DC=wso2,DC=test</Property> <Property name="Diabled">false</Property> <Property name="User Object Class">(objectClass=user)</Property> <Property name="Username Attribute">cn</Property> <Property name="User Search Filter">(&(objectClass=user)(cn=?))</Property> <Property name="User Entry Object Class">user</Property> <Property name="Group Entry Object Class">group</Property> <Property name="Maximum User List Length">100</Property> <Property name="Maximum Role List Length">100</Property> <Property name="Enable User Role Cache">true</Property> <Property name="Enable SCIM">false</Property> <Property name="ReadGroups">true</Property> <Property name="Group Search Base">CN=Users,DC=WSO2,DC=Com</Property> <Property name="Group Object Class">(objectcategory=group)</Property> <Property name="Group Name Attribute">cn</Property> <Property name="Membership Attribute">member</Property> <Property name="Member Of Attribute"/> <Property name="Group Search Filter">(&(objectClass=group)(cn=?))</Property> <Property name="Password Hashing Algorithm">PLAIN_TEXT</Property> <Property name="Password RegEx (Javascript)">^[\S]{5,30}$</Property> <Property name="Username RegEx (Javascript)">^[\S]{3,30}$</Property> <Property name="Username RegEx (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> <Property name="Role Name RegEx (Javascript)">^[\S]{3,30}$</Property> <Property name="Role Name RegEx (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> <Property name="Enable Write Groups">true</Property> <Property name="User DN Pattern">uid={0},ou=Users,dc=wso2,dc=org</Property> <Property name="Allow Empty Roles">true</Property> <Property name="Default Realm Name">WSO2.ORG</Property> <Property name="Enable KDC">false</Property> <Property name="Display Name Attribute">cn</Property> <Property name="Is ADLDS Role">false</Property> <Property name="User Account Control">512</Property> <Property name="Referral">follow</Property> <Property name="Enable Back Links">true</Property> <Property name="DomainName">AD</Property> <Property name="Description"/> </UserStoreManager> [2] [2015-06-04 11:32:59,024] ERROR {org.wso2.carbon.user.core.common.AbstractUserStoreManager} - Cannot create org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at org.wso2.carbon.user.core.common.AbstractUserStoreManager.createSecondaryUserStoreManager(AbstractUserStoreManager.java:3469) at org.wso2.carbon.user.core.common.AbstractUserStoreManager.addSecondaryUserStoreManager(AbstractUserStoreManager.java:3525) at org.wso2.carbon.user.core.common.UserStoreDeploymentManager.deploy(UserStoreDeploymentManager.java:65) at org.wso2.carbon.identity.user.store.configuration.deployer.UserStoreConfigurationDeployer.deploy(UserStoreConfigurationDeployer.java:58) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807) at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377) at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) at org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:135) at org.wso2.carbon.core.CarbonAxisConfigurator.loadServices(CarbonAxisConfigurator.java:464) at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:95) at org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) at org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) at org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77) 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.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260) at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347) at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620) at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197) at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343) at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222) at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) at org.eclipse.equinox.http.servlet.internal.Activator.registerHttpService(Activator.java:81) at org.eclipse.equinox.http.servlet.internal.Activator.addProxyServlet(Activator.java:60) at org.eclipse.equinox.http.servlet.internal.ProxyServlet.init(ProxyServlet.java:40) at org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.init(DelegationServlet.java:38) at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1267) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1186) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1081) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: org.wso2.carbon.user.core.UserStoreException: Required ConnectionURL property is not set at the LDAP configurations at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.checkRequiredUserStoreConfigurations(ReadOnlyLDAPUserStoreManager.java:214) at org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.checkRequiredUserStoreConfigurations(ReadWriteLDAPUserStoreManager.java:1682) at org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager.checkRequiredUserStoreConfigurations(ActiveDirectoryUserStoreManager.java:398) at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.<init>(ReadOnlyLDAPUserStoreManager.java:133) at org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.<init>(ReadWriteLDAPUserStoreManager.java:102) at org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager.<init>(ActiveDirectoryUserStoreManager.java:85) ... 56 more [3] [2015-06-04 11:35:34,128] ERROR {org.wso2.carbon.user.core.config.XMLProcessorUtils} - Required mandatory property Connection URL is not defined! [2015-06-04 11:35:34,129] ERROR {org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor} - Error while building user store manager from file org.wso2.carbon.user.core.UserStoreException: A required mandatory field is missing. at org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor.buildUserStoreConfiguration(UserStoreConfigXMLProcessor.java:106) at org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor.buildUserStoreConfigurationFromFile(UserStoreConfigXMLProcessor.java:70) at org.wso2.carbon.user.core.common.UserStoreDeploymentManager.deploy(UserStoreDeploymentManager.java:43) at org.wso2.carbon.identity.user.store.configuration.deployer.UserStoreConfigurationDeployer.deploy(UserStoreConfigurationDeployer.java:58) at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807) at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377) at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) at org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371) at org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59) at org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67) at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:79) at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:124) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) [2015-06-04 11:35:34,129] INFO {org.apache.axis2.deployment.DeploymentEngine} - org.apache.axis2.deployment.DeploymentException: The deployment of AD.xml is not valid. [4] <?xml version="1.0" encoding="UTF-8"?><UserStoreManager class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager"> <Property name="Connection Name">CN=Administrator,CN=Users,DC=wso2,DC=test</Property> * <Property name="ConnectionName">CN=Administrator,CN=Users,DC=wso2,DC=test</Property>* <Property name="Connection URL">ldaps://192.168.18.13:636</Property> * <Property name="ConnectionURL">ldaps://192.168.18.13:636 <http://192.168.18.13:636></Property>* <Property name="Connection Password">pass#word2</Property> * <Property name="ConnectionPassword">pass#word2</Property>* <Property name="User Search Base">CN=Users,DC=wso2,DC=test</Property> * <Property name="UserSearchBase">CN=Users,DC=wso2,DC=test</Property>* <Property name="Diabled">false</Property> <Property name="User Object Class">(objectClass=user)</Property> * <Property name="UserNameListFilter">(objectClass=user)</Property>* <Property name="Username Attribute">cn</Property> <Property name="UserNameAttribute">cn</Property> <Property name="User Search Filter">(&(objectClass=user)(cn=?))</Property> * <Property name="UserNameSearchFilter">(&(objectClass=user)(cn=?))</Property>* <Property name="User Entry Object Class">user</Property> * <Property name="UserEntryObjectClass">user</Property>* <Property name="Group Entry Object Class">group</Property> * <Property name="GroupEntryObjectClass">group</Property>* <Property name="Maximum User List Length">100</Property> <Property name="Maximum Role List Length">100</Property> <Property name="Enable User Role Cache">true</Property> <Property name="Enable SCIM">false</Property> <Property name="ReadGroups">true</Property> <Property name="Group Search Base">CN=Users,DC=WSO2,DC=Com</Property> * <Property name="GroupSearchBase">CN=Users,DC=WSO2,DC=Com</Property>* <Property name="Group Object Class">(objectcategory=group)</Property> * <Property name="GroupNameListFilter">(objectcategory=group)</Property>* <Property name="Group Name Attribute">cn</Property> <Property name="GroupNameAttribute">cn</Property> <Property name="Membership Attribute">member</Property> <Property name="MembershipAttribute">member</Property> <Property name="Member Of Attribute"/> <Property name="Group Search Filter">(&(objectClass=group)(cn=?))</Property> * <Property name="GroupNameSearchFilter">(&(objectClass=group)(cn=?))</Property> * <Property name="Password Hashing Algorithm">PLAIN_TEXT</Property> <Property name="Password RegEx (Javascript)">^[\S]{5,30}$</Property> <Property name="Username RegEx (Javascript)">^[\S]{3,30}$</Property> <Property name="Username RegEx (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> <Property name="Role Name RegEx (Javascript)">^[\S]{3,30}$</Property> <Property name="Role Name RegEx (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> <Property name="Enable Write Groups">true</Property> <Property name="User DN Pattern">uid={0},ou=Users,dc=wso2,dc=org</Property> <Property name="Allow Empty Roles">true</Property> <Property name="Default Realm Name">WSO2.ORG</Property> <Property name="Enable KDC">false</Property> <Property name="Display Name Attribute">cn</Property> <Property name="Is ADLDS Role">false</Property> <Property name="User Account Control">512</Property> <Property name="Referral">follow</Property> <Property name="Enable Back Links">true</Property> <Property name="DomainName">AD</Property> <Property name="Description"/> </UserStoreManager> -- Amalka Subasinghe Senior Software Engineer WSO2 Inc. Mobile: +94 77 9401267
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev