diff --git a/documentation/jetty-documentation/src/main/asciidoc/old_docs/frameworks/osgi.adoc b/documentation/jetty-documentation/src/main/asciidoc/old_docs/frameworks/osgi.adoc index 9b681cf88971..a6e45fd74d4c 100644 --- a/documentation/jetty-documentation/src/main/asciidoc/old_docs/frameworks/osgi.adoc +++ b/documentation/jetty-documentation/src/main/asciidoc/old_docs/frameworks/osgi.adoc @@ -700,32 +700,9 @@ For the JSTL library, we recommend the use of the implementation from Glassfish, |Jar |Bundle Symbolic Name |The link:#osgi-jsp[jsp jars]| -|org.eclipse.jetty.orbit:jakarta.servlet.jsp.jstl-1.2.0.v201105211821.jar| jakarta.servlet.jsp.jstl +|jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api-2.0.0.jar| jakarta.servlet.jsp.jstl-api -|org.glassfish.web:jakarta.servlet.jsp.jstl-1.2.2.jar|org.glassfish.web.jakarta.servlet.jsp.jstl -|======================================================================= - -However, if you wish, you may use the JSTL implementation from Apache instead, although you will need to source some dependency jars with suitable OSGi manifests: - -.Jars Required for Apache JSTL -[cols=",,",options="header",] -|======================================================================= -|Jar |Bundle Symbolic Name |Location -|The link:#osgi-jsp[jsp jars] | | - -|org.apache.taglibs:taglibs-standard-spec:jar:1.2.1 -|org.apache.taglibs.taglibs-standard-spec |Distribution lib/apache-jstl - -|org.apache.taglibs:taglibs-standard-spec:jar:1.2.1 -|org.apache.taglibs.standard-impl |Distribution lib/apache-jstl - -|org.apache.xalan 2.7.1 | |Try -http://download.eclipse.org/tools/orbit/downloads/drops/R20140525021250/repository/plugins/org.apache.xalan_2.7.1.v201005080400.jar[Eclipse -Orbit] - -|org.apache.xml.serializer 2.7.1 | |Try -http://download.eclipse.org/tools/orbit/downloads/drops/R20140525021250/repository/plugins/org.apache.xml.serializer_2.7.1.v201005080400.jar[Eclipse -Orbit] +|org.glassfish.web:jakarta.servlet.jsp.jstl-2.0.0.jar|org.glassfish.web.jakarta.servlet.jsp.jstl |======================================================================= ===== The jetty-osgi-boot-jsp jar diff --git a/documentation/jetty-documentation/src/main/asciidoc/old_docs/jsp/configuring-jsp.adoc b/documentation/jetty-documentation/src/main/asciidoc/old_docs/jsp/configuring-jsp.adoc index 80cb0d3b0789..de1fa5d83614 100644 --- a/documentation/jetty-documentation/src/main/asciidoc/old_docs/jsp/configuring-jsp.adoc +++ b/documentation/jetty-documentation/src/main/asciidoc/old_docs/jsp/configuring-jsp.adoc @@ -279,9 +279,9 @@ It is also automatically on the classpath for the Jetty Maven plugin, which uses If you are using Jetty in an embedded scenario, and you need to use JSTL, then you must ensure that the JSTL jars are included on the _container's_ classpath - that is the classpath that is the _parent_ of the webapp's classpath. This is a restriction that arises from the JavaEE specification. -====== Apache JSP +====== Glassfish JSTL -You will need to put the jars that are present in the `{$jetty.home}/lib/apache-jstl` directory onto the _container's_ classpath. +You will need to put the jars that are present in the `{$jetty.home}/lib/glassfish-jstl` directory onto the _container's_ classpath. The Apache JSP engine will find the JSTL tag definitions inside these jars during startup. As an efficiency enhancement, you can have jetty examine the JSTL jars to find the tags, and pre-feed them into the Apache JSP engine. diff --git a/documentation/jetty-documentation/src/main/asciidoc/old_docs/startup/screen-list-modules.adoc b/documentation/jetty-documentation/src/main/asciidoc/old_docs/startup/screen-list-modules.adoc index 239bcb95d1a3..cedaa695c1ea 100644 --- a/documentation/jetty-documentation/src/main/asciidoc/old_docs/startup/screen-list-modules.adoc +++ b/documentation/jetty-documentation/src/main/asciidoc/old_docs/startup/screen-list-modules.adoc @@ -46,10 +46,10 @@ Modules for tag '*': LIB: lib/apache-jsp/*.jar Enabled: transitive provider of apache-jsp for jsp - Module: apache-jstl - : Enables the apache version of JSTL - LIB: lib/apache-jstl/*.jar - Enabled: transitive provider of apache-jstl for jstl + Module: glassfish-jstl + : Enables the Glassfish version of JSTL + LIB: lib/glassfish-jstl/*.jar + Enabled: transitive provider of glassfish-jstl for jstl Module: cdi2 : Jetty setup to support Weld/CDI2 with WELD inside the webapp @@ -145,7 +145,7 @@ Modules for tag '*': Module: jstl : Enables JSTL for all webapplications deployed on the server - Depend: jsp, apache-jstl + Depend: jsp, glassfish-jstl Enabled: ${jetty.base}\start.d\jstl.ini Module: jvm diff --git a/apache-jstl/pom.xml b/glassfish-jstl/pom.xml similarity index 87% rename from apache-jstl/pom.xml rename to glassfish-jstl/pom.xml index 6add837dcb8c..b3846c99b859 100644 --- a/apache-jstl/pom.xml +++ b/glassfish-jstl/pom.xml @@ -5,12 +5,12 @@ 11.0.1-SNAPSHOT 4.0.0 - apache-jstl - Apache :: JSTL module - http://tomcat.apache.org/taglibs/standard/ + glassfish-jstl + Glassfish :: JSTL module + https://projects.eclipse.org/projects/ee4j.glassfish jar - ${project.groupId}.apache.jstl + ${project.groupId}.glassfish.jstl @@ -49,10 +49,9 @@ - - org.mortbay.jasper - taglibs-standard + org.glassfish.web + jakarta.servlet.jsp.jstl diff --git a/apache-jstl/src/main/config/modules/apache-jstl.mod b/glassfish-jstl/src/main/config/modules/glassfish-jstl.mod similarity index 59% rename from apache-jstl/src/main/config/modules/apache-jstl.mod rename to glassfish-jstl/src/main/config/modules/glassfish-jstl.mod index de94202bebe1..1b6a0b01562e 100644 --- a/apache-jstl/src/main/config/modules/apache-jstl.mod +++ b/glassfish-jstl/src/main/config/modules/glassfish-jstl.mod @@ -1,7 +1,7 @@ # DO NOT EDIT - See: https://www.eclipse.org/jetty/documentation/current/startup-modules.html [description] -Enables the apache version of JSTL for all webapps. +Enables the glassfish version of JSTL for all webapps. [lib] -lib/apache-jstl/*.jar +lib/glassfish-jstl/*.jar diff --git a/apache-jstl/src/main/resources/readme.txt b/glassfish-jstl/src/main/resources/readme.txt similarity index 100% rename from apache-jstl/src/main/resources/readme.txt rename to glassfish-jstl/src/main/resources/readme.txt diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java b/glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java similarity index 100% rename from apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java rename to glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JspConfig.java diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java b/glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java similarity index 100% rename from apache-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java rename to glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JspIncludeTest.java diff --git a/apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java b/glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java similarity index 100% rename from apache-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java rename to glassfish-jstl/src/test/java/org/eclipse/jetty/jstl/JstlTest.java diff --git a/apache-jstl/src/test/resources/jetty-logging.properties b/glassfish-jstl/src/test/resources/jetty-logging.properties similarity index 100% rename from apache-jstl/src/test/resources/jetty-logging.properties rename to glassfish-jstl/src/test/resources/jetty-logging.properties diff --git a/apache-jstl/src/test/taglibjar/META-INF/etag.tld b/glassfish-jstl/src/test/taglibjar/META-INF/etag.tld similarity index 100% rename from apache-jstl/src/test/taglibjar/META-INF/etag.tld rename to glassfish-jstl/src/test/taglibjar/META-INF/etag.tld diff --git a/apache-jstl/src/test/taglibjar/META-INF/tags/errorhandler.tag b/glassfish-jstl/src/test/taglibjar/META-INF/tags/errorhandler.tag similarity index 100% rename from apache-jstl/src/test/taglibjar/META-INF/tags/errorhandler.tag rename to glassfish-jstl/src/test/taglibjar/META-INF/tags/errorhandler.tag diff --git a/apache-jstl/src/test/webapp/WEB-INF/web.xml b/glassfish-jstl/src/test/webapp/WEB-INF/web.xml similarity index 100% rename from apache-jstl/src/test/webapp/WEB-INF/web.xml rename to glassfish-jstl/src/test/webapp/WEB-INF/web.xml diff --git a/apache-jstl/src/test/webapp/catch-basic.jsp b/glassfish-jstl/src/test/webapp/catch-basic.jsp similarity index 100% rename from apache-jstl/src/test/webapp/catch-basic.jsp rename to glassfish-jstl/src/test/webapp/catch-basic.jsp diff --git a/apache-jstl/src/test/webapp/catch-taglib.jsp b/glassfish-jstl/src/test/webapp/catch-taglib.jsp similarity index 100% rename from apache-jstl/src/test/webapp/catch-taglib.jsp rename to glassfish-jstl/src/test/webapp/catch-taglib.jsp diff --git a/apache-jstl/src/test/webapp/included.jsp b/glassfish-jstl/src/test/webapp/included.jsp similarity index 100% rename from apache-jstl/src/test/webapp/included.jsp rename to glassfish-jstl/src/test/webapp/included.jsp diff --git a/apache-jstl/src/test/webapp/ref.jsp b/glassfish-jstl/src/test/webapp/ref.jsp similarity index 100% rename from apache-jstl/src/test/webapp/ref.jsp rename to glassfish-jstl/src/test/webapp/ref.jsp diff --git a/apache-jstl/src/test/webapp/top.jsp b/glassfish-jstl/src/test/webapp/top.jsp similarity index 100% rename from apache-jstl/src/test/webapp/top.jsp rename to glassfish-jstl/src/test/webapp/top.jsp diff --git a/apache-jstl/src/test/webapp/urls.jsp b/glassfish-jstl/src/test/webapp/urls.jsp similarity index 100% rename from apache-jstl/src/test/webapp/urls.jsp rename to glassfish-jstl/src/test/webapp/urls.jsp diff --git a/jetty-deploy/src/main/config/etc/jetty-deploy.xml b/jetty-deploy/src/main/config/etc/jetty-deploy.xml index 3dc7eabdb795..6aff212cb175 100644 --- a/jetty-deploy/src/main/config/etc/jetty-deploy.xml +++ b/jetty-deploy/src/main/config/etc/jetty-deploy.xml @@ -18,7 +18,7 @@ org.eclipse.jetty.server.webapp.ContainerIncludeJarPattern - .*/jetty-jakarta-servlet-api-[^/]*\.jar$|.*/jakarta.servlet.jsp.jstl-.*\.jar$|.*/.*taglibs-standard-.*\.jar$ + .*/jetty-jakarta-servlet-api-[^/]*\.jar$|.*/.*jakarta.servlet.jsp.jstl-.*\.jar$ diff --git a/jetty-home/pom.xml b/jetty-home/pom.xml index 51536fa3eb95..04289bdd9780 100644 --- a/jetty-home/pom.xml +++ b/jetty-home/pom.xml @@ -127,7 +127,7 @@ org.eclipse.jetty.orbit,org.eclipse.jetty.http2,org.eclipse.jetty.websocket,org.eclipse.jetty.fcgi,org.eclipse.jetty.toolchain,org.apache.taglibs - apache-jsp,apache-jstl,jetty-start,jetty-slf4j-impl + apache-jsp,glassfish-jstl,jetty-start,jetty-slf4j-impl jar ${assembly-directory}/lib @@ -145,7 +145,7 @@ org.eclipse.jetty.orbit,org.eclipse.jetty.http2,org.eclipse.jetty.websocket,org.eclipse.jetty.fcgi,org.eclipse.jetty.toolchain,org.apache.taglibs - apache-jsp,apache-jstl,jetty-start + apache-jsp,glassfish-jstl,jetty-start jar sources @@ -376,32 +376,30 @@ - copy-apache-jstl-deps + copy-glassfish-jstl-deps generate-resources copy-dependencies - org.glassfish.web - jakarta.servlet.jsp.jstl-api,taglibs-standard + jakarta.servlet.jsp.jstl-api,jakarta.servlet.jsp.jstl true jar - ${assembly-directory}/lib/apache-jstl + ${assembly-directory}/lib/glassfish-jstl - copy-apache-jstl-src-deps + copy-glassfish-jstl-src-deps generate-resources copy-dependencies - org.glassfish.web - jakarta.servlet.jsp.jstl-api,taglibs-standard + jakarta.servlet.jsp.jstl-api,jakarta.servlet.jsp.jstl true jar sources - ${source-assembly-directory}/lib/apache-jstl + ${source-assembly-directory}/lib/glassfish-jstl @@ -630,7 +628,7 @@ org.eclipse.jetty - apache-jstl + glassfish-jstl ${project.version} diff --git a/jetty-home/src/main/resources/modules/jstl.mod b/jetty-home/src/main/resources/modules/jstl.mod index 32ab7cf3275e..2b5c2fa76699 100644 --- a/jetty-home/src/main/resources/modules/jstl.mod +++ b/jetty-home/src/main/resources/modules/jstl.mod @@ -5,5 +5,5 @@ Enables JSTL for all web applications deployed on the server. [depend] jsp -apache-jstl +glassfish-jstl diff --git a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml index 24612c1e52aa..3d26635d564f 100644 --- a/jetty-osgi/jetty-osgi-boot-jsp/pom.xml +++ b/jetty-osgi/jetty-osgi-boot-jsp/pom.xml @@ -107,29 +107,29 @@ org.apache.jasper.tagplugins.jstl;version="[$(version;==;${jspImpl.osgiVersion}),$(version;+;${jspImpl.osgiVersion}))";resolution:=optional, org.apache.jasper.util;version="[$(version;===;${jspImpl.osgiVersion}),$(version;+;${jspImpl.osgiVersion}))";resolution:=optional, org.apache.jasper.xmlparser;version="[$(version;==;${jspImpl.osgiVersion}),$(version;+;${jspImpl.osgiVersion}))";resolution:=optional, - org.apache.taglibs.standard;version="1.2";resolution:=optional, - org.apache.taglibs.standard.extra.spath;version="1.2";resolution:=optional, - org.apache.taglibs.standard.functions;version="1.2";resolution:=optional, - org.apache.taglibs.standard.lang.jstl;version="1.2";resolution:=optional, - org.apache.taglibs.standard.lang.jstl.parser;version="1.2";resolution:=optional, - org.apache.taglibs.standard.lang.jstl.test;version="1.2";resolution:=optional, - org.apache.taglibs.standard.lang.jstl.test.beans;version="1.2";resolution:=optional, - org.apache.taglibs.standard.lang.support;version="1.2";resolution:=optional, - org.apache.taglibs.standard.resources;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.common.core;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.common.fmt;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.common.sql;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.common.xml;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.el.core;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.el.fmt;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.el.sql;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.el.xml;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.rt.core;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.rt.fmt;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.rt.sql;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tag.rt.xml;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tei;version="1.2";resolution:=optional, - org.apache.taglibs.standard.tlv;version="1.2";resolution:=optional, + org.apache.taglibs.standard;version="2.0";resolution:=optional, + org.apache.taglibs.standard.extra.spath;version="2.0";resolution:=optional, + org.apache.taglibs.standard.functions;version="2.0";resolution:=optional, + org.apache.taglibs.standard.lang.jstl;version="2.0";resolution:=optional, + org.apache.taglibs.standard.lang.jstl.parser;version="2.0";resolution:=optional, + org.apache.taglibs.standard.lang.jstl.test;version="2.0";resolution:=optional, + org.apache.taglibs.standard.lang.jstl.test.beans;version="2.0";resolution:=optional, + org.apache.taglibs.standard.lang.support;version="2.0";resolution:=optional, + org.apache.taglibs.standard.resources;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.common.core;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.common.fmt;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.common.sql;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.common.xml;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.el.core;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.el.fmt;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.el.sql;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.el.xml;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.rt.core;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.rt.fmt;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.rt.sql;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tag.rt.xml;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tei;version="2.0";resolution:=optional, + org.apache.taglibs.standard.tlv;version="2.0";resolution:=optional, org.apache.tomcat;version="[10,11)";resolution:=optional, org.eclipse.jetty.jsp;version="[$(version;===;${parsedVersion.osgiVersion}),$(version;==+;${parsedVersion.osgiVersion}))";resolution:=optional, org.slf4j.*, diff --git a/jetty-osgi/test-jetty-osgi/pom.xml b/jetty-osgi/test-jetty-osgi/pom.xml index 5bd95f3fa62c..25de312a1c93 100644 --- a/jetty-osgi/test-jetty-osgi/pom.xml +++ b/jetty-osgi/test-jetty-osgi/pom.xml @@ -238,35 +238,9 @@ - org.mortbay.jasper - taglibs-standard - - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.xalan - 2.7.2_3 - - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.xalan-serializer - 2.7.2_1 - - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.bcel - 5.2_4 + org.glassfish.web + jakarta.servlet.jsp.jstl - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.xmlresolver - 1.2_5 - - - org.apache.servicemix.bundles - org.apache.servicemix.bundles.xerces - 2.12.0_1 - - org.eclipse.jetty diff --git a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java index f903c03cd1d0..3ef462bd502d 100644 --- a/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java +++ b/jetty-osgi/test-jetty-osgi/src/test/java/org/eclipse/jetty/osgi/test/TestOSGiUtil.java @@ -211,12 +211,7 @@ public static List org.eclipse.jetty - apache-jstl + glassfish-jstl ${project.version} diff --git a/pom.xml b/pom.xml index 4704086d32e1..0fa2ec0b1e60 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,8 @@ 5.0.2 2.0.0 - 10.0.0-M10 + 10.0.0-SNAPSHOT + 2.0.0 3.0 2.0.0 2.0.0 @@ -120,7 +121,7 @@ jetty-servlets jetty-util-ajax apache-jsp - apache-jstl + glassfish-jstl jetty-maven-plugin jetty-jspc-maven-plugin jetty-deploy @@ -1066,9 +1067,9 @@ ${jsp.version} - org.mortbay.jasper - taglibs-standard - ${jsp.version} + org.glassfish.web + jakarta.servlet.jsp.jstl + ${jstl.version} org.mortbay.jasper diff --git a/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java b/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java index d6936329975e..58373066de83 100644 --- a/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java +++ b/tests/test-distribution/src/test/java/org/eclipse/jetty/tests/distribution/DistributionTests.java @@ -142,7 +142,7 @@ public void testQuickStartGenerationAndRun() throws Exception } @Test - public void testSimpleWebAppWithJSP() throws Exception + public void testSimpleWebAppWithJSPandJSTL() throws Exception { Path jettyBase = newTestJettyBaseDirectory(); String jettyVersion = System.getProperty("jettyVersion"); @@ -155,7 +155,7 @@ public void testSimpleWebAppWithJSP() throws Exception String[] args1 = { "--create-start-ini", "--approve-all-licenses", - "--add-modules=resources,server,http,webapp,deploy,jsp,jmx,servlet,servlets" + "--add-modules=resources,server,http,webapp,deploy,jsp,jstl,jmx,servlet,servlets" }; try (JettyHomeTester.Run run1 = distribution.start(args1)) { @@ -174,9 +174,9 @@ public void testSimpleWebAppWithJSP() throws Exception assertTrue(run2.awaitConsoleLogsFor("Started Server@", 10, TimeUnit.SECONDS)); startHttpClient(); - ContentResponse response = client.GET("http://localhost:" + port + "/test/index.jsp"); + ContentResponse response = client.GET("http://localhost:" + port + "/test/jstl.jsp"); assertEquals(HttpStatus.OK_200, response.getStatus()); - assertThat(response.getContentAsString(), containsString("JSP Examples")); + assertThat(response.getContentAsString(), containsString("JSTL Example")); assertThat(response.getContentAsString(), not(containsString("<%"))); } } diff --git a/tests/test-quickstart/pom.xml b/tests/test-quickstart/pom.xml index fbcc049e2d6b..c902c1290ab6 100644 --- a/tests/test-quickstart/pom.xml +++ b/tests/test-quickstart/pom.xml @@ -103,7 +103,7 @@ org.eclipse.jetty - apache-jstl + glassfish-jstl ${project.version} test