Thanks to Omindu. After adding the 3 attributes below, the addition works now.
But the current addTenant working flow doesn't seem reasonable. And I have the
following concerns:
when I am creating the Tenant, we don't have the firstname/lastname and
password, we would like to ask the User to enter only the "email" with valid
"domain" to create the tenant
we will default the email to be an administrator, and then send an invitation
to the user email
only after user activates the link, we will get the username/lastname and
password; otherwise the tenant will be kept inactive
the "addTenant" didn't respect the Active status in the TenantInfoBean, and it
will be in Active after creation. It's a problem to me.
Regards, Wenxing
------------------ Original ------------------
From: "Omindu Rathnaweera";<omi...@wso2.com>;
Send time: Thursday, Sep 22, 2016 10:38 PM
To: "wenxzhen"<wenxing.zh...@qq.com>;
Cc: "dev"<dev@wso2.org>;
Subject: Re: [Dev] Exception when creating a tenant with TenantMgtAdminService
Hi Wenxing,
Additionally, can you try setting the following parameters as well,
- adminPassword
- firstname
- lastname
Regards,
Omindu
On Thu, Sep 22, 2016 at 5:46 PM, wenxzhen <wenxing.zh...@qq.com> wrote:
paste the codes to do the addTenant for reference:
String cookie = WSO2AuthenticationAdmin.getCookie();
TenantMgtAdminServiceStub tenantMgtStub = null;
tenantMgtStub = new
TenantMgtAdminServiceStub(CommonConfig.TENANT_ADMIN_ENDPOINT);
Options option = tenantMgtStub._getServiceClient().getOptions();
option.setManageSession(true);
option.setProperty(org.apache.axis2.transport.http.HTTPConstants.COOKIE_STRING,
cookie);
String value = tenantMgtStub.addTenant(getTenantBeanInfo(tenantBean));
------------------ Original ------------------
From: "wenxzhen";<wenxing.zh...@qq.com>;
Date: Sep 22, 2016
To: "dev"<dev@wso2.org>;
Subject: [Dev] Exception when creating a tenant with TenantMgtAdminService
Dear all,
On AS 5.3.0, I am using the TenantMgtAdminService to create the tenant with
only the following attributes:
TenantInfoBean infoBean = new TenantInfoBean();
infoBean.setTenantDomain(...);
infoBean.setActive(...);
infoBean.setEmail(...);
infoBean.setUsagePlan(...);
infoBean.setAdmin(...);
And then I got the exception below, from the words "Error occurred while adding
user property for user : m...@sina.com & property name : sn & value : null", it
seemed I am missing some mandatory parameters?
TID: [-1234] [] [2016-09-22 19:44:08,431] INFO
{org.das.server.users.wso2admin.WSO2AuthenticationAdmin} - getCookie with
JSESSIONID=6BDFFED6992C09224D1EB74F2A430AAE; Path=/; Secure=null; HttpOnly=null
{org.das.server.users.wso2admin.WSO2AuthenticationAdmin}
TID: [4] [] [2016-09-22 19:44:09,533] @so.net [4] [AS]ERROR
{org.wso2.carbon.tenant.mgt.util.TenantMgtUtil} - Error in adding claims to
the user. {org.wso2.carbon.tenant.mgt.util.TenantMgtUtil}
org.wso2.carbon.user.core.UserStoreException: Error occurred while getting
claim attribute for user : m...@sina.com
at
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.doSetUserClaimValues(JDBCUserStoreManager.java:1989)
at
org.wso2.carbon.user.core.common.AbstractUserStoreManager.setUserClaimValues(AbstractUserStoreManager.java:988)
at
org.wso2.carbon.tenant.mgt.util.TenantMgtUtil.addClaimsToUserStoreManager(TenantMgtUtil.java:348)
at
org.wso2.carbon.tenant.mgt.services.TenantMgtAdminService.addTenant(TenantMgtAdminService.java:79)
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.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
at
org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
at
org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:173)
at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
at
org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:231)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at
org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
at
org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at
org.wso2.carbon.statistics.webapp.RequestIntercepterValve.invoke(RequestIntercepterValve.java:47)
at
org.wso2.carbon.bam.webapp.stat.publisher.WebAppStatisticPublisherValve.invoke(WebAppStatisticPublisherValve.java:104)
at
org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
at
org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
at
org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57)
at
org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
at
org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
at
org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at
org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.wso2.carbon.user.core.UserStoreException: Error occurred while
adding user property for user : m...@sina.com & property name : sn & value :
null
at
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.addProperty(JDBCUserStoreManager.java:2273)
at
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.doSetUserClaimValues(JDBCUserStoreManager.java:1972)
... 55 more
Caused by: org.wso2.carbon.user.core.UserStoreException: Invalid data provided
at
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.updateStringValuesToDatabase(JDBCUserStoreManager.java:2194)
at
org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.addProperty(JDBCUserStoreManager.java:2261)
... 56 more
TID: [-1234] [] [2016-09-22 19:44:09,545] WARN
{org.das.server.users.TenantServiceImpl} - addTenant failed with Error:
TenantMgtAdminServiceExceptionException, Cause: null
{org.das.server.users.TenantServiceImpl}
Please help to advice
Thanks, Wenxing
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev
--
Omindu RathnaweeraSoftware Engineer, WSO2 Inc.
Mobile: +94 771 197 211
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev