Skip to content

Commit 54ec549

Browse files
ludochgae-java-bot
authored andcommitted
Remove Jetty 9 support from App Engine Java Standard.
PiperOrigin-RevId: 915088094 Change-Id: Ie80113d024c8a3a9e8f995023cae9f5e2d7f7917
1 parent 38480ca commit 54ec549

30 files changed

Lines changed: 155 additions & 803 deletions

File tree

TRYLATESTBITSINPROD.md

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -26,20 +26,18 @@ without being impacted with a scheduled new runtime push.
2626
Well, it is possible, by changing just a little bit your application configuration and your
2727
pom.xml file.
2828

29-
First, you need to decide which App Engine Java runtime jars version you want to use. There are 6 runtime jars that
29+
First, you need to decide which App Engine Java runtime jars version you want to use. There are 7 runtime jars that
3030
are bundled as a Maven assembly under `<artifactId>runtime-deployment</artifactId>`:
3131

32-
* runtime-impl-jetty9.jar
3332
* runtime-impl-jetty12.jar
3433
* runtime-impl-jetty121.jar
35-
* runtime-shared-jetty9.jar
3634
* runtime-shared-jetty12.jar
3735
* runtime-shared-jetty121-ee8.jar
3836
* runtime-shared-jetty12-ee10.jar
3937
* runtime-shared-jetty121-ee11.jar
4038
* runtime-main.jar
4139

42-
Let's say you want the latest from head in this github repository. You could built the 9 jars, add them at the
40+
Let's say you want the latest from head in this github repository. You could build the 7 jars, add them at the
4341
top of your web application and change the entrypoint to boot with these jars instead of the one maintained in production.
4442

4543

@@ -56,9 +54,8 @@ See the output of the runtime deployment module which contains all the jars need
5654

5755
```
5856
ls runtime/deployment/target/runtime-deployment-*/
59-
runtime-impl-jetty12.jar runtime-impl-jetty121.jar runtime-main.jar runtime-shared-jetty12.jar
60-
runtime-shared-jetty121-ee8.jar runtime-shared-jetty121-ee11.jar
61-
runtime-impl-jetty9.jar runtime-shared-jetty12-ee10.jar runtime-shared-jetty9.jar
57+
runtime-impl-jetty12.jar runtime-impl-jetty121.jar runtime-main.jar runtime-shared-jetty12.jar
58+
runtime-shared-jetty121-ee8.jar runtime-shared-jetty121-ee11.jar runtime-shared-jetty12-ee10.jar
6259
```
6360

6461
These jars are pushed in Maven Central as well under artifact com.google.appengine:runtime-deployment.
@@ -99,14 +96,6 @@ deployed web application.
9996
</goals>
10097
<configuration>
10198
<fileSets>
102-
<fileSet>
103-
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-impl-jetty9-${appengine.runtime.version}.jar</sourceFile>
104-
<destinationFile>${appengine.runtime.location}/runtime-impl-jetty9.jar</destinationFile>
105-
</fileSet>
106-
<fileSet>
107-
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-shared-jetty9-${appengine.runtime.version}.jar</sourceFile>
108-
<destinationFile>${appengine.runtime.location}/runtime-shared-jetty9.jar</destinationFile>
109-
</fileSet>
11099
<fileSet>
111100
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-impl-jetty12-${appengine.runtime.version}.jar</sourceFile>
112101
<destinationFile>${appengine.runtime.location}/runtime-impl-jetty12.jar</destinationFile>
@@ -233,14 +222,6 @@ sed -i '/<\/plugins>/i \
233222
</goals>\
234223
<configuration>\
235224
<fileSets>\
236-
<fileSet>\
237-
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-impl-jetty9-${appengine.runtime.version}.jar</sourceFile>\
238-
<destinationFile>${appengine.runtime.location}/runtime-impl-jetty9.jar</destinationFile>\
239-
</fileSet>\
240-
<fileSet>\
241-
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-shared-jetty9-${appengine.runtime.version}.jar</sourceFile>\
242-
<destinationFile>${appengine.runtime.location}/runtime-shared-jetty9.jar</destinationFile>\
243-
</fileSet>\
244225
<fileSet>\
245226
<sourceFile>${appengine.runtime.location}/WEB-INF/lib/runtime-impl-jetty12-${appengine.runtime.version}.jar</sourceFile>\
246227
<destinationFile>${appengine.runtime.location}/runtime-impl-jetty12.jar</destinationFile>\

applications/proberapp/pom.xml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -61,18 +61,6 @@
6161
<artifactId>google-cloud-spanner</artifactId>
6262
<version>6.117.0</version>
6363
</dependency>
64-
<dependency>
65-
<groupId>com.google.appengine</groupId>
66-
<artifactId>runtime-impl-jetty9</artifactId>
67-
<version>${project.version}</version>
68-
<scope>provided</scope>
69-
</dependency>
70-
<dependency>
71-
<groupId>com.google.appengine</groupId>
72-
<artifactId>runtime-shared-jetty9</artifactId>
73-
<version>${project.version}</version>
74-
<scope>provided</scope>
75-
</dependency>
7664
<dependency>
7765
<groupId>com.google.appengine</groupId>
7866
<artifactId>runtime-impl-jetty12</artifactId>

applications/proberapp_jakarta/pom.xml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -62,18 +62,6 @@
6262
<artifactId>google-cloud-spanner</artifactId>
6363
<version>6.117.0</version>
6464
</dependency>
65-
<dependency>
66-
<groupId>com.google.appengine</groupId>
67-
<artifactId>runtime-impl-jetty9</artifactId>
68-
<version>${project.version}</version>
69-
<scope>provided</scope>
70-
</dependency>
71-
<dependency>
72-
<groupId>com.google.appengine</groupId>
73-
<artifactId>runtime-shared-jetty9</artifactId>
74-
<version>${project.version}</version>
75-
<scope>provided</scope>
76-
</dependency>
7765
<dependency>
7866
<groupId>com.google.appengine</groupId>
7967
<artifactId>runtime-impl-jetty12</artifactId>

docs/dependencies.digraph

Lines changed: 130 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -12,62 +12,157 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
# Can be rendered via https://dreampuf.github.io/GraphvizOnline
15+
# Can be rendered via http://graphviz/ or https://dreampuf.github.io/GraphvizOnline
16+
# For more styling options, see go/graphviz-ref
1617

1718
digraph {
19+
rankdir=LR;
20+
splines=ortho;
21+
nodesep=0.8;
22+
node [margin=0 fontcolor=black fontsize=32 width=0.5 shape=ovale style=filled];
1823
{
19-
node [margin=0 fontcolor=black fontsize=32 width=0.5 shape=ovale style=filled]
20-
appengine_resources [fillcolor=yellow label="appengine-resources"]
21-
appengine_utils [fillcolor=yellow label="appengine-utils"]
22-
protos [fillcolor=yellow label="protos"]
23-
sessiondata [fillcolor=yellow label="sessiondata"]
24-
runtime_shared_jetty9 [fillcolor=orange label="runtime-shared-jetty *"]
25-
runtime_shared_jetty12 [fillcolor=orange label="runtime-shared-jetty *"]
26-
appengine_apis [fillcolor=yellow label="appengine-apis"]
27-
appengine_apis_dev [fillcolor=yellow label="appengine-apis-dev"]
28-
shared_sdk [fillcolor=yellow label="shared-sdk"]
29-
appengine_local_runtime [fillcolor=orange label="appengine-local-runtime"]
30-
appengine_api_legacy [fillcolor=orange label="appengine-api-legacy"]
31-
appengine_testing [fillcolor=orange label="appengine-testing"]
32-
appengine_local_runtime_shared [fillcolor=orange label="appengine-local-runtime-shared"]
33-
appengine_remoteapi [fillcolor=orange label="appengine-remoteapi"]
34-
appengine_tools_sdk [fillcolor=orange label="appengine-tools-sdk"]
35-
runtime_main [fillcolor=orange label="runtime-main * "]
36-
runtime_impl_jetty9 [fillcolor=orange label="runtime-impl-jetty9 *"]
37-
runtime_impl_jetty12 [fillcolor=orange label="runtime-impl-jetty12 *"]
38-
runtime_util [fillcolor=yellow label="runtime-util"]
39-
appengine_api_1_0_sdk [fillcolor=orange label="appengine-api-1_0-sdk"]
40-
appengine_api_stubs [fillcolor=orange label="appengine-api-stubs"]
41-
runtime_util -> {}
42-
runtime_impl -> {}
43-
runtime_shared -> {}
44-
jetty9 ->{}
45-
jetty12 ->{}
46-
quickstartgenerator ->{}
47-
quickstartgenerator_jetty12 ->{}
48-
appengine_local_runtime_jetty9 ->{}
49-
appengine_local_runtime_jetty12 ->{}
24+
appengine_resources [fillcolor=grey label="appengine-resources"];
25+
appengine_utils [fillcolor=grey label="appengine-utils"];
26+
protos [fillcolor=grey label="protos"];
27+
sessiondata [fillcolor=grey label="sessiondata"];
28+
appengine_apis [fillcolor=grey label="appengine-apis"];
29+
appengine_apis_dev [fillcolor=grey label="appengine-apis-dev"];
30+
shared_sdk [fillcolor=grey label="shared-sdk"];
31+
appengine_local_runtime [fillcolor=grey label="appengine-local-runtime"];
32+
appengine_local_runtime_shared [fillcolor=grey label="appengine-local-runtime-shared"];
33+
runtime_util [fillcolor=grey label="runtime-util"];
34+
runtime_impl [fillcolor=grey label="runtime-impl"];
35+
runtime_shared [fillcolor=grey label="runtime-shared"];
36+
}
37+
38+
subgraph cluster_user_visible {
39+
label = "User Visible";
40+
appengine_api_legacy [fillcolor=green label="appengine-api-legacy"];
41+
appengine_testing [fillcolor=green label="appengine-testing"];
42+
appengine_remoteapi [fillcolor=green label="appengine-remoteapi"];
43+
appengine_tools_sdk [fillcolor=green label="appengine-tools-sdk"];
44+
appengine_api_1_0_sdk [fillcolor=green label="appengine-api-1_0-sdk"];
45+
appengine_api_stubs [fillcolor=green label="appengine-api-stubs"];
46+
appengine_jsr107 [fillcolor=green label="appengine-jsr107"];
47+
}
48+
49+
subgraph cluster_jetty12 {
50+
label = "Jetty 12";
51+
shared_sdk_jetty12 [fillcolor=orange label="shared-sdk-jetty12"];
52+
jetty12 [fillcolor=orange label="jetty12"];
53+
local_runtime_shared_jetty12 [fillcolor=orange label="local-runtime-shared-jetty12"];
54+
appengine_local_runtime_jetty12 [fillcolor=orange label="appengine_local_runtime_jetty12"];
55+
}
56+
57+
subgraph cluster_jetty121 {
58+
label = "Jetty 12.1";
59+
shared_sdk_jetty121 [fillcolor=yellow label="shared-sdk-jetty121"];
60+
jetty121 [fillcolor=yellow label="jetty121"];
61+
quickstartgenerator_jetty121_ee8 [fillcolor=yellow label="quickstartgenerator_jetty121_ee8"];
62+
quickstartgenerator_jetty121_ee11 [fillcolor=yellow label="quickstartgenerator_jetty121_ee11"];
63+
appengine_local_runtime_jetty121 [fillcolor=yellow label="appengine_local_runtime_jetty121"];
64+
}
65+
66+
subgraph cluster_runtime_jars {
67+
label = "Runtime Jars";
68+
runtime_main [fillcolor=grey label="runtime-main"];
69+
runtime_shared_jetty12 [fillcolor=orange label="runtime-shared-jetty12"];
70+
runtime_shared_jetty12_ee10 [fillcolor=orange label="runtime-shared-jetty12-ee10"];
71+
runtime_impl_jetty12 [fillcolor=orange label="runtime-impl-jetty12"];
72+
runtime_shared_jetty121_ee8 [fillcolor=yellow label="runtime-shared-jetty121-ee8"];
73+
runtime_shared_jetty121_ee11 [fillcolor=yellow label="runtime-shared-jetty121-ee11"];
74+
runtime_impl_jetty121 [fillcolor=yellow label="runtime-impl-jetty121"];
5075
}
5176

52-
runtime_shared -> {runtime_shared,jetty9}
5377
runtime_shared_jetty12 -> {runtime_shared,jetty12}
78+
runtime_shared_jetty12_ee10 -> {runtime_shared,jetty12}
79+
runtime_shared_jetty121_ee8 -> {runtime_shared,jetty121}
80+
runtime_shared_jetty121_ee11 -> {runtime_shared,jetty121}
5481
appengine_apis -> {protos, runtime_shared}
5582
appengine_apis_dev -> {appengine_apis,protos,appengine_utils, shared_sdk, appengine_resources}
5683
appengine_api_1_0_sdk -> {appengine_apis}
5784
appengine_api_stubs -> {appengine_apis_dev, shared_sdk}
5885
shared_sdk -> {appengine_api_1_0_sdk ,sessiondata}
86+
shared_sdk_jetty12 -> {shared_sdk, jetty12}
87+
shared_sdk_jetty121 -> {shared_sdk, jetty121}
88+
appengine_jsr107 -> {appengine_api_1_0_sdk}
89+
local_runtime_shared_jetty12 -> {appengine_api_stubs}
5990
appengine_api_legacy -> {appengine_api_1_0_sdk}
6091
appengine_testing -> {appengine_apis,appengine_apis_dev}
6192
appengine_local_runtime_shared -> {appengine_apis_dev,runtime_shared}
6293
appengine_remoteapi -> {appengine_apis}
6394
appengine_tools_sdk -> {appengine_apis_dev, appengine_remoteapi,appengine_utils}
6495
runtime_main -> {runtime_util }
6596
runtime_impl -> {appengine_utils,protos,appengine_api_1_0_sdk, runtime_util}
66-
runtime_impl_jetty9 -> {runtime_impl,appengine_utils,protos,appengine_api_1_0_sdk, runtime_util,jetty9}
6797
runtime_impl_jetty12 -> {runtime_impl,appengine_utils,protos,appengine_api_1_0_sdk, runtime_util,jetty12}
98+
runtime_impl_jetty121 -> {runtime_impl,appengine_utils,protos,appengine_api_1_0_sdk, runtime_util,jetty121}
6899
appengine_local_runtime -> {appengine_remoteapi,appengine_apis_dev,runtime_shared,appengine_tools_sdk,shared_sdk,appengine_utils}
69-
appengine_local_runtime_jetty9 -> {appengine_local_runtime,jetty9}
70100
appengine_local_runtime_jetty12 -> {appengine_local_runtime,jetty12}
101+
appengine_local_runtime_jetty121 -> {appengine_local_runtime,jetty121}
102+
quickstartgenerator_jetty121_ee8 -> {jetty121}
103+
quickstartgenerator_jetty121_ee11 -> {jetty121}
71104
runtime_util -> {}
105+
106+
{
107+
rank=sink;
108+
Legend [shape=none, margin=0, label=<
109+
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4">
110+
<TR>
111+
<TD COLSPAN="2" ALIGN="LEFT"><B>Legend</B></TD>
112+
</TR>
113+
<TR>
114+
<TD ALIGN="LEFT">User Visible</TD>
115+
<TD BGCOLOR="green"></TD>
116+
</TR>
117+
<TR>
118+
<TD ALIGN="LEFT">Jetty 12</TD>
119+
<TD BGCOLOR="orange"></TD>
120+
</TR>
121+
<TR>
122+
<TD ALIGN="LEFT">Jetty 12.1</TD>
123+
<TD BGCOLOR="yellow"></TD>
124+
</TR>
125+
<TR>
126+
<TD ALIGN="LEFT">Utility</TD>
127+
<TD BGCOLOR="grey"></TD>
128+
</TR>
129+
</TABLE>
130+
>];
131+
132+
Modules [shape=none, margin=0, label=<
133+
<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4">
134+
<TR><TD COLSPAN="2" ALIGN="LEFT"><B>Modules</B></TD></TR>
135+
<TR><TD ALIGN="LEFT">appengine-api-1.0-sdk</TD><TD ALIGN="LEFT">API for Google App Engine standard environment with some of the dependencies shaded (repackaged)</TD></TR>
136+
<TR><TD ALIGN="LEFT">appengine-api-legacy</TD><TD ALIGN="LEFT">Legacy appengine API's that have been removed from appengine-api-sdk-1.0</TD></TR>
137+
<TR><TD ALIGN="LEFT">appengine-api-stubs</TD><TD ALIGN="LEFT">SDK for dev_appserver (local development) with some of the dependencies shaded (repackaged)</TD></TR>
138+
<TR><TD ALIGN="LEFT">appengine-apis</TD><TD ALIGN="LEFT">API for Google App Engine standard environment</TD></TR>
139+
<TR><TD ALIGN="LEFT">appengine-apis-dev</TD><TD ALIGN="LEFT">SDK for dev_appserver (local development)</TD></TR>
140+
<TR><TD ALIGN="LEFT">appengine-jsr107</TD><TD ALIGN="LEFT">App Engine JSR-107 (JCache) integration.</TD></TR>
141+
<TR><TD ALIGN="LEFT">appengine-local-runtime-shared-jetty12</TD><TD ALIGN="LEFT">App Engine local runtime shared components for Jetty 12.</TD></TR>
142+
<TR><TD ALIGN="LEFT">appengine-remote-api</TD><TD ALIGN="LEFT">App Engine remote API.</TD></TR>
143+
<TR><TD ALIGN="LEFT">appengine-resources</TD><TD ALIGN="LEFT">App Engine resources.</TD></TR>
144+
<TR><TD ALIGN="LEFT">appengine-testing</TD><TD ALIGN="LEFT">Testing support for Google App Engine standard environment application code</TD></TR>
145+
<TR><TD ALIGN="LEFT">appengine-utils</TD><TD ALIGN="LEFT">App Engine utilities.</TD></TR>
146+
<TR><TD ALIGN="LEFT">protos</TD><TD ALIGN="LEFT">Protocol buffers.</TD></TR>
147+
<TR><TD ALIGN="LEFT">quickstartgenerator-jetty121-ee11</TD><TD ALIGN="LEFT">Quickstart generator for Jetty 12.1 EE11.</TD></TR>
148+
<TR><TD ALIGN="LEFT">quickstartgenerator-jetty121-ee8</TD><TD ALIGN="LEFT">Quickstart generator for Jetty 12.1 EE8.</TD></TR>
149+
<TR><TD ALIGN="LEFT">runtime-impl</TD><TD ALIGN="LEFT">App Engine runtime implementation.</TD></TR>
150+
<TR><TD ALIGN="LEFT">runtime-impl-jetty12</TD><TD ALIGN="LEFT">App Engine runtime implementation for Jetty 12.</TD></TR>
151+
<TR><TD ALIGN="LEFT">runtime-impl-jetty121</TD><TD ALIGN="LEFT">App Engine runtime implementation for Jetty 12.1.</TD></TR>
152+
<TR><TD ALIGN="LEFT">runtime-main</TD><TD ALIGN="LEFT">App Engine runtime main.</TD></TR>
153+
<TR><TD ALIGN="LEFT">runtime-shared</TD><TD ALIGN="LEFT">App Engine runtime shared components.</TD></TR>
154+
<TR><TD ALIGN="LEFT">runtime-shared-jetty12</TD><TD ALIGN="LEFT">App Engine runtime shared components for Jetty 12 EE8.</TD></TR>
155+
<TR><TD ALIGN="LEFT">runtime-shared-jetty12-ee10</TD><TD ALIGN="LEFT">App Engine runtime shared components for Jetty 12 and EE10.</TD></TR>
156+
<TR><TD ALIGN="LEFT">runtime-shared-jetty121-ee11</TD><TD ALIGN="LEFT">App Engine runtime shared components for Jetty 121 EE11.</TD></TR>
157+
<TR><TD ALIGN="LEFT">runtime-shared-jetty121-ee8</TD><TD ALIGN="LEFT">App Engine runtime shared components for Jetty 12.1 EE8.</TD></TR>
158+
<TR><TD ALIGN="LEFT">runtime-util</TD><TD ALIGN="LEFT">App Engine runtime utilities.</TD></TR>
159+
<TR><TD ALIGN="LEFT">sessiondata</TD><TD ALIGN="LEFT">App Engine session data.</TD></TR>
160+
<TR><TD ALIGN="LEFT">shared-sdk</TD><TD ALIGN="LEFT">Shared SDK.</TD></TR>
161+
<TR><TD ALIGN="LEFT">shared-sdk-jetty12</TD><TD ALIGN="LEFT">Shared SDK for Jetty 12.</TD></TR>
162+
<TR><TD ALIGN="LEFT">shared-sdk-jetty121</TD><TD ALIGN="LEFT">Shared SDK for Jetty 12.1.</TD></TR>
163+
</TABLE>
164+
>];
165+
}
166+
72167
}
73168

e2etests/devappservertests/src/test/java/com/google/appengine/tools/development/DevAppServerTestBase.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ public static List<Object[]> version() {
6161
List<Object[]> allVersions =
6262
Arrays.asList(
6363
new Object[][] {
64-
{"java17", "9.4", "EE6"},
6564
{"java17", "12.0", "EE8"},
6665
{"java17", "12.0", "EE10"},
6766
{"java17", "12.1", "EE11"},

e2etests/devappservertests/src/test/java/com/google/appengine/tools/development/JaxRsTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,6 @@ public static List<Object[]> version() {
3333
// Only EE8 app.
3434
return Arrays.asList(
3535
new Object[][] {
36-
{"java17", "9.4", "EE6"},
37-
{"java17", "12.0", "EE8"},
3836
{"java21", "12.0", "EE8"},
3937
{"java25", "12.1", "EE8"},
4038

shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineAuthentication.java renamed to google3/third_party/java_src/appengine_standard/shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineAuthentication.java

File renamed without changes.

shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineNullSessionDataStore.java renamed to google3/third_party/java_src/appengine_standard/shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineNullSessionDataStore.java

File renamed without changes.

shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineSession.java renamed to google3/third_party/java_src/appengine_standard/shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineSession.java

File renamed without changes.

shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineSessionData.java renamed to google3/third_party/java_src/appengine_standard/shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineSessionData.java

File renamed without changes.

0 commit comments

Comments
 (0)