please base with my English, i am using spring boot 2 and registering 3 jndi connection with the tomcat like below:
@Bean
public TomcatServletWebServerFactory  tomcatFactory() {
    return new TomcatServletWebServerFactory() {
        @Override
        protected TomcatWebServer getTomcatWebServer(org.apache.catalina.startup.Tomcat tomcat) {
            tomcat.enableNaming(); 
            return super.getTomcatWebServer(tomcat);
        }
        @Override
        protected void postProcessContext(Context context) {
             //Jndi connection 1
            ContextResource resource = new ContextResource();
            resource.setName("jdbc/masterTable");
            resource.setType(DataSource.class.getName());
            resource.setProperty("driverClassName", "oracle.jdbc.driver.OracleDriver");
            resource.setProperty("url", "jdbc:oracle:thin:@localhost:1521/xe");
            resource.setProperty("username", "root");
            resource.setProperty("password", "root");
             //Jndi connection 2
            context.getNamingResources().addResource(resource);
             resource = new ContextResource();
                resource.setName("jdbc/SampleData");
                resource.setType(DataSource.class.getName());
                resource.setProperty("driverClassName", "org.hsqldb.jdbcDriver");
                resource.setProperty("url", "jdbc:hsqldb:hsql://localhost:9001/sampledata");
                resource.setProperty("username", "pentaho_user");
                resource.setProperty("password", "password");
            context.getNamingResources().addResource(resource);
        }
    };
Now while using it shows error : javax.naming.NameNotFoundException: Name [java:comp/env/jdbc/SampleData] is not bound in this Context. Unable to find [jdbc].
Why is this happening?