The following Java code example creates a Progress DataDirect DataSource object and registers it with a JNDI naming service.
Note: The DataSource class implements the ConnectionPoolDataSource interface for pooling in addition to the DataSource interface for non-pooling.
//************************************************************************
// This code creates a Progress DataDirect for JDBC data source and
// registers it to a JNDI naming service. This JDBC data source uses the
// DataSource implementation provided by DataDirect Connect
// for JDBC Drivers.
//
// This data source registers its name as <jdbc/ConnectAutoREST>.
//// NOTE: To connect using a data source, the driver needs to access a JNDI data
// store to persist the data source information. To download the JNDI File
// System Service Provider, go to:
//
// http://www.oracle.com/technetwork/java/javasebusiness/downloads/
// java-archive-downloads-java-plat-419418.html#7110-jndi-1.2.1-oth-JPR
////
// Make sure that the fscontext.jar and providerutil.jar files from the
// download are on your classpath.
//************************************************************************
// From DataDirect for JDBC:
import java.util.Hashtable;
import com.ddtek.jdbcx.autorest.AutoRESTDataSource;
public class AutoRESTDataSourceRegisterJNDI {
public static void main(String argv[]) {
try {
// Set up data source reference data for naming context:
// ----------------------------------------------------
// Create a class instance that implements the interface
// ConnectionPoolDataSource
AutoRESTDataSource ds = new AutoRESTDataSource();
ds.setDescription("Autonomous REST Connector");
ds.setConfig("C:\path\to\myrest.rest");
// Set up environment for creating initial context
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");
env.put(Context.PROVIDER_URL, "file:C:\\JNDI_Test_Dir");
Context ctx = new InitialContext(env);
// Register the data source to JNDI naming service
ctx.bind("jdbc/ConnectAutoREST", ds);
} catch (Exception e) {
System.out.println(e.getStackTrace());
e.printStackTrace();
return;
}
}// Main
}
// class AutoRESTDataSourceRegisterJNDI