If you are writing a client for a new AppServer application (application service), the decision of what session model to use most immediately impacts the AppServer and its configuration and programming (see
Programming the AppServer). Once this decision is made for a new application service or if you are writing the client for an existing application service, the session model imposes fundamental limitations on your options for programming the ABL client.
There is a way to pass a client context identifier between sessions. You typically rely completely on the API defined for the application service to manage this context. Progress Software Corporation recommends that you never attempt to run a remote external procedure persistently when writing for a session-free application, and it is likely to be a violation of the conventions defined for the API to do so. For more information on the reasons for this, see
Programming the AppServer.
Session-managed application services provide various means to manage context depending on the AppServer operating mode. Where there are any responsibilities involved for the ABL client, this chapter describes them as appropriate for the AppServer operating mode.
Otherwise, this chapter describes the differences in functionality available explicitly for each operating mode or session model, as appropriate. For more information on the differences between the two application session models, session-free and session-managed, see
AppServerand Client Interaction.