JNDI provides your application with the capability to connect and use several object catalogs that exist in the enterprise in a standard uniform way. WebLogic Server provides an implementation of the JNDI SPI to which clients can connect seamlessly. The same clients can also connect to other naming services such as LDAP, DNS, and so on using JNDI APIs. WebLogic Server utilizes the JNDI tree extensively for its normal functioning. If your application uses an EJB, that EJB is published on the JNDI tree. Similarly, other resources such as DataSource objects, transaction objects, and so on are all published on the JNDI tree. The WebLogic JNDI tree is mainly useful for performing lookups of such resources within and outside of the server context. However, it isn't meant to be used for storing application data. Also keep in mind that while using JNDI from remote clients, you're essentially sending requests over the wire. Therefore, optimizing your code to improve the overall performance of your system is a must.