OpenROAD Server Interfaces
The OpenROAD Server enables client applications to access business logic written in the OpenROAD 4GL language. The OpenROAD Server is multithreaded and allows concurrent access from a number of client interfaces. These client interfaces include the following:
• OpenROAD clients
• COM clients—VB, C++, ASP
• Java clients—JSP, Java Servlets, Java applications
• .NET clients—VB.NET, C#, ASP.NET
The OpenROAD Server provides access to the Ingres DBMS Server. It also can access the Enterprise Access Server and EDBC servers, both of which provide transparent connection to other databases such as Oracle, Microsoft SQL Server, IBM DB2, IMS, CICS/VSAM, and CA Datacom and IDMS.
Service Call Procedures
The OpenROAD Server presents business logic as one or more OpenROAD 4GL procedures named SCPs. These procedures can be called from local or remote clients using a number of different techniques described in the Server Reference Guide.
SCPs can contain the business logic or be used to access business logic in user class methods. If you use the object-oriented programming techniques in OpenROAD and implement business logic in user classes, OpenROAD can generate SCPs for you automatically using the scpgen flag, available in the MakeImage utility. For more information about scpgen and MakeImage, see the Workbench User Guide.
COM Interface
The OpenROAD Server provides a set of Microsoft’s COM objects that expose a client-callable interface to 4GL SCPs. Using COM objects helps to maximize the number of client environments that can take advantage of the OpenROAD Server facilities, and it leverages the extensive support COM provides for local and remote server activation, marshaling of parameters, and provides configurable security controls.
COM provides a platform-independent, language-neutral interface for the OpenROAD Server. Using COM enables Java, .NET, JSP, ASP.NET and many other environments to access 4GL logic hosted in the OpenROAD Server.
XML Input and Output
XML input/output capability is enabled automatically for all 4GL methods and procedures that are exposed as Generated Service Call Procedures (GSCPs). No special XML programming or conversion is required within your OpenROAD Server application. This powerful capability can be used for simple XML reporting or XML data interchange with external tools or organizations. It can also play a key role in exposing a 4GL application as a web service.
HTTP Transport
COM is useful in intranet environments and permits “inside the firewall” server-side scripting environments to access the OpenROAD Server. However, it is limiting when you are trying to deploy OpenROAD client applications across the Internet since Distributed COM facilities do not run outside of a trusted environment. In addition, the Windows Mobile platform does not provide support for DCOM.
To provide more deployment options, OpenROAD provides a HyperText Transfer Protocol (HTTP) routing option that provides a firewall-friendly alternative to DCOM for communication between an OpenROAD application and the OpenROAD Server. It allows calls to an OpenROAD Server to be serialized and routed over HTTP through a web server, which then deserializes and forwards the call to the OpenROAD Server. It then serializes the result and sends it back in an HTTP response. This process allows client applications to be deployed in an Internet environment using traditional means to secure both the communications (HTTPS) and server-side access.