A very simple example of finding the user's DN and attempting to authenticate.

Host:
Port:
Directory base:
User ID:
Password:

The JavaScript code to do this is as follows:

var TOO_MANY_MATCHES = 100;
var CORRECT = "Y";
var INCORRECT = "N";
var userDN = "";

function doLogin() {
    // Create an instance of the LDAPGetEntries Bean
    var getter = new netscape.ldap.beans.LDAPGetEntries();
    getter.setDebug( true );
    // Get parameters from form fields
    getter.setHost( document.input.host.value );
    getter.setPort( parseInt(document.input.port.value) );
    getter.setBase( document.input.base.value );
    getter.setFilter( "uid="+document.input.userid.value );
    // Must request rights to do network connections
    netscape.security.PrivilegeManager.enablePrivilege("UniversalConnect");
    // And for property reads, to get LDAP error strings
    netscape.security.PrivilegeManager.enablePrivilege("UniversalPropertyRead");
    // Do the search
    values = getter.getEntries();
    var result;
    // No matching entries?
    if ( (values == null) || (values.length < 1) ) {
        result = getter.getErrorCode();
        if ( result == 0 ) {
            result = getter.NO_SUCH_OBJECT;
        }
    // Too many matching entries?
    } else if ( values.length > 1 ) {
        result = TOO_MANY_MATCHES;
    // Good - just one match
    } else {
        userDN = values[0];
        auth = new Packages.netscape.ldap.beans.LDAPSimpleAuth();
        auth.setHost( document.input.host.value );
        auth.setPort( parseInt(document.input.port.value) );
        auth.setAuthDN( userDN );
        auth.setAuthPassword( document.input.password.value );
        result = auth.authenticate();
    }
    showResult( result );
}