Subject: Java LDAP API and the Java Community Process

From: "Kurt D. Zeilenga" <[email-masked]>
Date: Mon, 22 Jan 2001 18:25:00 -0800

The Java Community Program is the recognized organization
responsible for publishing Java API specifications. 

The JCP appears to independently review IETF Java API
specifications prior to them becoming JCP approved
specifications such as was done with RFC2853 (JCP 72), the
Java GSSAPI API.  Though the RFC2853 was adopted "as is",
the JCP could have adopted it with changes.  This clearly
would have lead to interoperability problems between
competing specifications.  It is unclear whether RFC2853
should be progressed now that there is a JCP controlled
revision process.

If and when the IETF LDAP Java is published as an RFC,
it would likely be submitted to the JCP for review.  They
may or may adopt it and if they do, they may make changes.
This would lead to interoperability problems between
competing specifications.

The JCP has on going work in LDAP (JNDI) and related
networking services (SASL, TLS).  It seems reasonable to
assume that the JCP would likely not accept an IETF Java
API without change.

To avoid problems caused by having two competing Java LDAP
API specifications, I recommend this work be continued under
the auspices of the JCP and removed from the WG charter.

Kurt

---

From: Rob Weltman <[email-masked]>
Date: Mon, 22 Jan 2001 18:42:04 -0800

In the Sun perception, there is no need for a Java LDAP API because of the existence of JNDI. There is almost zero possibility that a Java LDAP API would be considered by the JCP.

Rob

---

From: "Kurt D. Zeilenga" <[email-masked]>
Date: Mon, 22 Jan 2001 23:04:45 -0800

At 06:42 PM 1/22/01 -0800, Rob Weltman wrote:
>In the Sun perception, there is no need for a Java LDAP API because of the existence of JNDI. 

I think it's fairly reasonable to prefer a Java Standard Extension,
such as JNDI, over one which isn't.

> There is almost zero possibility that a Java LDAP API would be considered by the JCP.

There is zero possibility if it's not submitted to the JCP.

I believe there is a significant possibility that JNDI will be
extended by the JCP to incorporate most, if not all, of the
functionality of the LDAPext LDAP API.

It seems odd that we would recognize the JCP as the providing
the definitive specification of the Java Language, numerous
Internet protocol APIs, but not the LDAP API. 

In the end, there should be one Standard LDAP API.  Whether we
like it or not, that will be a JCP approved specification.  If
we want to have an impact upon this specification, we need to
work within the JCP not outside it.

Kurt

---

From: Rob Weltman <[email-masked]>
Date: Mon, 22 Jan 2001 23:36:22 -0800

> such as JNDI, over one which isn't.

  They serve different purposes. JNDI's purpose is not to expose the LDAP protocol, and that has important consequences.

> work within the JCP not outside it.

  I do work inside it. I'm spec lead for JSR 28 (SASL API), which started out as an Internet Draft. I've also been involved off and on with JNDI since the beginning of 1997, more in the beginning. JNDI and the Java LDAP API have branched off in different directions because they have different purposes in life. I wasn't willing to confine the API to what can be done with a generic directory interface because there were and are important LDAP features that developers want to exploit and which don't fit the JNDI template. And of course JNDI needs to abstract from the protocols it encapsulates in order to achieve its goals.

  Unfortunately not everyone realizes that.

Rob