Previous Topic: Sample DSML Server

Next Topic: Connect to the DSML Server

How the DSML Server Works

The following happens when a DSML client uses DSML to communicate with a DSA through the DSML Server:

  1. The DSML client sends a DSML request to the DSML Server.
  2. The DSML Server translates the DSML request into LDAP and passes it on to the DSA.
  3. The DSA responds using LDAP.
  4. The DSML Server translates the DSA response from LDAP to DSML and sends it back to the DSML client, as shown in the following diagram:

    DSML Server translating between a DSML client and an LDAP directory

Server DN and Base DN in the DSML Server

When you connect to the DSML Server, you can specify the server DN. This is the root DN to which you are connected.

For example, if you connect to the Democorp DSA using DSML and you set the server DN to c=AU, c=AU is not displayed in the tree, and the top node is o=DEMOCORP.

If you use JXweb to connect to the DSML Server, you can also specify the base DN. This is the DN of the entry in the tree that you want displayed. The base DN is relative to the server DN. The base DN is not set by the DSML Server: instead, it is set by the client that connects to the server.

For example, if you connect to the Democorp DSA using DSML and you set the server DN to c=AU, you could then also set the base DN to ou=National,ou=Customer,o=DEMOCORP. Because the base DN is relative to the server DN, you could not set the base DN to ou=National,ou=Customer,o=DEMOCORP,c=AU.

How the DSML Server Determines the LDAP URL

To connect to an LDAP server, the DSML Server has to work out the LDAP URL of the DSA.

The DSML Server does this in the following way:

  1. The DSML Server checks the POST parameters of the HTTP request: ldapHost and ldapPort.
  2. If these parameters are not supplied, the DSML Server checks the configuration file dsml.properties for a server URL.

    For example, the server URL could look like this:

    ldap://computer27:19289
    
  3. If the configuration file is not available, the DSML Server uses the default URL.