users@glassfish.java.net

Re: javax.servlet API version?

From: Laird Nelson <ljnelson_at_gmail.com>
Date: Thu, 26 Apr 2012 09:23:28 -0400

On Thu, Apr 26, 2012 at 4:00 AM, Sahoo <sanjeeb.sahoo_at_oracle.com> wrote:

> Didn't you notice the group id of the artifact which had version number
> 3.1.1? It must be org.glassfish. There is no universal API jar produced for
> servlet spec. The API classes are a part of implementation of the spec. So,
> we at glassfish have produced api jars that exclusively belong to our
> namespace, compiled the way we like. They match version number of our
> project as they are all released together.
>

Sure, just as JBoss and Geronimo (and others) have done.


> Having said that some of us believe that since we are the Java EE RI, we
> can claim namespaces like javax.blah.blah and produce jars like
> javax.servlet:javax.servlet:3.0.
>

Yes, that was what I was hoping. I was hoping that these version numbers
or at least the versioning scheme would follow a predictable pattern.


> This is why you will also find such artifacts in maven repos. At no point,
> assume that there will be exactly one artifact corresponding to one spec
> version. The artifacts may be slightly changed to reflect fixes like types
> and other issues that might have crept in in the process of reproducing the
> information from spec to java source to classes.
>

Sure; that's understandable.


> For more details, read the following which is an outcome of numerous
> discussions that were held in internal archtecture group of GlassFish:
>
> https://wikis.oracle.com/display/GlassFish/Maven+Versioning+Rules
>
> This is not yet completely implemented for all specs yet in our project.
>

Thank you; this was very helpful. I was mainly reacting to what I see
here: http://search.maven.org/#search|ga|1|servlet-api I was primarily
getting confused by the difference between
javax.servlet:servlet-api:3.0-alpha-1 and
javax.servlet:javax.servlet-api:3.0.1. That led me to the implementation
jars (as seen here:
http://search.maven.org/#search|gav|1|g%3A%22org.glassfish%22%20AND%20a%3A%22javax.servlet%22),
which I knew were implementation jars, but they did have the api classes in
there as well. Then I came here. :-)

Best,
Laird

-- 
http://about.me/lairdnelson