import grails.events.*
-import javax.annotation.*
+import jakarta.annotation.*
class MyClass implements Events {
diff --git a/grails-docs/src/test/resources/docs/guide/hibernate.html b/grails-docs/src/test/resources/docs/guide/hibernate.html
index 311533468f4..2d133fabff2 100644
--- a/grails-docs/src/test/resources/docs/guide/hibernate.html
+++ b/grails-docs/src/test/resources/docs/guide/hibernate.html
@@ -236,9 +236,9 @@ 20.2 Mapping with Hibernate Annotations
package com.books;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
@Entity
public class Book {
diff --git a/grails-docs/src/test/resources/docs/guide/pages/consuming.html b/grails-docs/src/test/resources/docs/guide/pages/consuming.html
index f05ef2bed47..ec65b3688bd 100644
--- a/grails-docs/src/test/resources/docs/guide/pages/consuming.html
+++ b/grails-docs/src/test/resources/docs/guide/pages/consuming.html
@@ -167,7 +167,7 @@ 11.3.1 Consuming Events
import grails.events.*
-import javax.annotation.*
+import jakarta.annotation.*
class MyClass implements Events {
diff --git a/grails-docs/src/test/resources/docs/guide/pages/events.html b/grails-docs/src/test/resources/docs/guide/pages/events.html
index 48811c227fe..b7325a38dae 100644
--- a/grails-docs/src/test/resources/docs/guide/pages/events.html
+++ b/grails-docs/src/test/resources/docs/guide/pages/events.html
@@ -221,7 +221,7 @@ 11.3.1 Consuming Events
import grails.events.*
-import javax.annotation.*
+import jakarta.annotation.*
class MyClass implements Events {
diff --git a/grails-docs/src/test/resources/docs/guide/pages/mappingWithHibernateAnnotations.html b/grails-docs/src/test/resources/docs/guide/pages/mappingWithHibernateAnnotations.html
index faa3f2b6c84..d211d7bfd41 100644
--- a/grails-docs/src/test/resources/docs/guide/pages/mappingWithHibernateAnnotations.html
+++ b/grails-docs/src/test/resources/docs/guide/pages/mappingWithHibernateAnnotations.html
@@ -152,9 +152,9 @@ 20.2 Mapping with Hibernate Annotations
package com.books;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
@Entity
public class Book {
diff --git a/grails-docs/src/test/resources/docs/guide/single.backup.html b/grails-docs/src/test/resources/docs/guide/single.backup.html
index 01403854597..f14e6c43f10 100644
--- a/grails-docs/src/test/resources/docs/guide/single.backup.html
+++ b/grails-docs/src/test/resources/docs/guide/single.backup.html
@@ -16642,7 +16642,7 @@ 11.3.1 Consuming Events
import grails.events.*
-import javax.annotation.*
+import jakarta.annotation.*
class MyClass implements Events {
@@ -24959,9 +24959,9 @@ 20.2 Mapping with Hibernate Annotations
package com.books;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
@Entity
public class Book {
diff --git a/grails-docs/src/test/resources/docs/guide/single.html b/grails-docs/src/test/resources/docs/guide/single.html
index 01403854597..f14e6c43f10 100644
--- a/grails-docs/src/test/resources/docs/guide/single.html
+++ b/grails-docs/src/test/resources/docs/guide/single.html
@@ -16642,7 +16642,7 @@ 11.3.1 Consuming Events
import grails.events.*
-import javax.annotation.*
+import jakarta.annotation.*
class MyClass implements Events {
@@ -24959,9 +24959,9 @@ 20.2 Mapping with Hibernate Annotations
package com.books;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
+import jakarta.persistence.Entity;
+import jakarta.persistence.GeneratedValue;
+import jakarta.persistence.Id;
@Entity
public class Book {
diff --git a/grails-plugin-controllers/src/main/groovy/org/grails/compiler/web/ControllerActionTransformer.java b/grails-plugin-controllers/src/main/groovy/org/grails/compiler/web/ControllerActionTransformer.java
index d6d8eb12b9e..959a53ecd0a 100644
--- a/grails-plugin-controllers/src/main/groovy/org/grails/compiler/web/ControllerActionTransformer.java
+++ b/grails-plugin-controllers/src/main/groovy/org/grails/compiler/web/ControllerActionTransformer.java
@@ -770,7 +770,7 @@ protected void initializeAndValidateCommandObjectParameter(final BlockStatement
boolean argumentIsValidateable = GrailsASTUtils.hasAnyAnnotations(
commandObjectNode,
grails.persistence.Entity.class,
- javax.persistence.Entity.class) ||
+ jakarta.persistence.Entity.class) ||
commandObjectNode.implementsInterface(ClassHelper.make(Validateable.class));
if (!argumentIsValidateable && commandObjectNode.isPrimaryClassNode()) {
diff --git a/grails-plugin-databinding/src/main/groovy/org/grails/databinding/converters/Jsr310ConvertersConfiguration.groovy b/grails-plugin-databinding/src/main/groovy/org/grails/databinding/converters/Jsr310ConvertersConfiguration.groovy
index fb3cd6ad0b1..4eef90c24e0 100644
--- a/grails-plugin-databinding/src/main/groovy/org/grails/databinding/converters/Jsr310ConvertersConfiguration.groovy
+++ b/grails-plugin-databinding/src/main/groovy/org/grails/databinding/converters/Jsr310ConvertersConfiguration.groovy
@@ -7,7 +7,7 @@ import org.grails.plugins.databinding.DataBindingConfigurationProperties
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
-import javax.inject.Inject
+import jakarta.inject.Inject
import java.time.*
import java.time.format.DateTimeFormatter
diff --git a/grails-plugin-domain-class/build.gradle b/grails-plugin-domain-class/build.gradle
index d4b0830adee..18dac8a384f 100644
--- a/grails-plugin-domain-class/build.gradle
+++ b/grails-plugin-domain-class/build.gradle
@@ -51,7 +51,7 @@ dependencies {
exclude group: 'commons-lang', module:'commons-lang'
exclude group: 'javassist', module:'javassist'
exclude group: 'org.javassist', module: 'javassist'
- exclude group: "javax.persistence", module:"persistence-api"
+ exclude group: "jakarta.persistence", module:"persistence-api"
exclude group: 'java-persistence', module:'persistence-api'
}
diff --git a/grails-plugin-rest/build.gradle b/grails-plugin-rest/build.gradle
index 8b996421fa9..8bc15a3934f 100644
--- a/grails-plugin-rest/build.gradle
+++ b/grails-plugin-rest/build.gradle
@@ -1,6 +1,6 @@
dependencies {
- api 'javax.xml.bind:jaxb-api:2.3.1'
+ api "jakarta.xml.bind:jakarta.xml.bind-api:$jakartaXmlBindVersion"
api project(":grails-web"),
project(":grails-plugin-controllers"),
diff --git a/grails-plugin-rest/src/main/groovy/grails/rest/render/hal/HalJsonRenderer.groovy b/grails-plugin-rest/src/main/groovy/grails/rest/render/hal/HalJsonRenderer.groovy
index 07885d5f50d..2ba04b47dbd 100644
--- a/grails-plugin-rest/src/main/groovy/grails/rest/render/hal/HalJsonRenderer.groovy
+++ b/grails-plugin-rest/src/main/groovy/grails/rest/render/hal/HalJsonRenderer.groovy
@@ -33,8 +33,8 @@ import org.springframework.beans.factory.annotation.Autowired
import org.springframework.core.convert.converter.Converter
import org.springframework.http.HttpMethod
-import javax.annotation.PostConstruct
-import javax.xml.bind.DatatypeConverter
+import jakarta.annotation.PostConstruct
+import jakarta.xml.bind.DatatypeConverter
/**
* Renders domain instances in HAL JSON format (see http://tools.ietf.org/html/draft-kelly-json-hal-05)
*
diff --git a/grails-plugin-rest/src/main/groovy/grails/rest/render/json/JsonRenderer.groovy b/grails-plugin-rest/src/main/groovy/grails/rest/render/json/JsonRenderer.groovy
index be9621e24ff..45112c20463 100644
--- a/grails-plugin-rest/src/main/groovy/grails/rest/render/json/JsonRenderer.groovy
+++ b/grails-plugin-rest/src/main/groovy/grails/rest/render/json/JsonRenderer.groovy
@@ -31,7 +31,7 @@ import grails.web.mime.MimeType
import org.grails.plugins.web.rest.render.json.DefaultJsonRenderer
import org.springframework.beans.factory.annotation.Autowired
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
/**
*
diff --git a/grails-plugin-rest/src/main/groovy/grails/rest/render/xml/XmlRenderer.groovy b/grails-plugin-rest/src/main/groovy/grails/rest/render/xml/XmlRenderer.groovy
index 020ee486ee4..ccdd4c287d4 100644
--- a/grails-plugin-rest/src/main/groovy/grails/rest/render/xml/XmlRenderer.groovy
+++ b/grails-plugin-rest/src/main/groovy/grails/rest/render/xml/XmlRenderer.groovy
@@ -30,7 +30,7 @@ import grails.web.mime.MimeType
import org.grails.plugins.web.rest.render.xml.DefaultXmlRenderer
import org.springframework.beans.factory.annotation.Autowired
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
/**
* An XML renderer that allows including / excluding properties
diff --git a/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/render/DefaultRendererRegistry.groovy b/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/render/DefaultRendererRegistry.groovy
index 5f9b234003a..36dba62d4b2 100644
--- a/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/render/DefaultRendererRegistry.groovy
+++ b/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/render/DefaultRendererRegistry.groovy
@@ -25,7 +25,7 @@ import groovy.transform.CompileStatic
import java.util.concurrent.ConcurrentHashMap
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
import grails.util.GrailsClassUtils
import grails.core.support.proxy.ProxyHandler
diff --git a/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/transform/ResourceTransform.groovy b/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/transform/ResourceTransform.groovy
index 310e610d7fb..23be4085200 100644
--- a/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/transform/ResourceTransform.groovy
+++ b/grails-plugin-rest/src/main/groovy/org/grails/plugins/web/rest/transform/ResourceTransform.groovy
@@ -34,7 +34,7 @@ import groovy.transform.CompileStatic
import java.lang.reflect.Modifier
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
import org.codehaus.groovy.ast.ASTNode
import org.codehaus.groovy.ast.AnnotationNode
diff --git a/grails-plugin-rest/src/test/groovy/org/grails/plugins/web/rest/render/hal/HalJsonRendererSpec.groovy b/grails-plugin-rest/src/test/groovy/org/grails/plugins/web/rest/render/hal/HalJsonRendererSpec.groovy
index 59532905666..e8957131c24 100644
--- a/grails-plugin-rest/src/test/groovy/org/grails/plugins/web/rest/render/hal/HalJsonRendererSpec.groovy
+++ b/grails-plugin-rest/src/test/groovy/org/grails/plugins/web/rest/render/hal/HalJsonRendererSpec.groovy
@@ -62,7 +62,7 @@ import spock.lang.Issue
import spock.lang.Shared
import spock.lang.Specification
-import javax.xml.bind.DatatypeConverter
+import jakarta.xml.bind.DatatypeConverter
/**
*/
diff --git a/grails-shell/src/main/groovy/org/grails/cli/compiler/autoconfigure/SpringBootCompilerAutoConfiguration.java b/grails-shell/src/main/groovy/org/grails/cli/compiler/autoconfigure/SpringBootCompilerAutoConfiguration.java
index a586078faed..b2e4a1ac4d0 100644
--- a/grails-shell/src/main/groovy/org/grails/cli/compiler/autoconfigure/SpringBootCompilerAutoConfiguration.java
+++ b/grails-shell/src/main/groovy/org/grails/cli/compiler/autoconfigure/SpringBootCompilerAutoConfiguration.java
@@ -45,7 +45,7 @@ public void applyDependencies(DependencyCustomizer dependencies) {
@Override
public void applyImports(ImportCustomizer imports) {
- imports.addImports("javax.annotation.PostConstruct", "javax.annotation.PreDestroy", "groovy.util.logging.Log",
+ imports.addImports("jakarta.annotation.PostConstruct", "jakarta.annotation.PreDestroy", "groovy.util.logging.Log",
"org.springframework.stereotype.Controller", "org.springframework.stereotype.Service",
"org.springframework.stereotype.Component", "org.springframework.beans.factory.annotation.Autowired",
"org.springframework.beans.factory.annotation.Value", "org.springframework.context.annotation.Import",
diff --git a/grails-test-suite-web/src/test/groovy/org/grails/web/converters/MarshallerRegistrarSpec.groovy b/grails-test-suite-web/src/test/groovy/org/grails/web/converters/MarshallerRegistrarSpec.groovy
index 7993a8d1b31..09e377c1459 100644
--- a/grails-test-suite-web/src/test/groovy/org/grails/web/converters/MarshallerRegistrarSpec.groovy
+++ b/grails-test-suite-web/src/test/groovy/org/grails/web/converters/MarshallerRegistrarSpec.groovy
@@ -6,7 +6,7 @@ import grails.persistence.Entity
import grails.testing.gorm.DomainUnitTest
import grails.testing.web.controllers.ControllerUnitTest
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
import spock.lang.Specification
class MarshallerRegistrarSpec extends Specification implements ControllerUnitTest, DomainUnitTest {
diff --git a/grails-web-common/src/main/groovy/org/grails/web/util/WebUtils.java b/grails-web-common/src/main/groovy/org/grails/web/util/WebUtils.java
index 06d3ac854f0..5fa4c81f8cf 100644
--- a/grails-web-common/src/main/groovy/org/grails/web/util/WebUtils.java
+++ b/grails-web-common/src/main/groovy/org/grails/web/util/WebUtils.java
@@ -243,11 +243,11 @@ public static void cleanupIncludeRequestAttributes(HttpServletRequest request, M
* Expose the current request URI and paths as {@link jakarta.servlet.http.HttpServletRequest}
* attributes under the keys defined in the Servlet 2.4 specification,
* for containers that implement 2.3 or an earlier version of the Servlet API:
- * javax.servlet.forward.request_uri
,
- * javax.servlet.forward.context_path
,
- * javax.servlet.forward.servlet_path
,
- * javax.servlet.forward.path_info
,
- * javax.servlet.forward.query_string
.
+ * jakarta.servlet.forward.request_uri
,
+ * jakarta.servlet.forward.context_path
,
+ * jakarta.servlet.forward.servlet_path
,
+ * jakarta.servlet.forward.path_info
,
+ * jakarta.servlet.forward.query_string
.
* Does not override values if already present, to not cause conflicts
* with the attributes exposed by Servlet 2.4+ containers themselves.
* @param request current servlet request
diff --git a/grails-web-databinding/src/main/groovy/org/grails/web/databinding/bindingsource/DefaultDataBindingSourceRegistry.groovy b/grails-web-databinding/src/main/groovy/org/grails/web/databinding/bindingsource/DefaultDataBindingSourceRegistry.groovy
index e65e4c97785..dc4ee8114cb 100644
--- a/grails-web-databinding/src/main/groovy/org/grails/web/databinding/bindingsource/DefaultDataBindingSourceRegistry.groovy
+++ b/grails-web-databinding/src/main/groovy/org/grails/web/databinding/bindingsource/DefaultDataBindingSourceRegistry.groovy
@@ -21,7 +21,7 @@ import grails.web.mime.MimeType
import groovy.transform.Canonical
import groovy.transform.CompileStatic
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
import org.grails.databinding.bindingsource.DataBindingSourceCreator
import org.grails.web.util.ClassAndMimeTypeRegistry
diff --git a/grails-web-url-mappings/build.gradle b/grails-web-url-mappings/build.gradle
index 09d37b6d371..410e71d791d 100644
--- a/grails-web-url-mappings/build.gradle
+++ b/grails-web-url-mappings/build.gradle
@@ -18,7 +18,7 @@ dependencies {
exclude group: 'commons-lang', module:'commons-lang'
exclude group: 'javassist', module:'javassist'
exclude group: 'org.javassist', module: 'javassist'
- exclude group: "javax.persistence", module:"persistence-api"
+ exclude group: "jakarta.persistence", module:"persistence-api"
exclude group: 'java-persistence', module:'persistence-api'
}
diff --git a/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy b/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
index 14de639d420..ac732182329 100644
--- a/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
+++ b/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
@@ -26,7 +26,7 @@ import groovy.util.logging.Slf4j
import org.springframework.beans.factory.annotation.Value
import org.springframework.util.StringUtils
-import javax.annotation.PostConstruct
+import jakarta.annotation.PostConstruct
import java.util.regex.Pattern
import grails.util.Environment