skip to main content
OpenEdge Development: ADM and SmartObjects
Developing Your Application's Business Logic : Java applications and SmartDataObjects
 
Java applications and SmartDataObjects
A Java application running on a client machine can access a remote SmartDataObject on an AppServer. It does this through a Java AppObject, using an interface based on the Java Database Connectivity (JDBC) 2 ResultSet. The supported interface includes many of the standard ResultSet methods and adds a number of extensions.
Figure 7–2 shows how a Java Open Client accesses a Progress SmartDataObject running on an AppServer.
Figure 7–2: Java open client access to a remote SmartDataObject
To enable a Java client to access a remote Progress SmartDataObject as a JDBC 2 ResultSet, you must:
*Have at least one remote SmartDataObject deployed on the connected AppServer.
*Call the AppObject or SubAppObject class factory method, _createSDOResultSet(), to create an SDOResultSet object that maps to and can access the specified SmartDataObject.
The SDOResultSet object implements the SDOResultSet interface, which is an extended implementation of the JDBC 1 ResultSet interface. Thus, using standard JDBC 2 ResultSet methods on this SDOResultSet object, you can access Progress data provided by the specified SmartDataObject in the same way as a standard JDBC 2 ResultSet. The SDOResultSet interface also provides extensions to JDBC 2 that allow you to access the unique capabilities of SmartDataObjects.
Complete support for access to remote SmartDataObjects includes a small set of classes and interfaces that, together with SDOResultSet, come installed as part of the Open Client Runtime. For reference information on each class and interface, see the Javadoc installed in OpenEdge-Install-Directory\java\doc\*.html. For information on accessing and using this interface, see OpenEdge Development: Java Open Clients.
Note: The SDOResultSet interface allows you to access only the default SmartDataObject API generated by the AppBuilder. If you need to access custom programmer extensions to this API, you must access the SmartDataObject API directly. For more information, see OpenEdge Development: Java Open Clients.