+

Search Tips   |   Advanced Search

The benefits of using resource references


WAS requires the code to reference appserver resources (such as data sources or J2C connection factories) through logical names, rather than access the resources directly in the JNDI name space. These logical names are called resource references.

Application Server requires use of resource references for the following reasons:

Example of using a resource reference

The following code invokes a data source by creating a place holder for it through the lookup method. Using the logical name jdbc/Section, the code stores the place holder in the JNDI subcontext java:comp/env/; hence jdbc/Section becomes a resource reference. (The subcontext java:comp/env/ is the name space that WAS provides exclusively for object references within application code.)

javax.sql.DataSource specificDataSource  = 
   (javax.sql.DataSource) (new InitialContext()).lookup("java:comp/env/jdbc/Section"); 

//The method InitialContext()).lookup creates the logical name, or resource reference, jdbc/Section. 
Generally, an actual data source is configured later as an admin task.

The logical name jdbc/Section is officially declared as a resource reference in the application deployment descriptor. We can then associate the resource reference with the JNDI name of the actual data source in several ways:

This act of association is called binding the resource reference to the data source.

See the article, Application bindings, for information on all types of required resource bindings.



Subtopics


Requirements for setting isolation level

 

Related concepts


Data sources
Application bindings

 

Related tasks


Accessing data from application clients
Set data access for the Application Client
Set a resource reference
Assembling data access applications
Accessing data using Java EE Connector Architecture connectors
Migrate applications to use data sources of the current Java EE Connector Architecture (JCA)
Set a JDBC provider and data source

 

Related


Lookup names support in deployment descriptors and thin clients