Hi, Once the server is started (ConfigurationContextService is active) you should be able to get the datasources as below. All the jndi configs should be bound to context by then.
Context ctx = new InitialContext(); dataSource = (DataSource) ctx.lookup(dataSourceName); Thanks! Rajith On Wed, Nov 30, 2016 at 7:22 AM, wenxing zheng <wenxing.zh...@gmail.com> wrote: > Dear all, > > I met with an issue in getting the JNDI datasource with the callstack > below. Appreciated for any hint on this problem: > > AS: 5.3.0 > javax.naming.NameNotFoundException: Name [jdbc/WSO2CarbonDB] is not bound > in this Context. Unable to find [jdbc]. > at org.apache.naming.NamingContext.lookup(NamingContext.java:819) > at org.apache.naming.NamingContext.lookup(NamingContext.java:167) > at org.wso2.carbon.tomcat.jndi.CarbonSelectorContext.lookup( > CarbonSelectorContext.java:67) > at org.wso2.carbon.context.internal.CarbonContextDataHolder$ > CarbonInitialJNDIContext.lookup(CarbonContextDataHolder.java:705) > at javax.naming.InitialContext.lookup(InitialContext.java:411) > at test.das.server.dao.common.MasterDataSource.createDataSource( > MasterDataSource.java:20) > at test.das.server.dao.common.MasterDataSource.getDataSource( > MasterDataSource.java:30) > at test.das.server.dao.common.CommonDao.getDBConnection( > CommonDao.java:21) > at test.das.server.dao.users.GroupDao.getGroupsByUserID( > GroupDao.java:224) > at test.das.server.usermgt.users.utility.TestGroupMgt. > populateUserGroup(TestGroupMgt.java:53) > at test.das.server.usermgt.users.utility.TestUserMgt. > populateUserDetails(TestUserMgt.java:222) > at test.das.server.usermgt.users.services.UserServiceImpl. > updateUser(UserServiceImpl.java:107) > 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:188) > at org.apache.cxf.service.invoker.AbstractInvoker. > invoke(AbstractInvoker.java:104) > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:204) > at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:101) > at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1. > run(ServiceInvokerInterceptor.java:58) > at org.apache.cxf.interceptor.ServiceInvokerInterceptor. > handleMessage(ServiceInvokerInterceptor.java:94) > at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept( > PhaseInterceptorChain.java:272) > at org.apache.cxf.transport.ChainInitiationObserver.onMessage( > ChainInitiationObserver.java:121) > at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke( > AbstractHTTPDestination.java:249) > at org.apache.cxf.transport.servlet.ServletController. > invokeDestination(ServletController.java:248) > at org.apache.cxf.transport.servlet.ServletController. > invoke(ServletController.java:222) > at org.apache.cxf.transport.servlet.ServletController. > invoke(ServletController.java:153) > at org.apache.cxf.transport.servlet.CXFNonSpringServlet. > invoke(CXFNonSpringServlet.java:171) > at org.apache.cxf.transport.servlet.AbstractHTTPServlet. > handleRequest(AbstractHTTPServlet.java:289) > at org.apache.cxf.transport.servlet.AbstractHTTPServlet. > doPut(AbstractHTTPServlet.java:226) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:649) > at org.apache.cxf.transport.servlet.AbstractHTTPServlet. > service(AbstractHTTPServlet.java:265) > 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 test.das.server.olap.SaikuFilter.doFilter(SaikuFilter.java:24) > at org.apache.catalina.core.ApplicationFilterChain. > internalDoFilter(ApplicationFilterChain.java:241) > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:208) > at org.apache.catalina.filters.CorsFilter.handleSimpleCORS( > CorsFilter.java:302) > at org.apache.catalina.filters.CorsFilter.doFilter( > CorsFilter.java:170) > 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(CarbonStuckThreadDetectionValv > e.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) > > Thanks, Wenxing > > > _______________________________________________ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Rajith Roshan Software Engineer, WSO2 Inc. Mobile: +94-72-642-8350 <%2B94-71-554-8430>
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev