|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /proc/self/root/usr/share/doc/ldapjdk-4.17/ |
Upload File : |
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="GENERATOR" content="Mozilla/4.72 [en] (WinNT; I) [Netscape]"> <meta name="Author" content="Jacob Rosenschein"> <meta name="Description" content="Release Notes for version 4.1 of the Directory SDK for Java"> <meta name="KeyWords" content="Java SDK, Directory SDK, LDAP SDK, SDK, LDAP, Directory, Netscape Directory, Netscape SDK, Java LDAP SDK"> <title>Directory SDK 4.1 for Java Source Code Release Notes</title> </head> <body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000"> <center> <h2> <font face="Arial,Helvetica">Directory SDK 4.1 for Java Source Code Release Notes</font></h2></center> <center>Last Updated May 06, 2000</center> <p>These release notes contain information about: <ul> <li> <a href="#new41">What's New in Version 4.1</a></li> <li> <a href="#fixed40">Bugs Fixed Since Version 4.0</a></li> <li> <a href="#new">What's New in Version 4.0</a></li> <li> <a href="#fixed305">Bugs Fixed Since Version 3.05</a></li> <li> <a href="#install">Downloading and Building the Source</a></li> <li> <a href="#update">Updating Java Classes in Netscape Communicator</a></li> <li> <a href="#report">Reporting Problems</a></li> <li> <a href="#newsgroup">Accessing the Directory Developers Newsgroup</a></li> </ul> For the latest documentation, see the <i><a href="http://developer.iplanet.com/docs/manuals/dirsdk/jsdk40/contents.htm" TARGET="_top">Netscape Directory SDK 4.0 for Java Programmer's Guide</a></i>, which is available on the iPlanet Developer Documentation site. <p>Reference materials for the Directory SDK 4.x for Java are produced using the Javadoc utility. They are available in the <tt>/dist/doc/</tt> directory where you installed the SDK or online at: <br><tt><a href="http://developer.iplanet.com/docs/manuals/dirsdk/jsdk40/Reference/index.html">http://developer.iplanet.com/docs/manuals/dirsdk/jsdk40/Reference/index.html</a>.</tt> <p>If you only want the Directory SDK 4.x for Java (not the source code), you can download it from the <a href="http://www.iplanet.com/downloads/developer/index.html">iPlanet Developer Downloads</a> site. <p> <hr SIZE=1 NOSHADE WIDTH="100%"> <br><a NAME="new41"></a><b><font face="Arial,Helvetica"><font size=+1>What's New in Version 4.1</font></font></b> <p>The Directory SDK 4.1 for Java is a bug fix relase. Please check the list of <a href="#fixed40">Bugs Fixed Since Version 4.0</a>. The following new features have been added in this release: <ul> <li> A new class, <tt>netscape.ldap.factory.JSSESocketFactory</tt>. It implements the <tt>LDAPSocketFactory</tt> interface using the Java Secure Socket Extension (JSSE) intefaces as the SSL provider. A JSSE implementation is not packaged with the Directory SDK classes; you will need to have one in your CLASSPATH to be able to use <tt>JSSESocketFactory</tt>. A reference implementation of JSSE interfaces is available at <a href="http://java.sun.com/products/jsse/">http://java.sun.com/products/jsse/</a>.</li> <li> A new interface, <tt>netscape.ldap.LDAPTraceWriter,</tt> enables logging of LDAP trace messages in environments where an <tt>OutputStream</tt> cannot be used. The interface is meant primarily for integrating LDAP tracing with the servlet log facility.</li> <li> A new method <tt>setConnectTimeout() </tt>has been added to <tt>LDAPConnection. </tt>This method allows you to limit the amount of time that application code waits for <tt>LDAPConnection.connnect() </tt>to establish a connection. By setting the connect timeout, an application can avoid blocking for a long period of time when a Directory Server host is down or unreachable.</li> <li> All base classes in the <tt>netscape.ldap</tt> and <tt>netscape.ldap.util</tt> package are now serializable.</li> </ul> <hr SIZE=1 NOSHADE WIDTH="100%"> <br><a NAME="fixed40"></a><b><font face="Arial,Helvetica"><font size=+1>Bugs Fixed Since Version 4.0</font></font></b> <p>The following bugs have been fixed since the release of the Directory SDK 4.0 for Java. iPlanet bug numbers are shown in parentheses. <ul> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=28001">28001</a>: Parsing in <tt>LDAPUrl(String url)</tt> ignores attributes if DN is empty.</li> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=28005">28005</a>: Exceptions thrown in <tt>connect()</tt> and <tt>disconnect()</tt>.</li> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=13546">13546</a>: <tt>JDAPFilterOpers</tt> throws StringIndexOutOfBoundsException.</li> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=16514">16514</a>: <tt>LDAPAttributeSet.removeElementAt()</tt> doesn't remove the attribute completely.</li> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=34326">34326:</a><tt> LDAPDN.unEscapeRDN()</tt> removes all /'s - not just the escape characters.</li> <li> Bugzilla <a href="http://bugzilla.mozilla.org/show_bug.cgi?id=29262">29262:</a><tt> LDAPSearch</tt> doesn't apply base64-encoding to to nonprintable DNs.</li> <li> Wrong user DN supplied for referral on bind operation. (364869)</li> <li> 4.0 LDAPMatchingRuleSchema not binary compatible with 3.x. (365423)</li> <li> LDAP JDK does not properly abandon operation. (341439)</li> <li> <tt>RDN.equals()</tt> assumes case-insensitivity, ignores multiple values. (365574)</li> <li> <tt>authenticate()</tt> with bad password does not throw exception. (366578)</li> <li> Should provide DSML option for LDAPSearch. (368416)</li> <li> Incorrect signature for <tt>LDAPResponseListener.merge()</tt>. (364775)</li> <li> MS JVM throws <tt>LDAPSortControl</tt> runtime exception. (365574)</li> <li> Need new method <tt>LDAPDN.equals( String dn1, String dn2)</tt>. (365575)</li> <li> Some 3.x <tt>LDAPSchema</tt> public methods are protected in 4.x. (381574)</li> <li> Server using VLV for non-search operations - 'Critical extension unavailable' error in log. (382605)</li> <li> <tt>LDAPSearchResults.getCount()</tt> returns wrong count. (355336)</li> <li> <tt>LDAPCache.cleanup()</tt> throws NullPointerException. (388736)</li> <li> <tt>LDAPConnection.read()</tt> doesn't return subentries (387722)</li> <li> LDAP SDK 4.0 causes NAS crash. (390128)</li> <li> NullPointerException in <tt>deleteThreadConnEntry()</tt>. (389228)</li> <li> <tt>LDAPSchema.getSyntaxes()</tt> missing (I-D conformance). (388463)</li> <li> SASL bugs found at CMU. (391585)</li> <li> <tt>LDAPCompareAttrNames</tt> not consistently case-sensitive. (390382)</li> <li> <tt>LDAPEntry</tt> throws a null exception when reading non existing attribute (388577)</li> <li> NullPointerException with Malformed Filter. (390249)</li> <li> LDAP objects not really serializable. (356821)</li> <li> <tt>LDAPSearch -l</tt> option does not work correctly (393676)</li> <li> NullPointerException in <tt>LDAPSearch</tt> (387453)</li> <li> <tt>java-object-schema.conf</tt> is not packaged with SDK. (390154)</li> <li> JNDI SP: <tt>LdapContextImpl.reconnect(null)</tt> throw null pointer exceptions (383788)</li> </ul> <hr SIZE=1 NOSHADE WIDTH="100%"> <p><a NAME="new"></a><b><font face="Arial,Helvetica"><font size=+1>What's New in Version 4.0</font></font></b> <p>The Directory SDK 4.0 for Java provides programmers with the tools to develop directory-enabled software. This release includes: <ul> <li> Application Program Interface (API) updates to match the newest LDAP (Lightweight Directory Access Protocol) internet drafts</li> <li> an asynchronous interface to LDAP</li> <li> a new SASL (Simple Authentication and Security Layer) API</li> <li> the Netscape LDAP Service Provider for LDAP.</li> </ul> Additional improvements and changes to the Directory SDK are listed under <a href="#fixed305">Bugs Fixed Since Version 3.05</a>. <p><b><font face="Arial,Helvetica">API updates</font></b> <p>The Directory SDK 4.0 for Java supports these changes to the LDAP API: <ul> <li> Sophisticated client-side management of referral authentication using the <tt>LDAPBind</tt> interface.</li> <li> Dynamic registration and instantiation of server response controls using the <tt>register</tt> and <tt>newInstance</tt> methods of <tt>LDAPControl</tt>.</li> <li> The separation of the constraint class into <tt>LDAPConstraints</tt> and its subclass <tt>LDAPSearchConstraints</tt>. <tt>LDAPConstraints</tt> contains only those methods implemented in the interface that apply to <i>all </i>operations. <tt>LDAPSearchConstraints</tt> is unchanged. All <tt>LDAPConnection</tt> methods that used to take <tt>LDAPSearchConstraints</tt> as an argument (except for read and search methods) now pass <tt>LDAPConstraints</tt> instead.</li> <li> When using <tt>LDAPConnection</tt> for searching, retrieval of server response controls is now handled by <tt>LDAPSearchResults</tt>. Although the SDK is backward compatible, you should call <tt>LDAPSearchResults.getResponseControls()</tt> instead of <tt>LDAPConnection.getResponseControls()</tt>when writing new code.</li> <li> <tt>LDAPConnection.getServerControls()</tt> now automatically parses controls. As a result, calling <tt>parseResponse()</tt> is no longer necessary.</li> <li> Support for transparent failover connection policies. The available policies are: (1) serial, (2) parallel with no delay, and (3) parallel with delay. For more information, see <tt>LDAPConnection.setConnSetupDelay()</tt> in the javadocs.</li> <li> <tt>LDAPConnection</tt> has a new method called <tt>reconnect()</tt>. This method first disconnects and then connects and binds again using the same parameters and mechanisms as the original connection..</li> <li> Support for connection pools. For more information see <tt>netscape.ldap.util.ConnectionPool</tt> in the javadocs.</li> <li> The addition of <tt>LDAPInterruptedException</tt>, which is thrown if an LDAP operation is interrupted.</li> <li> The addition of <tt>LDAPProxiedAuthControl</tt>, which can execute operations, using different credentials, without rebinding.</li> <li> <tt>LDAPConnection</tt> now runs as a daemon thread. You no longer need to call <tt>System.exit</tt> when terminating your program.</li> </ul> <b><font face="Arial,Helvetica">Asynchronous API</font></b> <p>The Directory SDK 4.0 for Java provides an interface called <tt>LDAPAsynchronousConnection</tt>. This interface contains methods for performing LDAP operations asynchronously. Instead of blocking while waiting for a response, methods in <tt>LDAPAsynchronousConnection</tt> return control to an application before they complete. For more information on the asynchronous interface, see "<a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/asynch.htm">Using the Asynchronous Interface</a>" in the <i><a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/contents.htm">Netscape Directory SDK 4.0 for Java Programmer's Guide</a></i>. <p><b><font face="Arial,Helvetica">SASL API</font></b> <p>SASL allows clients and servers to communicate securely. The API accomplishes this by finding a common authentication scheme and facilitating a series of challenge and response interchanges between the client and server. If these interchanges complete successfully, the client is authenticated. For more information on SASL see "<a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/sasl.htm">Using SASL Authentication</a>" in the <i><a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/contents.htm">Netscape Directory SDK 4.0 for Java Programmer's Guide</a></i>. <p><b><font face="Arial,Helvetica">JNDI Service Provider for LDAP</font></b> <p>JNDI is a Java API that provides a common way for programmers to access a variety of naming and directory services. This is accomplished via a layer of software called a Service Provider. The Directory SDK includes a Service Provider for LDAP. <p>The following JNDI features are not implemented in this release of the Netscape LDAP Service Provider: <ul> <li> Support for federated names</li> <li> Support for the "code base" attribute for objects stored in an LDAP directory. The class name specified by the <tt>javaClassName</tt> attribute must exist in the local <tt>CLASSPATH</tt></li> <li> The <tt>search()</tt> method for schema directory contexts. To perform searches in a schema directory context use a <tt>Context.lookup()</tt> request instead of <tt>DirContext.search()</tt>.</li> </ul> For more information see "<a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/JNDIchap.htm">Using the JNDI Service Provider</a>" in the <i><a href="http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/contents.htm">Netscape Directory SDK 4.0 for Java Programmer's Guide</a></i>. <p> <hr SIZE=1 NOSHADE WIDTH="100%"> <p><a NAME="fixed305"></a><b><font face="Arial,Helvetica"><font size=+1>Bugs Fixed Since Version 3.05</font></font></b> <p>The following bugs have been fixed since the release of the Directory SDK 3.05 for Java. Bug numbers are shown in parentheses. <ul> <li> <tt>LDAPSearchResults.getCount()</tt> returns 0 for synchronous searches. (355365)</li> <li> Applets in Communicator can't fetch an error string. (351004)</li> <li> <tt>DN.contains()</tt> is implemented and documented incorrectly. (354615)</li> <li> Search timeout is not handled correctly. (350998)</li> <li> <tt>LDAPSchemaElement</tt> needs a <tt>modify()</tt> method. (350997)</li> <li> <tt>LDAPBasePropertySupport</tt> should enable referrals. (350996, 350995)</li> <li> Cannot set the cache once <tt>LDAPConnection</tt> has connected. (355904)</li> <li> <tt>LDAPCache</tt> changes the contents of returned attributes. (355942)</li> <li> The SDK calls <tt>Thread.stop()</tt>, <tt>suspend()</tt>, and <tt>resume()</tt>. (354503)</li> <li> VLV controls don't support the optional context field. (355215)</li> <li> The SDK doesn't support all the schema options described in RFC 2252. (354347)</li> <li> LDAP Beans don't handle referrals. (353306)</li> <li> <tt>LDAPIsMember</tt> doesn't handle dynamic groups. (353305)</li> <li> The <tt>netscape.ldap.util.DN</tt> class does not consider <tt>""</tt> to be a valid DN. (352804)</li> <li> <tt>LDAPCompareAttrNames</tt> should allow for the specification of a locale. (351022)</li> <li> <tt>LDAPSearch</tt> aborts on a size limit exception. (350624)</li> <li> <tt>LDAPModificationSet</tt> is missing a <tt>toString</tt> method. (353308, 351719)</li> <li> <tt>LDAPGetEntries</tt> should allow a choice of which attributes to return. (353307)</li> <li> The SDK should support the latest LDIF specification. (356470, 352056)</li> <li> The SDK should treat a <tt>"null"</tt> filter as meaning <tt>"objectclass=*"</tt>. (354682)</li> <li> <tt>LDAPSchema</tt> contains unnecessary public <tt>"add"</tt> methods. (354997)</li> </ul> <hr SIZE=1 NOSHADE WIDTH="100%"> <br><a NAME="install"></a><b><font face="Arial,Helvetica"><font size=+1>Downloading and Building the Source</font></font></b> <p>The Directory SDK source code is available on the Mozilla website. You can download it at <a href="http://www.mozilla.org/directory/javasdk.html">http://www.mozilla.org/directory/javasdk.html</a>. <p>Follow the instructions at <a href="http://www.mozilla.org/directory/buildjsdk-4.0.txt">http://www.mozilla.org/directory/buildjsdk-4.0.txt</a> to build the Netscape Directory SDK. <p> <hr SIZE=1 NOSHADE WIDTH="100%"><a NAME="update"></a><b><font face="Arial,Helvetica"><font size=+1>Updating Java Classes in Netscape Communicator</font></font></b> <p>The LDAP Java classes contained in Netscape Communicator 4.7 and earlier are outdated. You can upgrade these class files to the latest versions using Communicator's SmartUpdate feature. <p>The SmartUpdate page for the LDAP Java classes is at: <a href="http://developer.netscape.com/software/ldap/ldap.html">http://developer.netscape.com/software/ldap/ldap.html</a> <p><b>Note: </b>This page uses Communicator's SmartUpdate feature to update the classes. Before visiting this page, you must enable SmartUpdate, Java, JavaScript, and cookies in Communicator. <p><b><font face="Arial,Helvetica">To enable SmartUpdate, Java, JavaScript, and cookies:</font></b> <ul> <li> Go to the Edit menu and choose Preferences.</li> <li> Select Advanced and make sure that Accept all cookies is active (it's radio button is filled).</li> <li> Make sure that Enable Java and Enable JavaScript are checked.</li> <li> Choose Advanced | SmartUpdate from the left-hand panel.</li> <li> Make sure that Enable SmartUpdate is checked.</li> <li> Click OK.</li> </ul> <hr SIZE=1 NOSHADE WIDTH="100%"><a NAME="report"></a><b><font face="Arial,Helvetica"><font size=+1>Reporting Problems</font></font></b> <p>Please submit your problem via the the <a href="http://bugzilla.mozilla.org">Bugzilla</a> bugsystem . Use the "LDAP Java SDK" component. <p> <hr SIZE=1 NOSHADE WIDTH="100%"><a NAME="newsgroup"></a><b><font face="Arial,Helvetica"><font size=+1>Accessing the Directory Developers Newsgroup</font></font></b> <p>If you have additional questions or need more information about the Netscape Directory SDK 4.x for Java, please visit the Mozilla <a href="news://news.mozilla.org/netscape.public.mozilla.directory">Directory newsgroup</a> and the DevEdge <a href="http://developer.netscape.com/support/newsgroups/" TARGET="_top">Directory Server newsgroups</a>. <center> <p> <hr SIZE=1 NOSHADE WIDTH="100%"><font size=-1>Contains OROMatcher® regular expression software from ORO Java Software. <nobr>© </nobr>Copyright 1997 by ORO Java Software.</font> <br><font size=-1>Redistribution separate from Netscape Directory SDK for Java or direct use of OROMatcher interfaces</font> <br><font size=-1>requires a license from ORO Java Software. <a href="http://www.oroinc.com/" TARGET="_top">http://www.oroinc.com</a>. OROMatcher® is a trademark of Original Reusable Objects, Inc.</font> <p><font size=-1>For more Internet development resources, try <a href="http://home.netscape.com/computing/techsearch/index.html?cp=dev01bnts" TARGET="_top">Netscape TechSearch</a>.</font></center> <hr SIZE=0 WIDTH="100%"> </body> </html>