work, Mark. Thank you! I think we need to expand the scope
of this discussion to other Spec Projects, namely Servlet and Platform.
I realize there is some overlap in the reps on these mailing lists,
but we need a wider audience for this discussion. It sounds like
we have an issue (or two) that was introduced somewhere around Java EE
5 or 6, and the resolution has been up to each implementation to figure
out... What started off as a "simple" question about whether
javax.servlet.jsp.resources->jakarta.servlet.jsp.resources should be
part of the Transformer rule set is now uncovering a potential issue with
both JSP and Servlet API jar files. We need more participation from
the people intimately involved in these projects from years past. Thanks. --------------------------------------------------- Kevin Sutter STSM, MicroProfile and Jakarta EE architect @ IBM e-mail: sutter@xxxxxxxxxx Twitter: @kwsutter phone: tl-553-3620 (office), 507-253-3620 (office) LinkedIn: https://www.linkedin.com/in/kevinwsutter
Thomas <markt@xxxxxxxxxx> To:
Re: [jsp-dev] What is jakarta.servlet.jsp.resources? Sent
I am not convinced that the removal of these packages was deliberate.
Maven Central =============
First of all, looking at the API JARs from Maven Central
For Servlet they were removed between Servlet 2.5 (Java EE 5) and Servlet 3.0 (Java EE 6). I have a complete copy of the EG archive for Servlet 3.0 and there is no mention of removing schema or the resources package.
For JSP they were removed between JSP 2.1 and JSP 2.1.1 (both Java EE 6). Note that JSP 2.1 was released at the time of Java EE 6 (July 2006) whereas 2.1.1 was released 2 years later (September 2008) with no accompanying record of that release that I can find at jcp.org
If the removal was deliberate, I would have expected them to be removed at the same point and as part of the release associated with a Java EE release.
SCM history ===========
Secondly, looking at the source code history
The Jakarta Server Pages repo is no help as no history was imported.
The files are present in the initial import at: v2/servlet-api/src/jsr245/src/share/dtd/jspxml_2_0.dtd
The build system looks like it is in transition. Ant, Maven and Jelly are all used. As far as I can tell the schema files were still part of the API JARs created.
Commit 168ce449c4ea0826842ab4129e83c4a700750970 restructures the Glassfish source code and places a subset of the schemas in two locations: appserver/deployment/dtds/src/main/resources/glassfish/lib/dtds appserver/deployment/schemas/src/main/resources/glassfish/lib/schemass
User Requirements =================
jspxml.dtd and jspxml.xsd are required to enable validation of JSP documents to the schema. I'd expect them to be part of the JSP API jar.
The other XML schema files are required to validate web.xml files, TLD files, etc. I'd expect them to be included in the Servlet JAR.
- the resources packages and the contained schema were removed from the Servlet and JSP APIs in different Java EE versions;
- the package was removed from the JSP API jar without any associated maintenance release;
- the schema were removed in Servlet 3.0 yet there is no discussion at all of this change in the Servlet EG archive for 3.0;
- that the removal of the schema appears to be the result of a reorganisation of the Glassfish source tree;
- that the schema are part of the specs and are required in order to validate various spec related XML documents;
it is my conclusion that these packages and their associated resources were removed in error and should be restored.
Further, we need to obtain (or find) copies of jspxml.xsd and jspxml.dtd for the JSP API.
On 16/06/2020 23:16, Kevin Sutter wrote: > Hi Joakim, > Jakarta EE 8 (and Java EE 8 and Java EE 7) API jar files didn't include > the j*.servlet.resources or j*.servlet.jsp.resources packages. I
would > hesitate on changing this content at this point. Including these > resources might be an "implementation-specific" action. > > --------------------------------------------------- > Kevin Sutter > STSM, MicroProfile and Jakarta EE architect @ IBM > e-mail: sutter@xxxxxxxxxx Twitter: @kwsutter > phone: tl-553-3620 (office), 507-253-3620 (office) > LinkedIn: https://www.linkedin.com/in/kevinwsutter > > > > From: Joakim Erdfelt <joakim.erdfelt@xxxxxxxxx> > To: jsp developer discussions <jsp-dev@xxxxxxxxxxx> > Date: 06/16/2020 16:05 > Subject: [EXTERNAL] Re: [jsp-dev] What
is > jakarta.servlet.jsp.resources? > Sent by: jsp-dev-bounces@xxxxxxxxxxx > ------------------------------------------------------------------------ > > > > Speaking as an Eclipse Jetty committer.... > > We would prefer that the xsd, schemas, dtd (yes even the old school > dtds) are all included in the appropriate API jars. > This includes jakarta.servlet (with its jakarta.servlet.resources),
and > jakarta.servlet.jsp with its (with its jakarta.servlet.jsp.resources) > > This eases many use cases, including the JPMS one (Eclipse Jetty 10
on > Jakarta EE 8 and Eclipse Jetty 11 on Jakarta EE 9 both support a proper > JPMS environment). > > - Joakim > > On Tue, Jun 16, 2020 at 2:49 PM Kevin Sutter <email@example.com_ > <mailto:sutter@xxxxxxxxxx>>
wrote: > Thanks, Mark. IBM Notes is notorious at making these type of
"internet > style" notes unreadable, but I will try my best... :-) > _ > firstname.lastname@example.org_ <mailto:jsp-dev-bounces@xxxxxxxxxxx>wrote > on 06/16/2020 13:38:19: > >> From: Mark Thomas <email@example.com_ <mailto:markt@xxxxxxxxxx>> >> To: jsp developer discussions <firstname.lastname@example.org_ <mailto:jsp-dev@xxxxxxxxxxx>> >> Date: 06/16/2020 13:38 >> Subject: [EXTERNAL] Re: [jsp-dev] What is jakarta.servlet.jsp.resources? >> Sent by: email@example.com_ <mailto:jsp-dev-bounces@xxxxxxxxxxx> >> >> On 16/06/2020 18:36, Kevin Sutter wrote: >> > Hi, >> > Does anybody know the origin of this package -- >> > jakarta.servlet.jsp.resources? It's not part of the
source repo for >> > jsp-api, but it's coming up as a question for the Transformer. >> > _INVALID URI REMOVED_ >> u=https-3A__github.com_eclipse_transformer_pull_52-23discussion-5Fr440933519&d=DwIF- >> g&c=jf_iaSHvJObTbx- >> siA1ZOg&r=R9dtOS3afYnRUmu_zogmh0VnVYl2tse_V7QBUA9yr_4&m=MeMg0Vj4tzNuyPAjRpzvqBifomI7YYzmoPi60D99jTo&s=xQkBlvLEI1sfwDHxlI7MuTeksynzMN_f68qtBe_jEzA&e= >> > >> > Is this a valid package for JSP? >> >> Historically, yes. It is present in the JSP 2.0 JAR file: >> _INVALID URI REMOVED_ >> u=https-3A__repo1.maven.org_maven2_javax_servlet_jsp_jsp-2Dapi_2. >> 0_jsp-2Dapi-2D2.0.jar&d=DwIF-g&c=jf_iaSHvJObTbx- >> siA1ZOg&r=R9dtOS3afYnRUmu_zogmh0VnVYl2tse_V7QBUA9yr_4&m=MeMg0Vj4tzNuyPAjRpzvqBifomI7YYzmoPi60D99jTo&s=yvAtLsqLf5ohLd_V1AJ4SRnydB3p- >> ecjTpUgTdQZqO4&e= >> >> where it contains: >> jsp_2_.xsd >> jspxml.dtd >> jspxml.xsd >> web-jsptaglibrary_1_1.dtd >> web-jsptaglibrary_1_2.dtd >> web-jsptaglibrary_2_0.xsd >> >> The same files are present in 2.1 >> _INVALID URI REMOVED_ >> u=https-3A__repo1.maven.org_maven2_javax_servlet_jsp_jsp-2Dapi_2. >> 1_jsp-2Dapi-2D2.1.jar&d=DwIF-g&c=jf_iaSHvJObTbx- >> siA1ZOg&r=R9dtOS3afYnRUmu_zogmh0VnVYl2tse_V7QBUA9yr_4&m=MeMg0Vj4tzNuyPAjRpzvqBifomI7YYzmoPi60D99jTo&s=f4SuOYjF24DB3NcDn6gD- >> JT3KK9N-DuPmwSiH5MjsKc&e= >> >> The appear to have been removed in 2.1.1 onwards. > > Right. This is what we (IBM) found as well. We have them
in our 2.2 > and prior bundles, but they were removed in 2.3 and now in 3.0. > >> >> > Or, is this an implementation-specific package? >> >> No. >> >> > Although we're not supposed to be adding to the defined
APIs >> > for Java EE or Jakarta EE... Just trying to figure
out the answer. Thanks! >> >> If I had to guess, I say most of those files were legitimately
moved to >> the Servlet API JAR because, without them, Servlet implementations
are >> unable to correctly validate XML schema that reference them. >> >> However, I'd expect the following files to still be present in
that package: >> >> jspxml.dtd >> jspxml.xsd >> >> I don't know where they were moved to. In fact, I asked about
those very >> files a few hours ago as I'd like to update the JSP spec document
to >> reference a Jakarta version of jspxml.xsd (https:// >> _urldefense.proofpoint.com/v2/url_ > <http://urldefense.proofpoint.com/v2/url>? >> u=http-3A__java.sun.com_JSP_Page&d=DwIF-g&c=jf_iaSHvJObTbx- >> siA1ZOg&r=R9dtOS3afYnRUmu_zogmh0VnVYl2tse_V7QBUA9yr_4&m=MeMg0Vj4tzNuyPAjRpzvqBifomI7YYzmoPi60D99jTo&s=-4H3QRAd23GgrstRS6CDcHXiuulDDTFNKOX- >> toqvHzg&e= ) > > Are these dtd/xsd files still required for JSP 2.3 and beyond?
Or, are > the XML files validated using some alternative schema? > The Jakarta EE 9 schemas are defined here: > _https://jakarta.ee/xml/ns/jakartaee/_ > The Java EE 8/Jakarta EE 8 schemas are defined here: > _http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/index.html#8_ > > These two files (jspxml.dtd and jspxml.xsd) are not defined in either > location. And, since we have stated that Jakarta EE 9 only > needs to support Jakarta EE 9 and Jakarta EE 8 schemas, are these
other > two schemas still required? Or, did we misss something with > the Java EE 8/Jakarta EE 8 definitions? > >> >> Finally, Tomcat has the package in question and those files as
a result >> of the time it was the reference implementation for JSP. While
the >> Tomcat project moved the schemas to Servlet that Servlet needed,
it left >> jspxml.dtd and jspxml.xsd in place. > > Okay, so that would explain why the Tomitribe team is attempting to > update the Transformer rules to include that package. > Technically, I guess it doesn't hurt to include it in the Transformer > rules. But, it did cause confusion for me since I got > pinged that our Jakarta EE 9 API jar file (and your JSP 3.0 API jar > file) had an error because we didn't include this > jakarta.servlet.jsp.resources package... > > It's sounding like this jakarta.servlet.jsp.resources package should
not > be defined with the official rule set for the Transformer > project. And, if a given implementation (Tomcat, Jetty, Open
Liberty, > etc) does require this package to be converted, then it > should be part of the implementation's rule set. > > -- Kevin > >> >> Mark >> _______________________________________________ >> jsp-dev mailing list >> firstname.lastname@example.org_ <mailto:jsp-dev@xxxxxxxxxxx> >> To unsubscribe from this list, visit _https://www.eclipse.org/_ >> mailman/listinfo/jsp-dev >> > > _______________________________________________ > jsp-dev mailing list_ > email@example.com_ <mailto:jsp-dev@xxxxxxxxxxx> > To unsubscribe from this list, visit > _https://www.eclipse.org/mailman/listinfo/jsp-dev________________________________________________ > jsp-dev mailing list > jsp-dev@xxxxxxxxxxx > To unsubscribe from this list, visit > https://www.eclipse.org/mailman/listinfo/jsp-dev > > > > > _______________________________________________ > jsp-dev mailing list > jsp-dev@xxxxxxxxxxx > To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jsp-dev >