oe appserver: developing appserver applications (2-36)
Programming for Open Client applications
In general, programming AppServer procedures for Open Client (Java, .NET, and Web service client) applications is not much different than programming for Progress 4GL clients. However, for each AppServer persistent procedure that you expect to be instantiated as an Open Client object, you must also specify the prototypes defined by all super procedures, including user-defined functions, that your persistent procedure uses. The reason for this is that the Open Client Toolkit, which generates the proxy objects and Web service interface for use by Open Client and Web service applications, analyzes the r-code to help determine class definitions for proxy objects. This r-code analysis includes any super procedure references required to define equivalent method overrides for each class.
You can specify super procedure prototypes in one of two ways, depending on how you write your procedures:
? Using the ProtoGen utility available from the OpenEdge Application Development Environment (ADE).
? Using a text editor or the Progress Procedure Editor.
Caution: Binding a single session-free AppServer agent to a single client, as described in this section, reduces the resources available to handle requests from all clients for the session-free application service. Therefore, be certain that your application requires this type of agent binding before using it for application development.
oe development: open client introduction and programming (4-9)
ProxyGen maps each 4GL non-persistent procedure, internal procedure, and user-defined function that you expose on the AppServer, to a remote 4GL method. When invoked, each remote 4GL method executes the procedure (or user-defined function) on the AppServer, passes any parameter values, and makes any return values available to the Open Client. Note: If the 4GL persistent procedure has a super procedure, the proxy also contains remote 4GL methods for the super procedure, as long as the remote procedure declares the super procedure prototypes. For more information, see the information on programming for Open Client applications in OpenEdge Application Server: Developing AppServer Applications.