The Docbroker Projection Target

Share This Post

The server.ini file contains configuration information for the Documentum server. Among other
things,service.ini file contains the Docbroker Projection Target variable.
Defining a Docbroker Projection Target in a docbase’s server.ini allows you to
have that docbase seen by the docbroker specified in Docbroker Projection Target

host = docserver_host

where xmlns:xsi=””>host is the name or IP address of the
machine where your docbroker is running.
xmlns:xsi=””>[DOCBROKER_PROJECTION_TARGET] defines the primary DocBroker to which
the server will send its connection information. If a user defines their dmcl.ini with xmlns:xsi=””>host = docserver_host, that user will see all docbases
that have defined [DOCBROKER_PROJECTION_TARGET] with xmlns:xsi=””>host =
. There are some additional features of
DOCBROKER_PROJECTION_TARGET that you may not know about. If you are working in
an environment where you are running docbrokers and docbases on multiple
machines, you may want your users to be able to see these docbases. To achieve
this you can make additions to the docbases’s server.ini file for each docbroker
you want the docbase to project to. Add the following to the

host = docserver_host_1
proximity = 3

For example if I had docbase “documents_alpha” and docbroker running on a machine called “goofy”.
Additionally, I had docbrokers running on “mickey” and “donald”. I wanted users
with a dmcl.ini that pointed to be able to “mickey” or “goofy” to be able to
access “documents_alpha”. I would modify my server.ini file to the

host = goofy
host = mickey
proximity = 5
host = donald
proximity = 100

In order for the changes to the server.ini to be recognized, we need
to stop and restart the associated docbase. In Documentum 4I, we can modify the
docbroker projection target attributes dynamically. That will be discussed later
on. For now, lets explain what our additions to server.ini do and mean.

Each DOCBROKER_PROJECTION_TARGET we had should have a unique name containing
DOCBROKER_PROJECTION_TARGET_n, where n is a unique value between 0 and 49. You
may define up to 50 DOCBROKER_PROJECTION_TARGET’s. As mentioned earlier the
host value points to the machine hosting the docbroker we want to project this
docbase to. The last value is proximity. Notice, DOCBROKER_PROJECTION_TARGET has
no proximity value. Because DOCBROKER_PROJECTION_TARGET implies that the host
defined in DOCBROKER_PROJECTION_TARGET is the primary host to project to,
proximity is left undefined. If proximity is undefined, it defaults to a value
of 1.

The proximity value is used to represent the server.s physical
proximity to the DocBroker. From our example, goofy might be the machine the
server is running on, mickey might be on the same internal network and mickey
might be an machine on an external network. When clients (workspace, IAPI, etc)
receive server information from a DocBroker, by default they choose to connect
to the server with the smallest proximity value (representing the closest
available server). Taking the example DOCBROKER_PROJECTION_TARGET’s we defined,
if the docbroker on goofy was not running for whatever reason, we would still be
able to access “documents_alpha” docbase, but via either the docbroker on mickey
or the docbroker on donald. Because mickey has a proximity lower than donald, we
would first try to connect to mickey. There are some rules for defining
proximity rules. Use values between 1 and 999 unless are setting up distributed
content server configuration. A proximity value of 9000 to 9999 is considered
a content server and typically will only be used to handle content

If you specify a value between 1001 and 8999, the fourth digit (counting from the right) is ignored and only the first three digits are used. For example, if you define a proximity value of 8245, clients ignore the 8
and only consider 245 the proximity value. Proximity values of 10,000 and over are considered to represent servers in another domain.


New with Documentum Server 3.1.7 is the ability to dynamically modify the hosts a server projects
itself to. This is done by adding to the server_config repeating

projection_targets CHAR(80)
projection_ports INTEGER
projection_proxval INTEGER
projection_notes CHAR(80)
projection_enable BOOLEAN

Using Documentum Administrator, you can dynamically add a DOCBROKER_PROJECTION_TARGET using DQL or IAPI.

Using DQL, you would

  1. Select * from dm_server_config
  2. Bring up the attributes page for the Server Config Object
  3. Click the Hosts button and add the host of the docbroker to project to
  4. Click the Proximities Button and fill in the port, proximity and notes
    files. Check the Enabled checkbox.
  5. On the main attributes page, check the Reinit checkbox
  6. Check in the Server Config Object. Your docbase should now be seen by
    anyone using the docbroker you just projected this docbase to.

Using IAPI, you would execute the following IAPI methods

  • xmlns:xsi=””>fetch,c,serverconfig
  • xmlns:xsi=””>set,c,l,projection_targetshost name running docbroker (i.e.
  • xmlns:xsi=””>set,c,l,projection_proxval>

    client proximity value (i.e. 10

  • xmlns:xsi=””>set,c,l,projection_port

    docbroker port (i.e. 1489)

  • xmlns:xsi=””>set,c,l,projection_notes

    comment (i.e. Dynamically Set)

  • xmlns:xsi=””>set,c,l,projection_enable


  • xmlns:xsi=””>save,c,l
  • xmlns:xsi=””>reinit,c

More To Explore