Hi Jeffrey, Manula has sent a note on this to dev@ "Root element is removed from the JSON files".
On Fri, Mar 28, 2014 at 11:10 AM, Jeffrey Nguyen (jeffrngu) < [email protected]> wrote: > > Hi Nirmal, > > I dropped the root element from my JSON and was able to register the > tenant successfully :-) > > Just to clarify, I need to drop root element for all of the JSON > payloads? Which JIRA did we make this change? I don't recall seeing > any email to the alias talking about this change. It would be nice to get > a heads up. Also, I hope we make a note of this in the release notes. > > Thanks for the pointer. > > -Jeffrey > > From: Nirmal Fernando <[email protected]> > Reply-To: "[email protected]" < > [email protected]> > Date: Thursday, March 27, 2014 5:49 PM > To: "[email protected]" <[email protected]> > Subject: Re: Exception thrown when registering tenant > > Hi Jeffrey, > > With the latest code you should not have json root elements. > On Mar 28, 2014 5:59 AM, "Jeffrey Nguyen (jeffrngu)" <[email protected]> > wrote: > >> Hi, >> >> I'm testing the latest code on master branch (as of March 26th). I'm >> getting an exception when trying to register a tenant. Please see stack >> trace at the bottom of this email. >> >> To register tenant, I'm making a POST request to " >> https://127.0.0.1:9445/stratos/admin/tenant" with the Json payload below. >> >> { >> "tenantInfoBean": >> { >> "admin": "admin", >> "firstname": "cloud", >> "lastname": "one", >> "adminPassword": "password", >> "tenantDomain": "cloud1.cisco.com", >> "email": "[email protected]", >> "active": "true" >> } >> } >> >> >> This has been working for us up until the Alpha release. >> >> I did a little bit of debugging and found that when we call >> *StratosAdmin.addTenant() >> *with an instance of the TenantInfoBean, all the attributes of this bean >> instance is null. That's why the email validation failed. >> >> One thing I learned this week from Isuru was that >> andes-client-0.13.wso2v8.jar >> needs to be manually deployed for various Stratos components. I did that >> but not sure if there are anything else I missed. >> >> Any ideas what would be causing this? >> >> >> [2014-03-27 10:05:01,161] ERROR >> {org.apache.stratos.rest.endpoint.services.StratosAdmin} - Invalid email >> is provided. >> java.lang.Exception: Provided email value is null. >> at >> org.apache.stratos.common.util.CommonUtil.validateEmail(CommonUtil.java:292) >> at >> org.apache.stratos.rest.endpoint.services.StratosAdmin.addTenant(StratosAdmin.java:442) >> 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.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180) >> at >> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) >> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194) >> at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:100) >> at >> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:57) >> at >> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:93) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >> at >> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >> at >> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >> at >> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >> at >> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) >> at >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >> at >> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56) >> at >> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) >> at >> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) >> at >> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) >> at >> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653) >> 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:744) >> > -- Best Regards, Nirmal Nirmal Fernando. PPMC Member & Committer of Apache Stratos, Senior Software Engineer, WSO2 Inc. Blog: http://nirmalfdo.blogspot.com/
