Physically connects and associates an AppServer instance, or logically connects an application service, with the specified server handle. The current application becomes a client application of the connected AppServer.
Return type: LOGICAL
Applies to: Server object handle
All of the parameters for the CONNECT( ) method are optional and have defaults if you do not specify them.
The following table describes the basic connection parameters you must specify to connect to an AppServer instance or application service, regardless of the session model.
Connection parameter1 | Description |
---|---|
-AppService application-service | If you connect through a NameServer, the name of an Application Service supported by the specified NameServer. (Defaults to the default service for the specified Name Server.) If you connect directly to an AppServer, this parameter is ignored. |
-H [ host_name | IP-address ] |
The network address to a NameServer machine or, if you connect directly, to an AppServer machine. You can specify either the TCP/IP host name or the Internet protocol address of the machine. (Defaults to localhost) |
-S [ service-name | port-number ] |
The UDP port number for a NameServer, or, if you connect directly, the TCP/IP port number for an AppServer connection. You can specify either an explicit port number or a service name. If you use a service name, the method uses the port number associated with that name in the TCP/IP services file. (Defaults to 5162) |
-DirectConnect | If specified, the -H and -S parameters are interpreted as the network address and TCP/IP port number of an AppServer connection. Otherwise, the -H and -S parameters are interpreted as the network address and UDP port number of a NameServer. |
-ssl | If specified, the connection is direct to the AppServer using
Secure Sockets Layer (SSL) tunneling. (Used in conjunction with the -AppService, -H, and -S parameters). Note: Be sure you need SSL before using this
option. SSL incurs more or less heavy performance penalties, depending on
resources and load.
|
-nosessionreuse | If specified, the connection does not reuse the SSL session ID when reconnecting to the same SSL-enabled server (either a Web server with HTTPS or an SSL-enabled AppServer). |
-nohostverify | If specified, turns off host verification for an SSL-enabled connection, either using HTTPS with the AIA or using a direct connection to an SSL-enabled AppServer. Without this parameter specified, the client compares the host name specified in the connection with the Common Name specified in the server certificate, and raises an error if they do not match. With this parameter specified, the client never raises the error. For more information, see OpenEdge Getting Started: Core Business Services - Security and Auditing. |
-pf filename | A text file containing any of the other AppServer connection parameters described in this table or Table 2. If this file contains any other OpenEdge startup parameters, the method ignores them. |
-AppServerKeepalive capstr | Indicates that the client would like to employ the AppServer
Keepalive protocol on this connection, if supported and enabled by the
AppServer. To enable the protocol, specify the allowServerASK
value for capstr. To disable the protocol, specify
denyServerASK. The default value is allowServerASK. The absence of this property indicates that the default value for the ServerASK protocol will be used on this connection. |
-URL Web-or-AppServer-path | An HTTP (or HTTPS-based) URL to an AIA (for an
Internet-secure AppServer connection) oran AppServer-based URL (with or
without SSL tunneling for an SSL-enabled AppServer connection). For more
information on connecting to an AppServer using a URL, see OpenEdge
Application Server: Developing AppServer Applications. Note: Be sure you need SSL (either, and especially both, an HTTPS or
SSL-enabled AppServer) before using this option. SSL at any point in a
networked application incurs more or less heavy performance penalties,
depending on resources and load.
|
The following table describes connection parameters for specifying and managing the session model of the connection.
Connection parameter | Session model/ default | Description |
---|---|---|
-sessionModel sessionModel | Session-managed Session-free |
Session model supported by the AppServer operating mode,
specified by one of the following values:
This value is not case sensitive. This parameter is required for session-free applications and is optional for session-managed applications. This value must match the AppServer operating mode or the CONNECT( ) method fails. The default value is Session-managed. |
-connectionLifetime nSeconds | Session-free | The maximum number of seconds that a given connection can be
used before it is destroyed. Connections whose lifetime exceeds the specified
value are destroyed as they become available. An available connection is one that is not currently reserved to run a request. Bound connections associated with remote persistent procedures are not available for re-use until the persistent procedure is deleted. So, bound connections remain available as long as necessary, even if they exceed the specified value. The default value is 300 seconds. |
-initialConnections nConnections | Session-free | The number of connections established when the CONNECT( )
method executes on a given server handle. The value must be greater than zero.
If the specified number of connections cannot be created, the CONNECT( )
method fails and any successfully-created connections are closed. The default value is 1. |
-maxConnections nConnections | Session-free | The maximum number of connections that can be created for a
given server handle to execute non-persistent external procedures. The value
must be greater than or equal to zero. If this value is zero, there is no
limit to the number of connections that can be created. Note: For
calls to persistent procedures, their internal procedures, and user-defined
functions, the client has no limit on the number of connections that can be
created.
The default value is 0. |
-nsClientMaxPort portNum | Session-managed Session-free |
The maximum value for the UDP port number used by the client
when communicating with the NameServer. If this value is zero, the AVM chooses
the NameServer client port randomly. This value should be greater than or
equal to the value of the -nsClientMinPort parameter. The default value is 0. |
-nsClientMinPort portNum | Session-managed Session-free |
The minimum value for the UDP port number used by the client
when communicating with the NameServer. If this value is zero, the AVM chooses
the NameServer client port randomly. The default value is 0. |
-nsClientPicklistExpiration nSeconds | Session-free | The maximum amount of time, in seconds, that the client
retains an AppServer pick list for an application service. The default value is 300. |
-nsClientPicklistSize nPicks | Session-free | The number of AppServer picks to request from the NameServer
each time it looks up the available AppServer connections for a given
application service name. The default value is 1. |
-nsClientPortRetry nRetries | Session-managed Session-free |
The maximum number of attempts that the client makes to get a
valid local UDP port number when attempting to communicate with the
NameServer. The default value is 0. |
-nsClientDelay nMilliSeconds | Session-managed Session-free |
The interval, in milliseconds, that the client waits between
attempts to get a valid UDP port number when attempting to communicate with
the NameServer. The default value is 0. |
Note that the actual AppServer that the client connects to is controlled by the NameServer based on the application service (-AppService) name specified by the client. The ABL interface in cooperation with the NameServer connect the client application to one of the AppServer instances that supports the specified application service. If you do not specify an application service, the NameServer uses whatever AppServer registers itself as the default service, if any. For more information on load balancing, see the information on NameServers and load balancing in OpenEdge Application Server: Developing AppServer Applications and the AppServer administration chapter in OpenEdge Application Server: Administration.
If the application service is unknown to the NameServer, the client application receives an error. Otherwise, the connection proceeds and any configured Connect procedure executes for the connected AppServer.
For more information on application services and NameServers, see OpenEdge Application Server: Developing AppServer Applications.
If an error occurs while executing the CONNECT( ) method, the method returns FALSE. Otherwise, it returns TRUE. An error can occur if:
If the CONNECT( ) method completes successfully, the CONNECTED( ) method returns TRUE.
The connection lasts until the client application executes the server handle DISCONNECT( ) method or until the AVM detects any failure conditions that automatically terminate the connection.
The -URL connection parameter allows you to connect to an AppServer using the AppServer Internet Adapter (AIA) with the following protocols: HTTP and HTTPS.
For more information on AppServers or the AppServer Internet Adapter (AIA), see OpenEdge Application Server: Developing AppServer Applications.