Java Naming and Directory Interface (JNDI) is basically a functionality in Java for looking up "things", which can be anything you want.
This blog is about how to create a data source for accessing the database and we use the JNDI to create the initial context connection.
There are however many other options with JNDI other than connecting to databases, such as LDAP, DNS, RMI, COBRA etc.
I was receiving a datastore connection error when trying to connect a JNDI call to the Weblogic datastore. I did blog
about this here
a few months ago though I completely forgot about this and tried to find the answer on google.