Hi, On Wed, Jun 6, 2012 at 10:28 AM, Rajika Kumarasiri <[email protected]> wrote:
> Yeah this is what I meant, you can instantiate an object of the relevant > admin services and use them. > > Rajika > > > On Wed, Jun 6, 2012 at 10:26 AM, Nuwan Bandara <[email protected]> wrote: > >> Why do you need to create service stubs if you are in the backend anyway. >> If I understand your scenario correctly, you can simply do a Java call, >> importing dashboard packages >> >> In my scenario there is possibility that the dashboard admin service is not available in the same JVM, and that is why I thought of using the stub. Basically I'm writing a bam artifact deployer, which consists of some gadget artifacts and I wanted to call the dashboard services to deploy those artifacts, if the dashboard admin service is available. In BAM there is a use case where we can separate the presentation layer, and in that case the dashboard won't be under same JVM. In that case, I should avoid deploying gadget artifacts and deploy other bam related artifacts, In this situation, I guess the stub would work more better. And If i directly instantiate and use the object I will get ClassNotFoundException. So what would be the better way? Thanks, Sinthuja. > Regards, >> /Nuwan >> >> >> On Wed, Jun 6, 2012 at 10:21 AM, Sinthuja Ragendran <[email protected]>wrote: >> >>> >>> Hi, >>> >>> On Wed, Jun 6, 2012 at 10:09 AM, Rajika Kumarasiri <[email protected]>wrote: >>> >>>> What prevent you calling the admin service directly ? >>>> >>>> >>> Since I'm using the stub in by BE component to call the admin service, I >>> thought of using local transport as it's more faster. >>> >>> And also If I use http/https, i need credentials to authenticate and >>> get the session. >>> >>> Alternatively, there is no declarative service available for the >>> Dashboard Service. >>> >>> Due to all these, I thought local transport would be better way to call >>> the stub in my case. >>> >>> >>> Thanks, >>> Sinthuja. >>> >>>> Rajika >>>> >>>> On Wed, Jun 6, 2012 at 8:22 AM, Sinthuja Ragendran >>>> <[email protected]>wrote: >>>> >>>>> Hi All, >>>>> >>>>> In my BE component, I need to call some admin services to through stub >>>>> and I want to use local transport for that. >>>>> >>>>> For that, I changed the service url to >>>>> "local://services/DashboardService" in order to communicate with admin >>>>> service 'DashboardService', and passed the configuration context which is >>>>> obtained from ConfigurationContextService - OSGI declarative service. >>>>> >>>>> But I'm getting the following exception when I try to invoke a method >>>>> from the stub. >>>>> >>>>> java.lang.NullPointerException >>>>> at >>>>> org.apache.axis2.engine.DispatchPhase.fillContextsFromSessionContext(DispatchPhase.java:318) >>>>> at >>>>> org.apache.axis2.engine.DispatchPhase.loadContexts(DispatchPhase.java:185) >>>>> at >>>>> org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java:113) >>>>> at org.apache.axis2.engine.Phase.invoke(Phase.java:329) >>>>> at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:262) >>>>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:168) >>>>> at >>>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:166) >>>>> at >>>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:79) >>>>> at >>>>> org.apache.axis2.transport.local.LocalTransportSender.finalizeSendWithToAddress(LocalTransportSender.java:102) >>>>> at >>>>> org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77) >>>>> at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443) >>>>> at >>>>> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:406) >>>>> at >>>>> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229) >>>>> at >>>>> org.apache.axis2.client.OperationClient.execute(OperationClient.java:165) >>>>> at >>>>> org.wso2.carbon.dashboard.stub.DashboardServiceStub.addNewTab(DashboardServiceStub.java:5089) >>>>> at >>>>> org.wso2.carbon.bam.toolbox.deployer.client.DashboardClient.addTab(DashboardClient.java:74) >>>>> at >>>>> org.wso2.carbon.bam.toolbox.deployer.deploy.BAMArtifactDeployerManager.deployGadget(BAMArtifactDeployerManager.java:95) >>>>> at >>>>> org.wso2.carbon.bam.toolbox.deployer.deploy.BAMArtifactDeployerManager.deploy(BAMArtifactDeployerManager.java:124) >>>>> at >>>>> org.wso2.carbon.bam.toolbox.deployer.core.BAMToolBoxDeployer.deploy(BAMToolBoxDeployer.java:92) >>>>> 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.run(CarbonDeploymentSchedulerTask.java:76) >>>>> at >>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) >>>>> at >>>>> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) >>>>> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) >>>>> at >>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) >>>>> at >>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180) >>>>> at >>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) >>>>> at java.lang.Thread.run(Thread.java:662) >>>>> >>>>> I debug and checked in the axis2, and seems the error NPE is because >>>>> of transportIn is being null in the messageContext and the line which >>>>> throws the exception is, >>>>> >>>>> TransportListener listener = msgContext.getTransportIn().getReceiver(); >>>>> >>>>> >>>>> How this should be done? Is there any additional configuration that I >>>>> need to add for this? >>>>> >>>>> Any help is appreciated. >>>>> >>>>> >>>>> >>>>> Thanks, >>>>> Sinthuja. >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>> >>> _______________________________________________ >>> Dev mailing list >>> [email protected] >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> *Thanks & Regards, >> >> Nuwan Bandara >> Associate Technical Lead & Member, MC, Development Technologies >> WSO2 Inc. - lean . enterprise . middleware | http://wso2.com >> blog : http://nuwanbando.com; email: [email protected]; phone: +94 11 763 >> 9629 >> * >> <http://www.nuwanbando.com/> >> > >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
