Represents a logical entity for managing a group of server instances. Multiple server instances can run simultaneously on a single physical machine, or can be deployed on separate machines. A virtual server is composed of multiple server instances logically operating together to provide a service or services. Clients of the Content Engine interact with a VirtualServer, rather than interacting with a specific ServerInstance. If a VirtualServer consists of a single ServerInstance, then the two are functionally equivalent. If a VirtualServer consists of multiple server instances, then client requests are distributed between each individual ServerInstance, providing scalability and high availability. Clients are not aware of which ServerInstance actually fulfilled their request.

When multiple server instances are configured to run as a VirtualServer, a third-party (non-FileNet) load balancing mechanism must exist to distribute incoming requests to the server instances. This may be a Java 2 Platform Enterprise Edition (J2EE) application server's clustering implementation, or it could be an external hardware or software load balancing product. In either case, an administrator, using the third-party's load balancing configuration tools, is responsible for configuring the load balancing for a VirtualServer.

VirtualServer objects are created dynamically during system initialization and startup based on the configured topology of the application server or via specific system properties. They cannot be created via the API. You can retrieve a persisted VirtualServer object by calling GetInstance or FetchInstance on the Factory.VirtualServer class.


The following tables list the members exposed by IVirtualServer.

Public Properties

 NameDescription
Public propertyCreatorIndicates the name of the user assigned as the creator of the object.

Settability of this property is read-only for most users. For users who have been granted privileged write access (AccessRight.PRIVILEGED_WRITE), this property is settable only on create. After initial object creation, this property is read-only for all users.

Public propertyDateCreatedIndicates the date and time the object was created. The Content Engine stores dates and times using Coordinated Universal Time (UTC).

Settability of this property is read-only for most users. For users who have been granted privileged write access (AccessRight.PRIVILEGED_WRITE), this property is settable only on create. After initial object creation, this property is read-only for all users.

Public propertyDateLastModifiedIndicates the date and time the object was last modified. The Content Engine stores dates and times using Coordinated Universal Time (UTC).

Settability of this property is read-only for most users. For users who have been granted privileged write access (AccessRight.PRIVILEGED_WRITE), this property is read/write. (The read/write access for those users can only change if a change is made to the ACL on the object store that controls who has privileged write access to objects in that object store).

Public propertyEJBForwardingEndpointHolds the EJB forwarding URI endpoint for a VirtualServer. This property must specify a valid URI in order for the virtual servers within a site to receive forwarded requests.

A VirtualServer is the only addressable unit for forwarded requests. A VirtualServer must provide connection strings so that a remote server can connect to it. You supply this connection information in the EJBForwardingEndpoint property. If this property is empty, it is assumed that the administrator does not want the VirtualServer to accept forwarded requests. Request forwarding will not occur even if the Site is configured to accept forwarded requests via its CanAcceptForwardedRequests property.

The following are URI examples for the specified application server environments (host name can be specified as the name or IP address):

  • WebLogic - "t3://10.15.14.28:7001/FileNet/Engine"
  • Websphere - "iiop://localhost:2809/FileNet/Engine"
  • JBoss - "Jnp://localhost:1099/FileNet/Engine"

The maximum length of the URI string is 2083 characters.

Public propertyIdA representation of the Globally Unique Identifier (GUID), a unique 128-bit number, that is assigned to this Content Engine object when the object is created. When converted to a string, the Id property is typically depicted as 32 hexadecimal characters enclosed by brackets in the following format: {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}. For example, {3F2504E0-4F89-11D3-9A0C-0305E82C3301}.

For IUser and IGroup classes, the Id property takes the value of the Security Identifier (SID) rather than the 128-bit GUID. The string representation of the SID is in this example format: S-1-5-21-1559522492-2815155736-3711640725-55269. When Active Directory is used as the directory service for IBM FileNet P8, IUser.Id and IGroup.Id always return the current SID for the principal, even if this user or group has only historical SIDs populating the Active Directory server.

For a given property representation, the Id property has the following characteristics:

  • PropertyDescription.Id is equal to PropertyTemplate.Id, which is equal to PropertyDefinition.PrimaryId.
  • PropertyDefinition.Id is not equal to PropertyDefinition.PrimaryId.
  • PropertyDefinition.Id is not equal to PropertyDescription.Id.

For a newly created document object, you can override the Id property of its associated VersionSeries object before you save or check in the document for the first time.

Public propertyLastModifierIndicates the name of the user who last modified the object.

Settability of this property is read-only for most users. For users who have been granted privileged write access (AccessRight.PRIVILEGED_WRITE), this property is read/write. (The read/write access for those users could only change if a change is made to the ACL on the object store that controls who has privileged write access to objects in that object store).

Public propertyNameThe name for this object.

For most classes, this property is read-only and returns the value of the designated name property for the object, or its ID if there is no name property. If ClassDescription.NamePropertyIndex has a value, this property contains the value of the designated name property. If there is no designated name property value, and the object has an Id property, this property contains the string value of the Id property. If neither of these conditions is satisfied, this property contains an empty string.

For a ComponentRelationship object, this property is read/write and specifies the name of the object.

Public propertyServerInstancesRepresents a collection of ServerInstance objects for a given virtual server.
Public propertySiteIdentifies the site associated with a given object. A site represents a geographical area in the FileNet P8 domain. If you do not specify a site when creating the associated object, the value of that object's Site property defaults to the value of Domain.DefaultSite.
Public propertySubsystemConfigurationsA list of subsystem configuration objects that reflect parameters of the configured subsystems.
Top

See Also