diff --git a/src/main/resources/META-INF/rewrite/jakarta-faces-3.yml b/src/main/resources/META-INF/rewrite/jakarta-faces-3.yml index f3ab78709d..9da9fa0064 100644 --- a/src/main/resources/META-INF/rewrite/jakarta-faces-3.yml +++ b/src/main/resources/META-INF/rewrite/jakarta-faces-3.yml @@ -170,7 +170,9 @@ recipeList: - org.openrewrite.xml.ChangeTagAttribute: attributeName: version elementName: web-app + oldValue: ^[1234]\.\d+$ newValue: 5.0 + regex: true - org.openrewrite.xml.ChangeTagAttribute: attributeName: xmlns elementName: web-app @@ -178,7 +180,9 @@ recipeList: - org.openrewrite.xml.ChangeTagAttribute: attributeName: xsi:schemaLocation elementName: web-app + oldValue: .*xml/ns/javaee.* newValue: https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd + regex: true - org.openrewrite.text.FindAndReplace: find: "javax." replace: "jakarta." diff --git a/src/main/resources/META-INF/rewrite/jakarta-faces-4.yml b/src/main/resources/META-INF/rewrite/jakarta-faces-4.yml index 17ab396614..1e21d66417 100644 --- a/src/main/resources/META-INF/rewrite/jakarta-faces-4.yml +++ b/src/main/resources/META-INF/rewrite/jakarta-faces-4.yml @@ -193,11 +193,15 @@ recipeList: - org.openrewrite.xml.ChangeTagAttribute: attributeName: version elementName: web-app + oldValue: ^[12345]\.\d+$ newValue: 6.0 + regex: true - org.openrewrite.xml.ChangeTagAttribute: attributeName: xsi:schemaLocation elementName: web-app - newValue: https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd + oldValue: (?s)(?.*https://jakarta\.ee/xml/ns/jakartaee/web-app_)5_\d+(?\.xsd.*) + newValue: ${prefix}6_0${suffix} + regex: true --- type: specs.openrewrite.org/v1beta/recipe name: org.openrewrite.java.migrate.jakarta.FacesManagedBeansRemoved diff --git a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java index 6e6dd83eed..edf5cc42ed 100644 --- a/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java +++ b/src/test/java/org/openrewrite/java/migrate/jakarta/JavaxWebXmlToJakartaWebXmlTest.java @@ -161,5 +161,25 @@ void fileNotWebXml() { ) ); } + + @Test + void alreadyMigrated() { + rewriteRun( + //language=xml + xml( + """ + + + Unit testing + + """, + sourceSpecs -> sourceSpecs.path("web.xml") + ) + ); + } } }