首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WSo2治理注册表4.6.0 -二级用户存储问题

WSo2治理注册表4.6.0 -二级用户存储问题
EN

Stack Overflow用户
提问于 2014-05-12 11:51:30
回答 1查看 199关注 0票数 1

我无法加载我的第二个用户存储。

我尝试过使用治理注册表的管理控制台配置它,并手动进行配置。我的第二个用户存储是Active Directory,我已经尝试配置了两个ActiveDirectoryUserStoreManager,当这两种配置都不起作用时,我尝试使用ReadOnlyLDAPUserStoreManager。两样都没用。

wso2carbon.log一直这么说..。

代码语言:javascript
复制
TID: [0] [Greg] [2014-05-12 12:03:06,429] ERROR {org.wso2.carbon.user.core.common.AbstractUserStoreManager} -  Cannot create org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager {org.wso2.carbon.user.core.common.AbstractUserStoreManager}
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:525)
at org.wso2.carbon.user.core.common.AbstractUserStoreManager.createSecondaryUserStoreManager(AbstractUserStoreManager.java:3442)
at org.wso2.carbon.user.core.common.AbstractUserStoreManager.addSecondaryUserStoreManager(AbstractUserStoreManager.java:3498)
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:810)
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:65)
at org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:110)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
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:722)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 2
at org.wso2.carbon.user.core.ldap.LDAPConnectionContext.<init>(LDAPConnectionContext.java:85)
at org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.<init>(ReadOnlyLDAPUserStoreManager.java:148)
at org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.<init>(ReadWriteLDAPUserStoreManager.java:102)
at org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager.<init>(ActiveDirectoryUserStoreManager.java:85)
... 26 more
TID: [0] [Greg] [2014-05-12 12:03:06,431]  INFO {org.apache.axis2.deployment.DeploymentEngine} -  org.apache.axis2.deployment.DeploymentException: The deployment of ccad.xml is not valid. {org.apache.axis2.deployment.DeploymentEngine}

我已经在谷歌上搜索了好几天了,但是没有任何帮助。但是,我认为这个错误和这个类似.https://wso2.org/jira/browse/IDENTITY-1943

有人知道我能做些什么来使第二用户商店正常工作吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-29 13:42:04

在创建用户商店时,需要在Connection属性中提供端口号,如下所示:

ldap://goja.local:389

这是相关的代码片段:

代码语言:javascript
复制
    String rawConnectionURL = realmConfig.getUserStoreProperty(LDAPConstants.CONNECTION_URL);
    String connectionURL = null;
    //if DNS enabled in AD case, this can be null
    if (rawConnectionURL != null) {
        String portInfo = rawConnectionURL.split(":")[2];

当端口号丢失时,将在最后一行抛出ArrayIndexOutOfBoundsException。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23608295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档