jsr369-experts@servlet-spec.java.net

[jsr369-experts] Re: [servlet-spec users] Re: Re: Question about TLS 1.2 Application-Layer Protocol Negotiation Extension

From: Mark Thomas <markt_at_apache.org>
Date: Wed, 17 Dec 2014 08:34:50 +0000

On 16/12/2014 16:40, Edward Burns wrote:
>>>>>> On Tue, 16 Dec 2014 15:33:04 +0000, Mark Thomas <markt_at_apache.org> said:
>
> EB> I am willing to try. I must set one precondition before I can credibly
> EB> make such a request: establish a precedent.
>
> MT> Why do we need a precedent? That creates a chicken / egg problem.
> MT> Something has to be first. Why not this?
>
> Mark, I'm going to ask you to trust me on this. It would be much easier
> with a precedent.
>
> MT> Does it have to be part of the standard release? Could it be in some
> MT> form of add-on much like JSSE was when it was first introduced?
>
> That sounds like some kind of precedent at least. Can you please share
> with the group the story of how JSSE was introduced? Sure, we could
> look it up, but I want to benefit from your unique historical flavor in
> the retelling.

I'm not sure how much flavour I am going to be able to add to this.

While I dabbled briefly with Java very early on, I didn't really get
involved until after Java 1.4 was released which included JSSE. However,
for a while I was acting as the release manager for Apache Tomcat 4 and
that had to build with Java 1.3 which did not include JSSE.

Tomcat 4 supported SSL so JSSE was a required dependency at build time
although it was optional at runtime (i.e. you only needed it if you were
going to use SSL). As I recall, it was simply a case of downloading the
right (i.e. the latest) JSSE distribution, unpacking it and putting the
right JARs on the class path.

I imagine something similar working with ALPN and Java 8. Rather than
the optional package being specific to a Java 8 releaseI'd hope it was
written (and Java 8 SE tweaked if necessary) in such a way that it
worked with Java 1.8.0 update XX or later. Containers would simply test
for the presence of ALPN support and use it if available and disable h2
if not.

Mark