1999-08-04 06:03:56 +04:00
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=iso-8859-1" >
1999-09-15 22:32:21 +04:00
< meta name = "GENERATOR" content = "Mozilla/4.7 [en] (WinNT; I) [Netscape]" >
< meta name = "Author" content = "Jacob Rosenschein" >
< meta name = "Description" content = "Release Notes for version 4.0 of the Netscape Directory SDK 4.0 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.0 for Java Source Code Release Notes< / title >
1999-08-04 06:03:56 +04:00
< / head >
1999-09-15 22:32:21 +04:00
< body text = "#000000" bgcolor = "#FFFFFF" link = "#0000EE" vlink = "#551A8B" alink = "#FF0000" >
1999-08-04 06:03:56 +04:00
< center >
< h2 >
1999-09-15 22:32:21 +04:00
< font face = "Arial,Helvetica" > Netscape Directory SDK 4.0 for Java Source
Code Release Notes< / font > < / h2 > < / center >
< center > Last Updated September 13, 1999< / center >
< p > These release notes contain information about:
1999-08-04 06:03:56 +04:00
< ul >
< li >
1999-09-15 22:32:21 +04:00
< a href = "#new" > What's New in Version 4.0< / 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 = "#fixed" > Bugs Fixed Since Version 3.05< / a > < / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
< a href = "#report" > Reporting Problems< / a > < / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
< a href = "#newsgroup" > Accessing the Directory Developers Newsgroup< / a > < / li >
1999-08-04 06:03:56 +04:00
< / ul >
1999-09-15 22:32:21 +04:00
For the latest documentation, see the < i > < a href = "http://developer.netscape.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 Netscape DevEdge Online.
< p > Reference materials for the Directory SDK 4.0 for Java are produced
using the Javadoc utility. They are available in the < tt > /dist/doc/< / tt >
1999-09-28 23:58:15 +04:00
directory where you installed the SDK or online at: < tt > < a href = "http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/Reference/index.html" > http://developer.netscape.com/docs/manuals/dirsdk/jsdk40/Reference/index.html< / a > < / tt > .
1999-09-15 22:32:21 +04:00
< p > If you only want the Netscape Directory SDK 4.0 for Java (not the source
code), you can dowload it from Netscape < a href = "http://developer.netscape.com/tech/directory/downloads.html" > DevEdge< / a > .
< p >
< hr SIZE = 1 NOSHADE WIDTH = "100%" > < a NAME = "new" > < / a > < b > < font face = "Arial,Helvetica" > < font size = +1 > What's
New in Version 4.0< / font > < / font > < / b >
< p > The Netscape 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 >
1999-08-04 06:03:56 +04:00
1999-09-15 22:32:21 +04:00
< li >
an asynchronous interface to LDAP< / li >
1999-08-04 06:03:56 +04:00
1999-09-15 22:32:21 +04:00
< li >
a new SASL (Simple Authentication and Security Layer) API< / li >
< li >
the Netscape LDAP Service Provider for JNDI (Java Naming and Directory
Interface).< / li >
< / ul >
Additional improvements and changes to the Directory SDK are listed under
< a href = "#fixed" > Bugs
Fixed Since Version 3.05< / a > .
< p > < b > < font face = "Arial,Helvetica" > API updates< / font > < / b >
< p > The Netscape Directory SDK 4.0 for Java supports these changes to the
LDAP API:
1999-08-04 06:03:56 +04:00
< ul >
< li >
1999-09-15 22:32:21 +04:00
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 >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
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 >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
< tt > LDAPConnection.getServerControls()< / tt > now automatically parses controls.
As a result, calling < tt > parseResponse()< / tt > is no longer necessary.< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
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 >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
< 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 Netscape 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%" > < 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 >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
Select Advanced and make sure that Accept all cookies is active (it's radio
button is filled).< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
Make sure that Enable Java and Enable JavaScript are checked.< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
Choose Advanced | SmartUpdate from the left-hand panel.< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
Make sure that Enable SmartUpdate is checked.< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
Click OK.< / li >
1999-08-04 06:03:56 +04:00
< / ul >
1999-09-15 22:32:21 +04:00
< hr SIZE = 1 NOSHADE WIDTH = "100%" > < a NAME = "fixed" > < / 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.
1999-08-04 06:03:56 +04:00
< ul >
< li >
1999-09-15 22:32:21 +04:00
< 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 >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
The SDK doesn't support all the schema options described in RFC 2252. (354347)< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
LDAP Beans don't handle referrals. (353306)< / li >
1999-08-04 06:03:56 +04:00
< li >
1999-09-15 22:32:21 +04:00
< 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 >
1999-08-04 06:03:56 +04:00
< / ul >
1999-09-15 22:32:21 +04:00
< 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.
1999-08-04 06:03:56 +04:00
< p >
1999-09-15 22:32:21 +04:00
< 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.0 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 > .
1999-08-04 06:03:56 +04:00
< center >
1999-09-15 22:32:21 +04:00
< 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%" >
1999-08-04 06:03:56 +04:00
< / body >
< / html >
1999-09-28 23:58:15 +04:00
GIF89a<EFBFBD> <01> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̙<EFBFBD> ̙<EFBFBD> <CC99> <EFBFBD> ټ<EFBFBD> Ҳ<EFBFBD> ̩<EFBFBD> Ơ<EFBFBD> <C6A0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̙<EFBFBD> <CC99> <EFBFBD> <EFBFBD> ̙<EFBFBD> <CC99> <EFBFBD> f̙f<CC99> <66> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> yy<79> pp<70> f<EFBFBD> <66> f<EFBFBD> <66> f<EFBFBD> <66> ff<66> ff<66> fffff3f3<66> f3f3<66> <33> 3<EFBFBD> <33> 3f<33> 3ff33<33> 33f3333<33> f3<66> 3<EFBFBD> <33> <EFBFBD> <EFBFBD> f<EFBFBD> <66> ff<66> f3<66> 3<EFBFBD> <33> 3f<33> 33<33> <33> f<EFBFBD> <66> 3<EFBFBD> <33> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> @<06> <> <EFBFBD> pH,