Hi Udara, No, it should raise an error if someone is trying to use the Mock IaaS without enabling it.
In this scenario what happens is Stratos is starting the Mock IaaS OSGi bundle and the bundle is trying to create an instance of MockIaasServiceImpl while it is disabled. I have now fixed this in master branch. Thanks On Tue, Feb 17, 2015 at 1:41 PM, Udara Liyanage <[email protected]> wrote: > Hi Imesh, > > I found the code snippet. It should be a warning message instead of > throwing an exception since a user should be able to use Stratos without > MockIaaS in case he is using another IaaS. > > if(!MockIaasConfig.getInstance().isEnabled()) { > throw new RuntimeException("Mock IaaS is disabled, please check the > configuration"); > } > > > On Tue, Feb 17, 2015 at 1:36 PM, Udara Liyanage <[email protected]> wrote: > >> Hi, >> >> I have <mock-iaas enabled="false"> in mock-iaas.xml and removed mock-iaas >> related confings in cloud-controller.xml. >> >> When I have a glance there was a service *MockIaasServiceComponent* >> which tries to start MockIaaS at ativation process. MockIaaS is not >> compulsary? is'it? >> >> [2015-02-17 13:28:45,485] INFO >> {org.apache.stratos.common.threading.StratosThreadPool} - Thread pool >> created: [type] Executor Service [id] mock.member.thread.pool [size] 100 >> [2015-02-17 13:28:45,499] ERROR >> {org.apache.stratos.mock.iaas.internal.MockIaasServiceComponent} - * An >> error occurred when starting mock instances* >> *java.lang.RuntimeException: Mock IaaS is disabled, please check the >> configuration* >> at >> org.apache.stratos.mock.iaas.services.impl.MockIaasServiceImpl.<init>(MockIaasServiceImpl.java:70) >> at >> org.apache.stratos.mock.iaas.internal.MockIaasServiceComponent.activate(MockIaasServiceComponent.java:51) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> 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.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451) >> at >> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.registerServices(DataSourceServiceComponent.java:125) >> at >> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.initSuperTenantUserDataSources(DataSourceServiceComponent.java:220) >> at >> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.checkInitTenantUserDataSources(DataSourceServiceComponent.java:205) >> at >> org.wso2.carbon.ndatasource.core.internal.DataSourceServiceComponent.setRegistryService(DataSourceServiceComponent.java:156) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at >> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376) >> at >> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432) >> at >> org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:416) >> at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:334) >> 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.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.activate(RegistryCoreServiceComponent.java:120) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> 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.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:70) >> at >> org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) >> at >> org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) >> at >> org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) >> at >> org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) >> at >> org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390) >> at >> org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) >> at >> org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) >> at >> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) >> at >> org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) >> >> -- >> >> Udara Liyanage >> Software Engineer >> WSO2, Inc.: http://wso2.com >> lean. enterprise. middleware >> >> web: http://udaraliyanage.wordpress.com >> phone: +94 71 443 6897 >> > > > > -- > > Udara Liyanage > Software Engineer > WSO2, Inc.: http://wso2.com > lean. enterprise. middleware > > web: http://udaraliyanage.wordpress.com > phone: +94 71 443 6897 > -- Imesh Gunaratne Technical Lead, WSO2 Committer & PMC Member, Apache Stratos
