diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 5922b5a..b09766f 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2021, 2023 Contributors to the Eclipse Foundation
+# Copyright (c) 2021, 2026 Contributors to the Eclipse Foundation
 #
 # This program and the accompanying materials are made available under the
 # terms of the Eclipse Public License v. 2.0 which is available at
@@ -27,7 +27,7 @@
 
     strategy:
       matrix:
-        java_version: [ 11, 17, 21 ]
+        java_version: [ 17, 21 ]
 
     steps:
     - name: Checkout for build
diff --git a/README.md b/README.md
index 586a9ff..5b5835b 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[//]: # " Copyright (c) 2018, 2021 Oracle and/or its affiliates. All rights reserved. "
+[//]: # " Copyright (c) 2018, 2026 Oracle and/or its affiliates. All rights reserved. "
 [//]: # "  "
 [//]: # " This program and the accompanying materials are made available under the "
 [//]: # " terms of the Eclipse Public License v. 2.0, which is available at "
@@ -22,6 +22,10 @@
 
 ## Build
 
+Prerequisites:
+* JDK 17+
+* Maven 3.9.0+
+
 Use the following command:
 ```bash
 mvn -U -C clean install
diff --git a/api/pom.xml b/api/pom.xml
index 2f76e07..6f6496e 100644
--- a/api/pom.xml
+++ b/api/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2011, 2023 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2011, 2026 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -30,7 +30,7 @@
     <groupId>jakarta.json</groupId>
     <artifactId>jakarta.json-api</artifactId>
 
-    <version>2.1.4-SNAPSHOT</version>
+    <version>2.2.0-SNAPSHOT</version>
     <name>Jakarta JSON Processing API</name>
     <description>Jakarta JSON Processing defines a Java(R) based framework for parsing, generating, transforming, and querying JSON documents.</description>
     <url>https://github.com/eclipse-ee4j/jsonp</url>
@@ -87,7 +87,7 @@
 
         <non.final>false</non.final>
         <extension.name>jakarta.json</extension.name>
-        <spec.version>2.1</spec.version>
+        <spec.version>2.2</spec.version>
         <legal.doc.source>${project.basedir}/..</legal.doc.source>
         <vendor.name>Eclipse Foundation</vendor.name>
     </properties>
@@ -175,10 +175,10 @@
                         <configuration>
                             <rules>
                                 <requireJavaVersion>
-                                    <version>[11,)</version>
+                                    <version>[17,)</version>
                                 </requireJavaVersion>
                                 <requireMavenVersion>
-                                    <version>[3.6.0,)</version>
+                                    <version>[3.9.0,)</version>
                                 </requireMavenVersion>
                             </rules>
                         </configuration>
@@ -264,7 +264,7 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <configuration>
-                    <release>9</release>
+                    <release>17</release>
                     <createMissingPackageInfoClass>false</createMissingPackageInfoClass>
                     <compilerArgs>
                         <arg>-Xlint:all</arg>
@@ -272,20 +272,6 @@
                     </compilerArgs>
                     <showDeprecation>true</showDeprecation>
                 </configuration>
-                <executions>
-                    <execution>
-                        <id>base-compile</id>
-                        <goals>
-                            <goal>compile</goal>
-                        </goals>
-                        <configuration>
-                            <release>8</release>
-                            <excludes>
-                                <exclude>module-info.java</exclude>
-                            </excludes>
-                        </configuration>
-                    </execution>
-                </executions>
             </plugin>
             <plugin>
                 <groupId>org.glassfish.build</groupId>
diff --git a/api/src/main/java/jakarta/json/spi/JsonProvider.java b/api/src/main/java/jakarta/json/spi/JsonProvider.java
index 28fe280..b3df62b 100644
--- a/api/src/main/java/jakarta/json/spi/JsonProvider.java
+++ b/api/src/main/java/jakarta/json/spi/JsonProvider.java
@@ -23,8 +23,6 @@
 import java.lang.reflect.Method;
 import java.math.BigDecimal;
 import java.math.BigInteger;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map;
@@ -108,9 +106,7 @@
      */
     public static JsonProvider provider() {
         LOG.log(Level.FINE, "Checking system property {0}", JSONP_PROVIDER_FACTORY);
-        final String factoryClassName = System.getSecurityManager() != null
-                ? AccessController.doPrivileged((PrivilegedAction<String>) () -> System.getProperty(JSONP_PROVIDER_FACTORY))
-                : System.getProperty(JSONP_PROVIDER_FACTORY);
+        final String factoryClassName = System.getProperty(JSONP_PROVIDER_FACTORY);
         if (factoryClassName != null) {
             JsonProvider provider = newInstance(factoryClassName);
             LOG.log(Level.FINE, "System property used; returning object [{0}]",
@@ -152,7 +148,6 @@
      */
     private static JsonProvider newInstance(String className) {
         try {
-            checkPackageAccess(className);
             @SuppressWarnings({"unchecked"})
             Class<JsonProvider> clazz = (Class<JsonProvider>) Class.forName(className);
             return clazz.getConstructor().newInstance();
@@ -167,20 +162,6 @@
     }
 
     /**
-     * Make sure that the current thread has an access to the package of the given name.
-     * @param className The class name to check.
-     */
-    private static void checkPackageAccess(String className) {
-        SecurityManager s = System.getSecurityManager();
-        if (s != null) {
-            int i = className.lastIndexOf('.');
-            if (i != -1) {
-                s.checkPackageAccess(className.substring(0, i));
-            }
-        }
-    }
-
-    /**
      * Creates a JSON parser from a character stream.
      *
      * @param reader i/o reader from which JSON is to be read
diff --git a/spec/README.md b/spec/README.md
index e25307a..e4d3647 100644
--- a/spec/README.md
+++ b/spec/README.md
@@ -8,8 +8,8 @@
 
 Prerequisites:
 
-* JDK8+
-* Maven 3.0.3+
+* JDK 17+
+* Maven 3.9.0+
 
 Run the full build with DRAFT status:
 
diff --git a/spec/pom.xml b/spec/pom.xml
index be9a379..6b6c3b7 100644
--- a/spec/pom.xml
+++ b/spec/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2017, 2020 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2017, 2026 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -27,7 +27,7 @@
     <groupId>jakarta.json</groupId>
     <artifactId>jakarta.json-spec</artifactId>
     <packaging>pom</packaging>
-    <version>2.0-SNAPSHOT</version>
+    <version>2.2-SNAPSHOT</version>
     <name>Jakarta JSON Processing Specification</name>
 
     <properties>
@@ -38,6 +38,7 @@
         <!-- status: DRAFT, BETA, etc., or blank for final -->
         <status>DRAFT</status>
         <maven.build.timestamp.format>MMMM dd, yyyy</maven.build.timestamp.format>
+        <maven.enforcer.plugin.version>3.6.2</maven.enforcer.plugin.version>
         <revisiondate>${maven.build.timestamp}</revisiondate>
     </properties>
 
@@ -60,7 +61,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-enforcer-plugin</artifactId>
-                <version>1.4.1</version>
+                <version>${maven.enforcer.plugin.version}</version>
                 <executions>
                     <execution>
                         <id>enforce-versions</id>
@@ -70,9 +71,11 @@
                         <configuration>
                             <rules>
                                 <requireJavaVersion>
-                                    <version>[1.8.0,)</version>
-                                    <message>You need JDK8 or higher</message>
+                                    <version>[17,)</version>
                                 </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.9.0,)</version>
+                                </requireMavenVersion>
                             </rules>
                         </configuration>
                     </execution>
@@ -142,12 +145,12 @@
                     </execution>
                 </executions>
                 <configuration>
-                    <sourceDocumentName>jsonp-spec.adoc</sourceDocumentName>
-                    <sourceHighlighter>coderay</sourceHighlighter>
+                    <sourceDocumentName>jsonp-spec.adoc</sourceDocumentName>             
                     <attributes>
                         <revnumber>${project.version}</revnumber>
                         <revremark>${status}</revremark>
                         <revdate>${revisiondate}</revdate>
+                        <source-highlighter>coderay</source-highlighter>
                     </attributes>
                 </configuration>
 
diff --git a/tck/pom.xml b/tck/pom.xml
index e289976..747d1a7 100644
--- a/tck/pom.xml
+++ b/tck/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2020, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2020, 2026 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -28,7 +28,7 @@
 
     <groupId>jakarta.json</groupId>
     <artifactId>jakarta.json-tck</artifactId>
-    <version>2.1.0-SNAPSHOT</version>
+    <version>2.2.0-SNAPSHOT</version>
     <packaging>pom</packaging>
     <name>Jakarta JSON Processing TCK</name>
     <description>Jakarta JSON Processing TCK</description>
@@ -57,11 +57,11 @@
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <maven.compiler.target>11</maven.compiler.target>
-        <maven.compiler.source>11</maven.compiler.source>
+        <maven.compiler.target>17</maven.compiler.target>
+        <maven.compiler.source>17</maven.compiler.source>
         <junit.jupiter.version>5.7.2</junit.jupiter.version>
 
-        <jakarta.json-api.version>2.1.0</jakarta.json-api.version>
+        <jakarta.json-api.version>2.2.0</jakarta.json-api.version>
     </properties>
 
     <dependencyManagement>
@@ -139,7 +139,36 @@
                     <artifactId>maven-javadoc-plugin</artifactId>
                     <version>3.3.1</version>
                 </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <version>3.4.0</version>
+                </plugin>
             </plugins>
         </pluginManagement>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>[17,)</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.9.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
     </build>
 </project>
diff --git a/tck/tck-common/pom.xml b/tck/tck-common/pom.xml
index 44b6b04..c1bf844 100644
--- a/tck/tck-common/pom.xml
+++ b/tck/tck-common/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -22,7 +22,7 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
diff --git a/tck/tck-dist-eftl/pom.xml b/tck/tck-dist-eftl/pom.xml
index 1ad3c79..6f1b55c 100644
--- a/tck/tck-dist-eftl/pom.xml
+++ b/tck/tck-dist-eftl/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -23,7 +23,7 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
diff --git a/tck/tck-dist-eftl/src/main/bin/pom.xml b/tck/tck-dist-eftl/src/main/bin/pom.xml
index 7cf50b2..c4460fb 100644
--- a/tck/tck-dist-eftl/src/main/bin/pom.xml
+++ b/tck/tck-dist-eftl/src/main/bin/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2022, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -32,7 +32,7 @@
         <!-- Vendor Implementation (VI) -->
         <jsonp-api.groupId>jakarta.json</jsonp-api.groupId>
         <jsonp-api.artifactId>jakarta.json-api</jsonp-api.artifactId>
-        <jsonp-api.version>2.1.0</jsonp-api.version>
+        <jsonp-api.version>2.2.0</jsonp-api.version>
         <!-- Compatible Implementation (CI) -->
         <jsonp-impl.groupId>org.eclipse.parsson</jsonp-impl.groupId>
         <jsonp-impl.artifactId>parsson</jsonp-impl.artifactId>
@@ -43,7 +43,7 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <jimage.dir>\${project.build.directory}/jdk-bundle</jimage.dir>
         <!-- !!! DO NOT EDIT !!! -->
-        <jakarta.json-api.version>2.1.0</jakarta.json-api.version>
+        <jakarta.json-api.version>2.2.0</jakarta.json-api.version>
         <impl.alltests>true</impl.alltests>
     </properties>
     <dependencyManagement>
diff --git a/tck/tck-dist-eftl/src/main/scripts/artifact-install.sh b/tck/tck-dist-eftl/src/main/scripts/artifact-install.sh
index 38c7327..bd5fe5c 100755
--- a/tck/tck-dist-eftl/src/main/scripts/artifact-install.sh
+++ b/tck/tck-dist-eftl/src/main/scripts/artifact-install.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 #
-# Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 #
 # This program and the accompanying materials are made available under the
 # terms of the Eclipse Public License v. 2.0, which is available at
@@ -20,7 +20,7 @@
 if [[ $1 =~ ^[0-9]+\.[0-9]+\.[0-9]+.*$ ]]; then
   VERSION="$1"
 else
-  VERSION="2.1.0-SNAPSHOT"
+  VERSION="2.2.0-SNAPSHOT"
 fi
 
 # Parent pom
diff --git a/tck/tck-dist-epl/pom.xml b/tck/tck-dist-epl/pom.xml
index 93596ba..a33a62f 100644
--- a/tck/tck-dist-epl/pom.xml
+++ b/tck/tck-dist-epl/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2022, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -23,7 +23,7 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
diff --git a/tck/tck-docs/JSONP2.1-ReleaseNotes.html b/tck/tck-docs/JSONP2.1-ReleaseNotes.html
index 1db1150..55a08a4 100644
--- a/tck/tck-docs/JSONP2.1-ReleaseNotes.html
+++ b/tck/tck-docs/JSONP2.1-ReleaseNotes.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <!--
 
-    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -39,12 +39,12 @@
 </style></head>
   <body>
     <div align="center">
-      <h1>Jakarta EE JSON Processing Technology Compatibility Kit, Version 2.1</h1>
+      <h1>Jakarta EE JSON Processing Technology Compatibility Kit, Version 2.2</h1>
       <h2> <em class="emphasize">Release Notes, February 2022</em></h2>
       <h2><em class="emphasize"></em></h2>
     </div>
     <h2><a name="kit_contents">Kit Contents</a></h2>
-    <p>The Jakarta EE JSON Processing, Version 2.1 Technology Compatibility Kit
+    <p>The Jakarta EE JSON Processing, Version 2.2 Technology Compatibility Kit
       (TCK) includes the following items:</p>
     <ul>
       <li>
@@ -54,7 +54,7 @@
           <li>
             <p>A <strong>signature test</strong> that checks that all of the
             public APIs are supported in the Jakarta EE JSON Processing Version
-            2.1 implementation that is being tested</p>
+            2.2 implementation that is being tested</p>
           </li>
           <li>
             <p><strong>API tests</strong> for all of the public APIs under the <code>jakarta.json</code>,
@@ -90,21 +90,21 @@
       <li>Alpine Linux v3.12</li>
     </ul>
     <p>The Jakarta EE JSON Processing TCK tests have been run against the
-      following Jakarta EE JSON Processing 2.1 Compatible Implementations:</p>
+      following Jakarta EE JSON Processing 2.2 Compatible Implementations:</p>
     <ul>
-      <li>Eclipse Parsson 1.1.0</li>
+      <li></li>
     </ul>
     <hr>
     <h2><a name="install_setup_run">Installing, Setting Up, and Running the
         JSON-P TCK</a></h2>
-    <p>Refer to the <cite><a href="html-usersguide/title.html">JSON-P TCK 2.1
+    <p>Refer to the <cite><a href="html-usersguide/title.html">JSON-P TCK 2.2
           User's Guide</a></cite> (or <a href="./pdf-usersguide/Jakarta-JSON-Processing-TCK-Users-Guide.pdf"
 
-        title="Jakarta EE JSON Processing 2.1 TCK User's Guide (PDF)">PDF</a>)
+        title="Jakarta EE JSON Processing 2.2 TCK User's Guide (PDF)">PDF</a>)
       for complete instructions on installing, setting up, and running the
       JSON-P TCK. </p>
     <hr>
-    <p><cite><small>Copyright &copy; 2013, 2022 Oracle and/or its affiliates. All
+    <p><cite><small>Copyright &copy; 2013, 2025 Oracle and/or its affiliates. All
           rights reserved.</small></cite></p>
   </body>
 </html>
diff --git a/tck/tck-docs/index.html b/tck/tck-docs/index.html
index b1e06be..dfc5c8a 100644
--- a/tck/tck-docs/index.html
+++ b/tck/tck-docs/index.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <!--
 
-    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -36,35 +36,35 @@
   </head>
   <body vlink="#840084" text="#000000" link="#0000ff" bgcolor="#ffffdd" alink="#0000ff">
     <div align="Center">
-      <h1>Welcome to the Jakarta EE JSON Processing TCK, Version 2.1</h1>
+      <h1>Welcome to the Jakarta EE JSON Processing TCK, Version 2.2</h1>
       <h2>
         <span class="emphasize">Your Starting Point</span></h2>
     </div>
     <hr>
-    <h2>Guide to Jakarta EE JSON Processing TCK 2.1 Documentation</h2>
-    <p>The Jakarta EE JSON Processing TCK 2.1 documentation includes the
+    <h2>Guide to Jakarta EE JSON Processing TCK 2.2 Documentation</h2>
+    <p>The Jakarta EE JSON Processing TCK 2.2 documentation includes the
       following:</p>
     <ul>
-      <li>The <em><a href="JSONP2.1-ReleaseNotes.html">Jakarta EE JSON
+      <li>The <em><a href="JSONP2.2-ReleaseNotes.html">Jakarta EE JSON
             Processing TCK Release Notes</a></em> provides the information on
         the test harness, the test suite and the platforms tested.
         <ul>
           <li>If needed, updated Release Notes may be updated at the Jakarta EE
-            Specification web site for Jakarta EE JSON Processing: <a href="https://jakarta.ee/specifications/jsonp/2.1/">https://jakarta.ee/specifications/jsonp/2.1/</a></li>
+            Specification web site for Jakarta EE JSON Processing: <a href="https://jakarta.ee/specifications/jsonp/2.2/">https://jakarta.ee/specifications/jsonp/2.2/</a></li>
         </ul>
       </li>
       <li>The <em><a href="html-usersguide/toc.html">Jakarta EE JSON Processing
-            Technology Compatibility Kit, Version 2.1 User's Guide</a></em> (or
+            Technology Compatibility Kit, Version 2.2 User's Guide</a></em> (or
         <a href="pdf-usersguide/Jakarta-JSON-Processing-TCK-Users-Guide.pdf"
 
-          title="Jakarta EE JSON Processing TCK 2.1 User's Guide (PDF)">PDF</a>)
+          title="Jakarta EE JSON Processing TCK 2.2 User's Guide (PDF)">PDF</a>)
         provides the information that you need to install, set up, and run the
-        Jakarta EE JSON Processing TCK, Version 2.1. In addition, the guide
+        Jakarta EE JSON Processing TCK, Version 2.2. In addition, the guide
         provides the rules you must comply with to pass the Jakarta EE JSON
         Processing TCK.</li>
-      <li>The <a href="assertions/JSONP2.1JavadocAssertions.html">Javadoc
+      <li>The <a href="assertions/JSONP2.2JavadocAssertions.html">Javadoc
           Assertion List</a> lists all the javadoc assertions that are tested by
-        the Jakarta EE JSON Processing 2.1 TCK.</li>
+        the Jakarta EE JSON Processing 2.2 TCK.</li>
     </ul>
     <hr>
     <p><cite><small></small></cite></p>
diff --git a/tck/tck-docs/userguide/README.md b/tck/tck-docs/userguide/README.md
index 05bacb8..2f890b6 100644
--- a/tck/tck-docs/userguide/README.md
+++ b/tck/tck-docs/userguide/README.md
@@ -8,8 +8,8 @@
 
 ## Pre requisites
 
-- Maven
-- JDK11+
+- Maven 3.9.0+
+- JDK 17+
 
 Deploying to Github will require password less authentication.
 
diff --git a/tck/tck-docs/userguide/pom.xml b/tck/tck-docs/userguide/pom.xml
index 65f9a25..b3c8fcd 100644
--- a/tck/tck-docs/userguide/pom.xml
+++ b/tck/tck-docs/userguide/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2017, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2017, 2026 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -22,14 +22,14 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../../pom.xml</relativePath>
     </parent>
     <groupId>jakarta.json</groupId>
     <artifactId>jakarta.json-tck-ug</artifactId>
     <packaging>pom</packaging>
-    <version>2.1.0-SNAPSHOT</version>
-    <name>Eclipse Foundation Technology Compatibility Kit User's Guide for Jakarta JSON Processing for Jakarta EE, Release 2.1</name>
+    <version>2.2.0-SNAPSHOT</version>
+    <name>Eclipse Foundation Technology Compatibility Kit User's Guide for Jakarta JSON Processing for Jakarta EE, Release 2.2</name>
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -81,9 +81,11 @@
                         <configuration>
                             <rules>
                                 <requireJavaVersion>
-                                    <version>[11,)</version>
-                                    <message>You need JDK11 or newer</message>
+                                    <version>[17,)</version>
                                 </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.9.0,)</version>
+                                </requireMavenVersion>
                             </rules>
                         </configuration>
                     </execution>
diff --git a/tck/tck-docs/userguide/src/main/jbake/assets/_config.yml b/tck/tck-docs/userguide/src/main/jbake/assets/_config.yml
index 3c06c69..12f08e3 100644
--- a/tck/tck-docs/userguide/src/main/jbake/assets/_config.yml
+++ b/tck/tck-docs/userguide/src/main/jbake/assets/_config.yml
@@ -1,12 +1,12 @@
 remote_theme: jakartaee/jekyll-theme-jakarta-ee
 
 title: [tck_jsonp_v2_1]
-description: [Oracle Technology Compatibility Kit User's Guide for Java API for JSON Processing 2.1 for Technology Licensees, Release 2.1]
+description: [Oracle Technology Compatibility Kit User's Guide for Java API for JSON Processing 2.2 for Technology Licensees, Release 2.2]
 
 # sidebar links url
 links:
   source: https://github.com/eclipse-ee4j/jsonp
-  download: https://github.com/eclipse-ee4j/jsonp/releases/tag/2.1.0-RELEASE
+  download: https://github.com/eclipse-ee4j/jsonp/releases/tag/2.2.0-RELEASE
   #mailinglist: https://javaee.groups.io/g/tck_jsonp_v1_1
   #javadocs:
   docs: https://eclipse-ee4j.github.io/jsonp
diff --git a/tck/tck-docs/userguide/src/main/jbake/content/attributes.conf b/tck/tck-docs/userguide/src/main/jbake/content/attributes.conf
index 2d510e6..d7f1cef 100644
--- a/tck/tck-docs/userguide/src/main/jbake/content/attributes.conf
+++ b/tck/tck-docs/userguide/src/main/jbake/content/attributes.conf
@@ -2,11 +2,11 @@
 :TechnologyShortName: JSON Processing
 :LegacyAcronym: JSONP
 :ReleaseDate: February 2022
-:CopyrightDates: 2017, 2022
-:TechnologyVersion: 2.1
-:TechnologyRI: Eclipse Parsson 1.1.0
+:CopyrightDates: 2017, 2025
+:TechnologyVersion: 2.2
+:TechnologyRI: Eclipse Parsson version TBD
 :TechnologyRIURL: https://projects.eclipse.org/projects/ee4j.parsson
-:SpecificationURL: https://jakarta.ee/specifications/jsonp/2.1/
+:SpecificationURL: https://jakarta.ee/specifications/jsonp/2.2/
 :TCKInquiryList: mailto:jsonp-dev@eclipse.org[jsonp-dev@eclipse.org]
 :SpecificationInquiryList: mailto:jsonp-dev@eclipse.org[jsonp-dev@eclipse.org]
 :techID: JSONP
@@ -22,12 +22,12 @@
 // for the technology.  Used in config.inc.
 :TechnologyTCKHomeEnv: JSONPTCK_HOME
 // Java SE version required.
-:SEversion: 11+
-:JakartaEEVersion: 10.0
+:SEversion: 21+
+:JakartaEEVersion: 12.0
 :MavenVersion: 3.6.3+
 :JunitVersion: 5.7.2+
 :excludeListFileName: tck-docs/TCK-Exclude-List.txt
-:TCKPackageName: jakarta-jsonp-tck-2.1.0.zip
+:TCKPackageName: jakarta-jsonp-tck-2.2.0.zip
 // Directory names used in examples in using.adoc.
 :sigTestExample: ee/jakarta/tck/jsonp/signaturetest/jsonp/**
 :singleTestExample: ee/jakarta/tck/jsonp/api/jsoncoding/ClientTests
diff --git a/tck/tck-docs/userguide/src/main/jbake/content/config.adoc b/tck/tck-docs/userguide/src/main/jbake/content/config.adoc
index f9241b7..f72fa1f 100644
--- a/tck/tck-docs/userguide/src/main/jbake/content/config.adoc
+++ b/tck/tck-docs/userguide/src/main/jbake/content/config.adoc
@@ -113,7 +113,7 @@
             <dependency>
                 <groupId>jakarta.json</groupId>
                 <artifactId>jakarta.json-tck</artifactId>
-                <version>2.1.0</version>
+                <version>2.2.0</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
@@ -130,7 +130,7 @@
         <dependency>
             <groupId>jakarta.json</groupId>
             <artifactId>jakarta.json-api</artifactId>
-            <version>2.1.0</version>
+            <version>2.2.0</version>
             <scope>test</scope>
         </dependency>
         <dependency>
@@ -218,7 +218,7 @@
             <dependency>
                 <groupId>jakarta.json</groupId>
                 <artifactId>jakarta.json-tck</artifactId>
-                <version>2.1.0</version>
+                <version>2.2.0</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
diff --git a/tck/tck-docs/userguide/src/main/jbake/content/using.adoc b/tck/tck-docs/userguide/src/main/jbake/content/using.adoc
index cda1ac6..2b2b530 100644
--- a/tck/tck-docs/userguide/src/main/jbake/content/using.adoc
+++ b/tck/tck-docs/userguide/src/main/jbake/content/using.adoc
@@ -174,7 +174,7 @@
 [source,subs="attributes"]
 ----
 cd ${TechnologyTCKHomeEnv}/bin
-mvn verify -Djsonp-api.groupId=jakarta.json -Djsonp-api.artifactId=jakarta.json-api -Djsonp-api.version=2.1.0
+mvn verify -Djsonp-api.groupId=jakarta.json -Djsonp-api.artifactId=jakarta.json-api -Djsonp-api.version=2.2.0
 ----
 
 [[GBFVK]][[test-reports]]
diff --git a/tck/tck-tests-pluggability/pom.xml b/tck/tck-tests-pluggability/pom.xml
index 890c5e3..f771d34 100644
--- a/tck/tck-tests-pluggability/pom.xml
+++ b/tck/tck-tests-pluggability/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -22,7 +22,7 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
diff --git a/tck/tck-tests/pom.xml b/tck/tck-tests/pom.xml
index ace6600..17aef8d 100644
--- a/tck/tck-tests/pom.xml
+++ b/tck/tck-tests/pom.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
 
-    Copyright (c) 2020, 2022 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 2020, 2025 Oracle and/or its affiliates. All rights reserved.
 
     This program and the accompanying materials are made available under the
     terms of the Eclipse Public License v. 2.0, which is available at
@@ -22,7 +22,7 @@
     <parent>
         <groupId>jakarta.json</groupId>
         <artifactId>jakarta.json-tck</artifactId>
-        <version>2.1.0-SNAPSHOT</version>
+        <version>2.2.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
diff --git a/tck/tck-tests/src/main/resources/ee/jakarta/tck/jsonp/signaturetest/sig-test.map b/tck/tck-tests/src/main/resources/ee/jakarta/tck/jsonp/signaturetest/sig-test.map
index 5269e01..123c193 100644
--- a/tck/tck-tests/src/main/resources/ee/jakarta/tck/jsonp/signaturetest/sig-test.map
+++ b/tck/tck-tests/src/main/resources/ee/jakarta/tck/jsonp/signaturetest/sig-test.map
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
 #
 # This program and the accompanying materials are made available under the
 # terms of the Eclipse Public License v. 2.0, which is available at
@@ -47,4 +47,4 @@
 # be referenced when using JDK 8.  
 #
 ###############################################################
-jakarta.json=2.1.0
+jakarta.json=2.2.0
