Introduction to Open Clients
- Last Updated: January 16, 2024
- 2 minute read
- OpenEdge
- Version 12.8
- Documentation
Open Clients are a way for developers to connect .NET or Java client application to ABL business logic. ABL developers can expose their ABL applications through proxy files. These files provide native classes that .NET and Java developers use to interact with ABL applications. Java and .NET developers use their native development tools when building their application based on the proxy files. Alternatively, .NET and Java developers can opt to develop using the OpenAPI instead of generated proxy files..
In this architecture diagram, .NET and Java Open Clients behave like OpenEdge clients connecting to a PAS for OpenEdge instance to access ABL business logic.

Open Clients use HTTP/HTTPS
requests to communicate with the application server. The requests are transformed to ABL
requests with the help of the Open Client
runtime. The Open Client runtime is part of the client installation that
you must supply with your .NET and Java applications. OpenEdge packages and distributes
the Open Client Runtime in several file formats containing different network protocol
support combinations. This distribution method reduces the overhead and complexity for
both you the developer and the Open Client deployer. For .NET and Java applications,
requests are sent using the APSV transport, the same transport used by
ABL clients. In this diagram, Open Clients are treated the same as an OpenEdge client
communicating on the APSV transport accessing r-code on the PROPATH of the application
server.

A key feature of the Open Client runtime is the support for relational data exchange. This feature allows ABL ProDataSets and temp-tables to be passed between the application server and the Open Client applications. By making this seamless for Open Client developers, their applications can access any OpenEdge database or DataServer connected to the application server business logic whether you generate proxies using ProxyGen or develop using the OpenAPI.