diff --git a/bom/pom.xml b/bom/pom.xml index 8fe8e3ea33..6385b66325 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -36,13 +36,11 @@ org.apache.shiro shiro-core - jakarta ${project.version} org.apache.shiro shiro-web - jakarta ${project.version} @@ -54,7 +52,6 @@ org.apache.shiro shiro-jakarta-ee - jakarta ${project.version} @@ -66,7 +63,6 @@ org.apache.shiro shiro-cdi - jakarta ${project.version} @@ -78,7 +74,6 @@ org.apache.shiro shiro-jaxrs - jakarta ${project.version} @@ -90,7 +85,6 @@ org.apache.shiro shiro-spring - jakarta ${project.version} @@ -102,7 +96,6 @@ org.apache.shiro shiro-spring-boot-web-starter - jakarta ${project.version} @@ -114,7 +107,6 @@ org.apache.shiro shiro-spring-boot-starter - jakarta ${project.version} diff --git a/core/src/main/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandler.java b/core/src/main/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandler.java index 73e087a601..3366951843 100644 --- a/core/src/main/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandler.java +++ b/core/src/main/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandler.java @@ -21,7 +21,7 @@ import org.apache.shiro.authz.UnauthenticatedException; import org.apache.shiro.authz.UnauthorizedException; -import javax.annotation.security.DenyAll; +import jakarta.annotation.security.DenyAll; import java.lang.annotation.Annotation; /** diff --git a/core/src/main/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandler.java b/core/src/main/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandler.java index ca51e9a4e7..2d2059e12d 100644 --- a/core/src/main/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandler.java +++ b/core/src/main/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandler.java @@ -18,13 +18,13 @@ */ package org.apache.shiro.authz.aop; -import javax.annotation.security.PermitAll; +import jakarta.annotation.security.PermitAll; import java.lang.annotation.Annotation; /** * This {@link org.apache.shiro.aop.AnnotationHandler AnnotationHandler} allows access from any subject * (anonymous or logged in user). It is largely a no-op or for documentation. However, this annotation WILL override - * a {@link javax.annotation.security.DenyAll DenyAll} or {@link javax.annotation.security.RolesAllowed RolesAllowed} + * a {@link jakarta.annotation.security.DenyAll DenyAll} or {@link jakarta.annotation.security.RolesAllowed RolesAllowed} * annotation if those annotations are placed at the class level and {@link PermitAll} is placed on a method. * * @since 2.0 diff --git a/core/src/main/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandler.java b/core/src/main/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandler.java index 8ab9327760..1359e8ed87 100644 --- a/core/src/main/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandler.java +++ b/core/src/main/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandler.java @@ -20,7 +20,7 @@ import org.apache.shiro.authz.AuthorizationException; -import javax.annotation.security.RolesAllowed; +import jakarta.annotation.security.RolesAllowed; import java.lang.annotation.Annotation; /** diff --git a/core/src/test/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandlerTest.java b/core/src/test/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandlerTest.java index 7b40088185..907ad8bfbb 100644 --- a/core/src/test/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandlerTest.java +++ b/core/src/test/java/org/apache/shiro/authz/aop/DenyAllAnnotationHandlerTest.java @@ -23,7 +23,7 @@ import org.apache.shiro.test.SecurityManagerTestSupport; import org.junit.jupiter.api.Test; -import javax.annotation.security.DenyAll; +import jakarta.annotation.security.DenyAll; import java.lang.annotation.Annotation; import static org.assertj.core.api.AssertionsForClassTypes.assertThatExceptionOfType; diff --git a/core/src/test/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandlerTest.java b/core/src/test/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandlerTest.java index cf28a64559..dd26bf9172 100644 --- a/core/src/test/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandlerTest.java +++ b/core/src/test/java/org/apache/shiro/authz/aop/PermitAllAnnotationHandlerTest.java @@ -21,7 +21,7 @@ import org.apache.shiro.test.SecurityManagerTestSupport; import org.junit.jupiter.api.Test; -import javax.annotation.security.PermitAll; +import jakarta.annotation.security.PermitAll; import java.lang.annotation.Annotation; /** diff --git a/core/src/test/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandlerTest.java b/core/src/test/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandlerTest.java index 27364cebf6..af9926ecb9 100644 --- a/core/src/test/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandlerTest.java +++ b/core/src/test/java/org/apache/shiro/authz/aop/RolesAllowedAnnotationHandlerTest.java @@ -23,7 +23,7 @@ import org.apache.shiro.test.SecurityManagerTestSupport; import org.junit.jupiter.api.Test; -import javax.annotation.security.RolesAllowed; +import jakarta.annotation.security.RolesAllowed; import java.lang.annotation.Annotation; import static org.assertj.core.api.AssertionsForClassTypes.assertThatExceptionOfType; diff --git a/integration-tests/guice3/pom.xml b/integration-tests/guice3/pom.xml index 2867083b85..a83817b96e 100644 --- a/integration-tests/guice3/pom.xml +++ b/integration-tests/guice3/pom.xml @@ -56,9 +56,10 @@ compile - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.apache.logging.log4j @@ -106,8 +107,8 @@ test - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java b/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java index ea9926f074..f884aefc06 100644 --- a/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java +++ b/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java @@ -23,8 +23,8 @@ import com.google.inject.servlet.GuiceServletContextListener; import org.apache.shiro.guice.web.ShiroWebModule; -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletContextEvent; public class SampleShiroGuiceBootstrap extends GuiceServletContextListener { diff --git a/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java b/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java index 2003537de1..007f9e472d 100644 --- a/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java +++ b/integration-tests/guice3/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java @@ -30,8 +30,8 @@ import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.inject.Singleton; -import javax.servlet.ServletContext; +import jakarta.inject.Singleton; +import jakarta.servlet.ServletContext; import java.net.MalformedURLException; import java.net.URL; diff --git a/integration-tests/guice3/src/main/webapp/WEB-INF/web.xml b/integration-tests/guice3/src/main/webapp/WEB-INF/web.xml index b158ae40fa..64681aec7d 100644 --- a/integration-tests/guice3/src/main/webapp/WEB-INF/web.xml +++ b/integration-tests/guice3/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> org.apache.shiro.samples.guice.SampleShiroGuiceBootstrap diff --git a/integration-tests/guice4/pom.xml b/integration-tests/guice4/pom.xml index bfcf3cf9cb..dd0e9e31e8 100644 --- a/integration-tests/guice4/pom.xml +++ b/integration-tests/guice4/pom.xml @@ -65,9 +65,10 @@ compile - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.apache.logging.log4j @@ -115,8 +116,8 @@ test - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java b/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java index ea9926f074..f884aefc06 100644 --- a/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java +++ b/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java @@ -23,8 +23,8 @@ import com.google.inject.servlet.GuiceServletContextListener; import org.apache.shiro.guice.web.ShiroWebModule; -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletContextEvent; public class SampleShiroGuiceBootstrap extends GuiceServletContextListener { diff --git a/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java b/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java index 48c714fb8a..5b6dca73fa 100644 --- a/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java +++ b/integration-tests/guice4/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java @@ -30,8 +30,8 @@ import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.inject.Singleton; -import javax.servlet.ServletContext; +import jakarta.inject.Singleton; +import jakarta.servlet.ServletContext; import java.net.MalformedURLException; import java.net.URL; diff --git a/integration-tests/guice4/src/main/webapp/WEB-INF/web.xml b/integration-tests/guice4/src/main/webapp/WEB-INF/web.xml index b158ae40fa..64681aec7d 100644 --- a/integration-tests/guice4/src/main/webapp/WEB-INF/web.xml +++ b/integration-tests/guice4/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> org.apache.shiro.samples.guice.SampleShiroGuiceBootstrap diff --git a/integration-tests/jakarta-ee/pom.xml b/integration-tests/jakarta-ee/pom.xml index e2d23c0731..7cc6c629ef 100644 --- a/integration-tests/jakarta-ee/pom.xml +++ b/integration-tests/jakarta-ee/pom.xml @@ -65,7 +65,7 @@ org.omnifaces omnifaces - 3.14.11 + 4.6.5 org.projectlombok @@ -77,19 +77,19 @@ jakarta.platform jakarta.jakartaee-api - 8.0.0 + 10.0.0 provided jakarta.activation jakarta.activation-api - 1.2.2 + 2.1.3 provided jakarta.xml.bind jakarta.xml.bind-api - 2.3.3 + 4.0.2 provided @@ -148,6 +148,11 @@ flowlogix-jee 5.5.6 + + jakarta.ws.rs + jakarta.ws.rs-api + 3.1.0 + diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/CipherKeyGenerator.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/CipherKeyGenerator.java index a818d4744c..79c70f52ac 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/CipherKeyGenerator.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/CipherKeyGenerator.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.testing.cdi; -import javax.enterprise.context.ApplicationScoped; +import jakarta.enterprise.context.ApplicationScoped; import org.apache.shiro.cdi.annotations.CipherKeySupplier; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/ComponentInjectionBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/ComponentInjectionBean.java index b7d0144079..26662edf32 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/ComponentInjectionBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/cdi/ComponentInjectionBean.java @@ -13,8 +13,8 @@ */ package org.apache.shiro.testing.cdi; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; import lombok.Getter; import org.apache.shiro.cdi.annotations.NoSessionCreation; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/FormBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/FormBean.java index 7af3ae0180..3edd79648c 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/FormBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/FormBean.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.testing.jakarta.ee; -import javax.enterprise.inject.Model; +import jakarta.enterprise.inject.Model; import lombok.Getter; import lombok.Setter; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyPrincipal.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyPrincipal.java index 44563c4a34..fdbed033c3 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyPrincipal.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyPrincipal.java @@ -14,7 +14,7 @@ package org.apache.shiro.testing.jakarta.ee; import java.io.Serializable; -import javax.enterprise.inject.Vetoed; +import jakarta.enterprise.inject.Vetoed; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyRealm.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyRealm.java index a2adcec11b..179d510f15 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyRealm.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/PropertyRealm.java @@ -14,8 +14,8 @@ package org.apache.shiro.testing.jakarta.ee; import java.util.Map; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Named; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Named; import lombok.Getter; import lombok.Setter; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedFacesViewScopedBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedFacesViewScopedBean.java index b424e38949..a448557095 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedFacesViewScopedBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedFacesViewScopedBean.java @@ -17,11 +17,11 @@ import java.io.Serializable; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import javax.faces.context.FacesContext; -import javax.faces.view.ViewScoped; -import javax.inject.Named; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.faces.context.FacesContext; +import jakarta.faces.view.ViewScoped; +import jakarta.inject.Named; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresUser; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOmniViewScopedBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOmniViewScopedBean.java index 87daa8d1ad..db5deaae73 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOmniViewScopedBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOmniViewScopedBean.java @@ -17,10 +17,10 @@ import java.io.Serializable; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import javax.faces.context.FacesContext; -import javax.inject.Named; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.faces.context.FacesContext; +import jakarta.inject.Named; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresUser; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOneMethod.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOneMethod.java index d12624edc7..0cf0ea6b8b 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOneMethod.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedOneMethod.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.testing.jakarta.ee; -import javax.enterprise.context.RequestScoped; +import jakarta.enterprise.context.RequestScoped; import org.apache.shiro.authz.annotation.RequiresUser; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedSessionScopedBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedSessionScopedBean.java index 44715c6264..ce3ac2d4da 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedSessionScopedBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedSessionScopedBean.java @@ -17,10 +17,10 @@ import java.io.Serializable; import java.util.concurrent.atomic.AtomicInteger; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import javax.enterprise.context.SessionScoped; -import javax.inject.Named; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.enterprise.context.SessionScoped; +import jakarta.inject.Named; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authz.annotation.RequiresUser; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedStatelessBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedStatelessBean.java index 1359005088..41106165bc 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedStatelessBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/ProtectedStatelessBean.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.testing.jakarta.ee; -import javax.ejb.Stateless; +import jakarta.ejb.Stateless; import org.apache.shiro.authz.annotation.RequiresUser; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/StatisticsResource.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/StatisticsResource.java index bd25d688a2..2ffe17578b 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/StatisticsResource.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/StatisticsResource.java @@ -16,12 +16,12 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicInteger; -import javax.ws.rs.Produces; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; import lombok.AccessLevel; import lombok.Getter; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UnprotectedFacade.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UnprotectedFacade.java index d9cfe3bcca..9c489997e9 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UnprotectedFacade.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UnprotectedFacade.java @@ -18,9 +18,9 @@ import org.apache.shiro.ee.filters.Forms; import java.util.Map; -import javax.ejb.EJBException; -import javax.enterprise.inject.Model; -import javax.inject.Inject; +import jakarta.ejb.EJBException; +import jakarta.enterprise.inject.Model; +import jakarta.inject.Inject; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UseFallback.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UseFallback.java index 5e438da4ea..fd1a8a52c9 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UseFallback.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/UseFallback.java @@ -13,12 +13,12 @@ */ package org.apache.shiro.testing.jakarta.ee; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Named; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Named; import org.apache.shiro.ee.filters.Forms.FallbackPredicate; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; /** * Fallback if we are an auth page diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/ExceptionServlet.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/ExceptionServlet.java index 6e391b7948..a0d2cc6236 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/ExceptionServlet.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/ExceptionServlet.java @@ -19,13 +19,13 @@ import java.io.PrintWriter; import java.nio.charset.StandardCharsets; import java.util.logging.LogRecord; -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; -import static javax.ws.rs.core.MediaType.TEXT_PLAIN; +import static jakarta.ws.rs.core.MediaType.TEXT_PLAIN; /** * Log Capture servlet diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/InvalidateSessionServlet.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/InvalidateSessionServlet.java index ac455ffbf4..f1205e95ad 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/InvalidateSessionServlet.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/InvalidateSessionServlet.java @@ -14,11 +14,11 @@ package org.apache.shiro.testing.jakarta.ee.servlets; import java.io.IOException; -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; /** * Invalidate session entry point @@ -29,6 +29,6 @@ public class InvalidateSessionServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - request.getSession().invalidate(); + request.logout(); } } diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/LogoutServlet.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/LogoutServlet.java index cdce25d705..65541769c3 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/LogoutServlet.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/LogoutServlet.java @@ -14,11 +14,11 @@ package org.apache.shiro.testing.jakarta.ee.servlets; import java.io.IOException; -import javax.servlet.ServletException; -import javax.servlet.annotation.WebServlet; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import org.apache.shiro.SecurityUtils; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/RestConfig.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/RestConfig.java index fbd4171c6a..224c1a7016 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/RestConfig.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jakarta/ee/servlets/RestConfig.java @@ -13,8 +13,8 @@ */ package org.apache.shiro.testing.jakarta.ee.servlets; -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.Application; +import jakarta.ws.rs.ApplicationPath; +import jakarta.ws.rs.core.Application; /** * Rest API entry point diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/RolesAllowedBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/RolesAllowedBean.java index 4c0b4ec60c..18971f9450 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/RolesAllowedBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/RolesAllowedBean.java @@ -13,11 +13,11 @@ */ package org.apache.shiro.testing.jaxrs; -import javax.annotation.security.DenyAll; -import javax.annotation.security.PermitAll; -import javax.annotation.security.RolesAllowed; -import javax.enterprise.context.ApplicationScoped; -import javax.ws.rs.core.Response; +import jakarta.annotation.security.DenyAll; +import jakarta.annotation.security.PermitAll; +import jakarta.annotation.security.RolesAllowed; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.ws.rs.core.Response; @ApplicationScoped public class RolesAllowedBean { diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/TestApplication.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/TestApplication.java index de6c4bce03..1105911dad 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/TestApplication.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/TestApplication.java @@ -14,12 +14,12 @@ package org.apache.shiro.testing.jaxrs; import java.util.List; -import javax.enterprise.context.ApplicationScoped; -import javax.enterprise.context.Destroyed; -import javax.enterprise.context.Initialized; -import javax.enterprise.event.Observes; -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.Application; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.enterprise.context.Destroyed; +import jakarta.enterprise.context.Initialized; +import jakarta.enterprise.event.Observes; +import jakarta.ws.rs.ApplicationPath; +import jakarta.ws.rs.core.Application; import lombok.Getter; import org.apache.shiro.authc.SimpleAccount; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiBean.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiBean.java index 3e934058e5..60ac2c6e45 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiBean.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiBean.java @@ -13,8 +13,8 @@ */ package org.apache.shiro.testing.jaxrs; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; import org.apache.shiro.authz.annotation.RequiresUser; import org.apache.shiro.subject.Subject; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiResource.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiResource.java index 995450b4bf..567a4b077d 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiResource.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/jaxrs/WhoamiResource.java @@ -14,16 +14,16 @@ package org.apache.shiro.testing.jaxrs; import java.util.function.Supplier; -import javax.inject.Inject; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.QueryParam; +import jakarta.inject.Inject; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.QueryParam; -import static javax.ws.rs.core.MediaType.APPLICATION_JSON; +import static jakarta.ws.rs.core.MediaType.APPLICATION_JSON; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; diff --git a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/logcapture/LogCaptureSingleton.java b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/logcapture/LogCaptureSingleton.java index bb2e4e7d3e..301d1c240a 100644 --- a/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/logcapture/LogCaptureSingleton.java +++ b/integration-tests/jakarta-ee/src/main/java/org/apache/shiro/testing/logcapture/LogCaptureSingleton.java @@ -13,10 +13,10 @@ */ package org.apache.shiro.testing.logcapture; -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import javax.ejb.Singleton; -import javax.ejb.Startup; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.ejb.Singleton; +import jakarta.ejb.Startup; /** * Entry point for capturing logs and exceptions via servlet diff --git a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/errorpages/invalidErrorPage.xhtml b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/errorpages/invalidErrorPage.xhtml index a324ab4e00..e1e5581477 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/errorpages/invalidErrorPage.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/errorpages/invalidErrorPage.xhtml @@ -20,7 +20,7 @@ --> + xmlns:h="jakarta.faces.html"> Exception Page @@ -31,14 +31,14 @@
  • Date/time: #{of:formatDate(now, 'yyyy-MM-dd HH:mm:ss')}
  • User agent: #{header['user-agent']}
  • User IP: #{request.remoteAddr}
  • -
  • Request URI: #{requestScope['javax.servlet.error.request_uri']}
  • +
  • Request URI: #{requestScope['jakarta.servlet.error.request_uri']}
  • Ajax request: #{facesContext.partialViewContext.ajaxRequest ? 'Yes' : 'No'}
  • -
  • Status code: #{requestScope['javax.servlet.error.status_code']}
  • -
  • Exception type: #{requestScope['javax.servlet.error.exception_type']}
  • -
  • Exception message: #{requestScope['javax.servlet.error.message']}
  • +
  • Status code: #{requestScope['jakarta.servlet.error.status_code']}
  • +
  • Exception type: #{requestScope['jakarta.servlet.error.exception_type']}
  • +
  • Exception message: #{requestScope['jakarta.servlet.error.message']}
  • Exception UUID: #{requestScope['org.omnifaces.exception_uuid']}
  • Stack trace: -
    #{of:printStackTrace(requestScope['javax.servlet.error.exception'])}
    +
    #{of:printStackTrace(requestScope['jakarta.servlet.error.exception'])}
  • diff --git a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/faces-config.xml b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/faces-config.xml index e66c141a19..e3dc4db858 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/faces-config.xml +++ b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/faces-config.xml @@ -19,10 +19,10 @@ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-facesconfig_4_0.xsd"> org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory diff --git a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/web.xml b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/web.xml index 0e1c1ab45c..837c257770 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/web.xml +++ b/integration-tests/jakarta-ee/src/main/webapp/WEB-INF/web.xml @@ -17,16 +17,16 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd" + version="5.0"> index.xhtml - javax.faces.application.ViewExpiredException + jakarta.faces.application.ViewExpiredException /WEB-INF/errorpages/invalidErrorPage.xhtml @@ -35,7 +35,7 @@ org.omnifaces.EXCEPTION_TYPES_TO_IGNORE_IN_LOGGING - javax.faces.application.ViewExpiredException, java.nio.channels.ClosedByInterruptException, java.sql.SQLException + jakarta.faces.application.ViewExpiredException, java.nio.channels.ClosedByInterruptException, java.sql.SQLException @@ -47,11 +47,11 @@ #{environmentInfo.version} - javax.faces.STATE_SAVING_METHOD + jakarta.faces.STATE_SAVING_METHOD server - javax.faces.PROJECT_STAGE + jakarta.faces.PROJECT_STAGE Development diff --git a/integration-tests/jakarta-ee/src/main/webapp/index.xhtml b/integration-tests/jakarta-ee/src/main/webapp/index.xhtml index 2db3a33cae..3d6688f094 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/index.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/index.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> Index diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/adminpage.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/adminpage.xhtml index fbc74a33c8..fc5df65f19 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/adminpage.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/adminpage.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> Admin Page diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/loginform.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/loginform.xhtml index 3d39e29ff9..aae1c52897 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/loginform.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/loginform.xhtml @@ -18,10 +18,10 @@ ~ under the License. --> + xmlns:f="jakarta.faces.core" + xmlns:h="jakarta.faces.html" + xmlns:jsf="jakarta.faces" + xmlns:p="jakarta.faces.passthrough"> Please Log In diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthenticated.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthenticated.xhtml index 8d80e06d04..46191cb7d9 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthenticated.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthenticated.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> User Not Authenticated diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthorized.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthorized.xhtml index 1bb4583fbb..7b530112f7 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthorized.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/auth/unauthorized.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> Unauthorized diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/form.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/form.xhtml index 2aab6c82e4..59d27c5dfd 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/form.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/form.xhtml @@ -18,9 +18,9 @@ ~ under the License. --> + xmlns:f="jakarta.faces.core" + xmlns:p="jakarta.faces.passthrough" + xmlns:h="jakarta.faces.html"> Form Page diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/index.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/index.xhtml index 38f57ed656..6d6ca67930 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/index.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/index.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> Apache Shiro Example diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/protected.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/protected.xhtml index 0f3348479d..f24d1b923f 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/protected.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/protected.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> + xmlns:h="jakarta.faces.html"> Protected Page diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/manybeans.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/manybeans.xhtml index 11fd926243..253e2d8077 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/manybeans.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/manybeans.xhtml @@ -18,9 +18,9 @@ ~ under the License. --> + xmlns:f="jakarta.faces.core" + xmlns:jsf="jakarta.faces" + xmlns:h="jakarta.faces.html"> Many Beans Unprotected diff --git a/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/tags.xhtml b/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/tags.xhtml index 901fe15a09..884df5b04e 100644 --- a/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/tags.xhtml +++ b/integration-tests/jakarta-ee/src/main/webapp/shiro/unprotected/tags.xhtml @@ -18,7 +18,7 @@ ~ under the License. --> Tags Test Page diff --git a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/cdi/ComponentInjectionIT.java b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/cdi/ComponentInjectionIT.java index f84d47fb9e..2bd7a0eff1 100644 --- a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/cdi/ComponentInjectionIT.java +++ b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/cdi/ComponentInjectionIT.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.testing.cdi; -import javax.inject.Inject; +import jakarta.inject.Inject; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; diff --git a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/Deployments.java b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/Deployments.java index 913c905c04..44cd895ebd 100644 --- a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/Deployments.java +++ b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/Deployments.java @@ -68,7 +68,7 @@ public static WebArchive createNonUIDeployment() { private static List initializeStandardActions() { switch (System.getProperty(INTEGRATION_TEST_MODE_PROPERTY, "none")) { case CLIENT_STATE_SAVING: - return List.of(new Action(getContextParamValue(jakartify("javax.faces.STATE_SAVING_METHOD")), + return List.of(new Action(getContextParamValue(jakartify("jakarta.faces.STATE_SAVING_METHOD")), node -> node.setTextContent("client"))); case SHIRO_NATIVE_SESSIONS: return List.of(new Action(getContextParamValue("shiroConfigLocations"), diff --git a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/ShiroAuthFormsIT.java b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/ShiroAuthFormsIT.java index 0f312b3e75..97db75a45f 100644 --- a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/ShiroAuthFormsIT.java +++ b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jakarta/ee/ShiroAuthFormsIT.java @@ -373,7 +373,7 @@ static WebArchive createDeploymentProd(String archiveName) { .as(WebArchive.class) .deletePackage("org.apache.shiro.testing.jaxrs"); var productionList = List.of(new Action( - getContextParamValue(jakartify("javax.faces.PROJECT_STAGE")), + getContextParamValue(jakartify("jakarta.faces.PROJECT_STAGE")), node -> node.setTextContent("Production"))); new ShrinkWrapManipulator().webXmlXPath(archive, Stream.concat(productionList.stream(), standardActions.stream()).collect(Collectors.toList())); diff --git a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jaxrs/NoIniJaxRsIT.java b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jaxrs/NoIniJaxRsIT.java index 55e8875518..7d93b110bb 100644 --- a/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jaxrs/NoIniJaxRsIT.java +++ b/integration-tests/jakarta-ee/src/test/java/org/apache/shiro/testing/jaxrs/NoIniJaxRsIT.java @@ -16,11 +16,11 @@ import java.net.MalformedURLException; import java.net.URI; import java.net.URL; -import javax.json.bind.JsonbException; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.Response.Status; -import javax.ws.rs.core.UriBuilder; +import jakarta.json.bind.JsonbException; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.Response.Status; +import jakarta.ws.rs.core.UriBuilder; import lombok.Builder; import lombok.SneakyThrows; diff --git a/integration-tests/jaxrs/app/pom.xml b/integration-tests/jaxrs/app/pom.xml index e8cb2c45e9..d12641eda5 100644 --- a/integration-tests/jaxrs/app/pom.xml +++ b/integration-tests/jaxrs/app/pom.xml @@ -36,7 +36,7 @@ false - 2.1.1 + 3.1.0 @@ -66,21 +66,21 @@
    - javax.ws.rs - javax.ws.rs-api + jakarta.ws.rs + jakarta.ws.rs-api ${jaxrs.api.version} provided - javax.servlet - javax.servlet-api - 4.0.1 + jakarta.servlet + jakarta.servlet-api + 6.0.0 provided - javax.enterprise - cdi-api - 2.0 + jakarta.enterprise + jakarta.enterprise.cdi-api + 4.0.1 provided diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/JaxRsApplication.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/JaxRsApplication.java index 4319cfdc81..f7fa1f7cde 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/JaxRsApplication.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/JaxRsApplication.java @@ -19,9 +19,9 @@ package org.apache.shiro.testing.jaxrs.app; -import javax.enterprise.context.Dependent; -import javax.ws.rs.ApplicationPath; -import javax.ws.rs.core.Application; +import jakarta.enterprise.context.Dependent; +import jakarta.ws.rs.ApplicationPath; +import jakarta.ws.rs.core.Application; /** * Simple JAX-RS {@link Application} that is implementation agnostic. diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/JaxRsShiroFeature.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/JaxRsShiroFeature.java index be98da5a74..134bed69c3 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/JaxRsShiroFeature.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/JaxRsShiroFeature.java @@ -21,9 +21,9 @@ import org.apache.shiro.web.jaxrs.ShiroFeature; -import javax.enterprise.context.Dependent; -import javax.ws.rs.core.FeatureContext; -import javax.ws.rs.ext.Provider; +import jakarta.enterprise.context.Dependent; +import jakarta.ws.rs.core.FeatureContext; +import jakarta.ws.rs.ext.Provider; @Dependent @Provider diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroListener.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroListener.java index feab2b2c67..844f79bfc0 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroListener.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroListener.java @@ -21,8 +21,8 @@ import org.apache.shiro.web.env.EnvironmentLoaderListener; -import javax.enterprise.context.Dependent; -import javax.servlet.annotation.WebListener; +import jakarta.enterprise.context.Dependent; +import jakarta.servlet.annotation.WebListener; @Dependent @WebListener diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroServletFilter.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroServletFilter.java index 43f1a4c3c2..b6e3ef6592 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroServletFilter.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/config/ShiroServletFilter.java @@ -19,9 +19,9 @@ package org.apache.shiro.testing.jaxrs.app.config; -import javax.enterprise.context.Dependent; -import javax.servlet.DispatcherType; -import javax.servlet.annotation.WebFilter; +import jakarta.enterprise.context.Dependent; +import jakarta.servlet.DispatcherType; +import jakarta.servlet.annotation.WebFilter; @Dependent @WebFilter( diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/dao/InMemoryStormtrooperDao.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/dao/InMemoryStormtrooperDao.java index e24161e546..a5dd8cffc0 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/dao/InMemoryStormtrooperDao.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/dao/InMemoryStormtrooperDao.java @@ -27,8 +27,8 @@ import org.apache.shiro.testing.jaxrs.app.model.StormtrooperId; import org.apache.shiro.testing.jaxrs.app.model.StormtrooperTemplate; -import javax.enterprise.context.Dependent; -import javax.enterprise.inject.Default; +import jakarta.enterprise.context.Dependent; +import jakarta.enterprise.inject.Default; import java.time.Instant; import java.util.Collection; import java.util.Locale; diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/JsonbConfigProvider.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/JsonbConfigProvider.java index 5195dbcbba..672792aa8f 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/JsonbConfigProvider.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/JsonbConfigProvider.java @@ -19,13 +19,13 @@ package org.apache.shiro.testing.jaxrs.app.json; -import javax.enterprise.context.Dependent; -import javax.json.bind.Jsonb; -import javax.json.bind.JsonbBuilder; -import javax.json.bind.JsonbConfig; -import javax.json.bind.config.PropertyNamingStrategy; -import javax.ws.rs.ext.ContextResolver; -import javax.ws.rs.ext.Provider; +import jakarta.enterprise.context.Dependent; +import jakarta.json.bind.Jsonb; +import jakarta.json.bind.JsonbBuilder; +import jakarta.json.bind.JsonbConfig; +import jakarta.json.bind.config.PropertyNamingStrategy; +import jakarta.ws.rs.ext.ContextResolver; +import jakarta.ws.rs.ext.Provider; @Dependent @Provider diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/StormtrooperIdConverter.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/StormtrooperIdConverter.java index d519b09d50..5630333a09 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/StormtrooperIdConverter.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/json/StormtrooperIdConverter.java @@ -21,9 +21,9 @@ import org.apache.shiro.testing.jaxrs.app.model.StormtrooperId; -import javax.enterprise.context.Dependent; -import javax.json.bind.adapter.JsonbAdapter; -import javax.ws.rs.ext.Provider; +import jakarta.enterprise.context.Dependent; +import jakarta.json.bind.adapter.JsonbAdapter; +import jakarta.ws.rs.ext.Provider; @Dependent @Provider diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/Stormtrooper.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/Stormtrooper.java index 90d6eb5117..0449e62b26 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/Stormtrooper.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/Stormtrooper.java @@ -19,8 +19,8 @@ package org.apache.shiro.testing.jaxrs.app.model; -import javax.json.bind.annotation.JsonbCreator; -import javax.json.bind.annotation.JsonbProperty; +import jakarta.json.bind.annotation.JsonbCreator; +import jakarta.json.bind.annotation.JsonbProperty; import java.time.Instant; import static java.util.Objects.requireNonNull; diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/StormtrooperTemplate.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/StormtrooperTemplate.java index 3871f7d3a5..e30ce5f9f1 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/StormtrooperTemplate.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/model/StormtrooperTemplate.java @@ -19,8 +19,8 @@ package org.apache.shiro.testing.jaxrs.app.model; -import javax.json.bind.annotation.JsonbCreator; -import javax.json.bind.annotation.JsonbProperty; +import jakarta.json.bind.annotation.JsonbCreator; +import jakarta.json.bind.annotation.JsonbProperty; import static java.util.Objects.requireNonNull; diff --git a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/resources/StormtrooperResource.java b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/resources/StormtrooperResource.java index 7ff0a7d287..2600381758 100644 --- a/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/resources/StormtrooperResource.java +++ b/integration-tests/jaxrs/app/src/main/java/org/apache/shiro/testing/jaxrs/app/resources/StormtrooperResource.java @@ -26,16 +26,16 @@ import org.apache.shiro.testing.jaxrs.app.model.StormtrooperId; import org.apache.shiro.testing.jaxrs.app.model.StormtrooperTemplate; -import javax.enterprise.context.ApplicationScoped; -import javax.enterprise.inject.Default; -import javax.inject.Inject; -import javax.ws.rs.DELETE; -import javax.ws.rs.GET; -import javax.ws.rs.NotFoundException; -import javax.ws.rs.POST; -import javax.ws.rs.Path; -import javax.ws.rs.PathParam; -import javax.ws.rs.Produces; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.enterprise.inject.Default; +import jakarta.inject.Inject; +import jakarta.ws.rs.DELETE; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.NotFoundException; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; import java.util.Collection; import java.util.Optional; diff --git a/integration-tests/jaxrs/app/src/main/resources/META-INF/beans.xml b/integration-tests/jaxrs/app/src/main/resources/META-INF/beans.xml index e052c65014..803cef765f 100644 --- a/integration-tests/jaxrs/app/src/main/resources/META-INF/beans.xml +++ b/integration-tests/jaxrs/app/src/main/resources/META-INF/beans.xml @@ -19,9 +19,8 @@ --> + xmlns="https://jakarta.ee/xml/ns/jakartaee" + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd" + bean-discovery-mode="all" version="4.0"> diff --git a/integration-tests/jaxrs/app/src/main/webapp/WEB-INF/beans.xml b/integration-tests/jaxrs/app/src/main/webapp/WEB-INF/beans.xml index e052c65014..803cef765f 100644 --- a/integration-tests/jaxrs/app/src/main/webapp/WEB-INF/beans.xml +++ b/integration-tests/jaxrs/app/src/main/webapp/WEB-INF/beans.xml @@ -19,9 +19,8 @@ --> + xmlns="https://jakarta.ee/xml/ns/jakartaee" + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd" + bean-discovery-mode="all" version="4.0"> diff --git a/integration-tests/jaxrs/tests/pom.xml b/integration-tests/jaxrs/tests/pom.xml index ba79d477f3..b35ffd95ce 100644 --- a/integration-tests/jaxrs/tests/pom.xml +++ b/integration-tests/jaxrs/tests/pom.xml @@ -34,8 +34,8 @@ its.jaxrs.tests - 2.1.1 - 1.2.21 + 3.0.0 + 2.0.2 @@ -46,8 +46,8 @@ compile - javax.ws.rs - javax.ws.rs-api + jakarta.ws.rs + jakarta.ws.rs-api ${jaxrs.api.version} provided @@ -71,15 +71,15 @@ runtime
    - javax.xml.bind - jaxb-api - 2.3.1 + jakarta.xml.bind + jakarta.xml.bind-api + 4.0.2 provided org.glassfish.jaxb jaxb-runtime - 2.3.9 + 3.0.2 runtime @@ -88,9 +88,9 @@ ${johnzon.version} - javax.json - javax.json-api - 1.1.4 + jakarta.json + jakarta.json-api + 2.1.3 diff --git a/integration-tests/jaxrs/tests/src/main/java/org/apache/shiro/testing/jaxrs/tests/AbstractShiroJaxRsIT.java b/integration-tests/jaxrs/tests/src/main/java/org/apache/shiro/testing/jaxrs/tests/AbstractShiroJaxRsIT.java index 7ffd1498a0..f64e996e0d 100644 --- a/integration-tests/jaxrs/tests/src/main/java/org/apache/shiro/testing/jaxrs/tests/AbstractShiroJaxRsIT.java +++ b/integration-tests/jaxrs/tests/src/main/java/org/apache/shiro/testing/jaxrs/tests/AbstractShiroJaxRsIT.java @@ -25,12 +25,12 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; +import jakarta.ws.rs.client.Client; +import jakarta.ws.rs.client.ClientBuilder; +import jakarta.ws.rs.client.WebTarget; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; import java.net.URI; import java.nio.charset.StandardCharsets; import java.util.Arrays; diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml index e63643fabb..532152f57d 100644 --- a/integration-tests/pom.xml +++ b/integration-tests/pom.xml @@ -42,13 +42,13 @@ - support - guice3 - guice4 + + + meecrowave-support - jaxrs - jakarta-ee-support - jakarta-ee + + + diff --git a/integration-tests/support/pom.xml b/integration-tests/support/pom.xml index 21c52d0c56..99031b0eb7 100644 --- a/integration-tests/support/pom.xml +++ b/integration-tests/support/pom.xml @@ -45,9 +45,10 @@ compile - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.apache.logging.log4j @@ -76,13 +77,13 @@ ${jetty.version} - org.eclipse.jetty - jetty-webapp + org.eclipse.jetty.ee9 + jetty-ee9-webapp ${jetty.version} - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} diff --git a/lang/pom.xml b/lang/pom.xml index 339608e204..7d553365eb 100644 --- a/lang/pom.xml +++ b/lang/pom.xml @@ -57,9 +57,10 @@ test - javax.servlet.jsp - jsp-api + jakarta.servlet.jsp + jakarta.servlet.jsp-api true + 3.0.0 diff --git a/lang/src/main/java/org/apache/shiro/lang/util/JspEngineDependency.java b/lang/src/main/java/org/apache/shiro/lang/util/JspEngineDependency.java index 92b7fc94a4..d17d1489c0 100644 --- a/lang/src/main/java/org/apache/shiro/lang/util/JspEngineDependency.java +++ b/lang/src/main/java/org/apache/shiro/lang/util/JspEngineDependency.java @@ -18,7 +18,7 @@ */ package org.apache.shiro.lang.util; -import javax.servlet.jsp.JspEngineInfo; +import jakarta.servlet.jsp.JspEngineInfo; /** * This only exists so bundle plugin doesn't complain about redundant dependencies diff --git a/pom.xml b/pom.xml index 359cc1e890..104dec1677 100644 --- a/pom.xml +++ b/pom.xml @@ -103,7 +103,7 @@ 5.3.8 2.7.4 - 1.3.2 + 2.0.0 1.1.1 11 9.4.58.v20250814 @@ -117,7 +117,7 @@ 5.3.39 2.7.18 4.2.3 - 2.1.6 + 3.1.0 4.17.0 1.82 @@ -131,7 +131,7 @@ 3.4.0 5.6.15.Final 1.2.5 - 1.3.5 + 2.1.1 1.18.42 ${jdk.version} @@ -320,16 +320,6 @@ - - org.apache.maven.plugins - maven-war-plugin - 3.4.0 - - - org.apache.maven.plugins - maven-help-plugin - 3.5.1 - org.apache.felix maven-bundle-plugin @@ -340,11 +330,6 @@ maven-site-plugin 4.0.0-M16 - - org.apache.maven.plugins - maven-scm-publish-plugin - 3.3.0 - org.apache.rat apache-rat-plugin @@ -494,80 +479,9 @@
    - - org.apache.maven.plugins - maven-shade-plugin - - - jakarta - package - - shade - - - false - true - jakarta - false - - - - - - - ${project.groupId}:${project.artifactId} - - - - - javax.annotation - jakarta.annotation - - javax.annotation.processing.** - - - - javax.enterprise - jakarta.enterprise - - javax.enterprise.deploy.** - - - - javax.inject - jakarta.inject - - - javax.json - jakarta.json - - - javax.servlet.http.HttpSessionContext - org.apache.shiro.web.servlet.HttpSessionContext - - - javax.servlet - jakarta.servlet - - - javax.websocket - jakarta.websocket - - - javax.ws.rs - jakarta.ws.rs - - - - - - org.apache.maven.plugins maven-checkstyle-plugin - 3.6.0 ${checkstyle.configLocation} ${checkstyle.suppressionsLocation} @@ -1138,8 +1052,8 @@ ${commons.cli.version}
    - javax.annotation - javax.annotation-api + jakarta.annotation + jakarta.annotation-api ${javax.annotation.api.version} @@ -1262,9 +1176,9 @@ true - javax.servlet.jsp - jsp-api - 2.2 + jakarta.servlet.jsp + jakarta.servlet.jsp-api + 3.0.0 provided @@ -1280,9 +1194,9 @@ provided - javax.servlet - javax.servlet-api - 4.0.1 + jakarta.servlet + jakarta.servlet-api + 5.0.0 provided diff --git a/samples/guice/pom.xml b/samples/guice/pom.xml index 8f497e0a27..7dae2f0a83 100644 --- a/samples/guice/pom.xml +++ b/samples/guice/pom.xml @@ -51,9 +51,10 @@ compile - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.apache.logging.log4j @@ -93,8 +94,8 @@ test - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java index c74ff9c7ca..f38e80e27e 100644 --- a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java +++ b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroGuiceBootstrap.java @@ -22,8 +22,8 @@ import com.google.inject.Injector; import com.google.inject.servlet.GuiceServletContextListener; -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletContextEvent; import static org.apache.shiro.guice.web.ShiroWebModule.guiceFilterModule; diff --git a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroNativeSessionsServletModule.java b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroNativeSessionsServletModule.java index 00425eb2b9..f72f5de418 100644 --- a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroNativeSessionsServletModule.java +++ b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroNativeSessionsServletModule.java @@ -34,8 +34,8 @@ import org.apache.shiro.web.servlet.SimpleCookie; import org.apache.shiro.web.session.mgt.DefaultWebSessionManager; -import javax.inject.Singleton; -import javax.servlet.ServletContext; +import jakarta.inject.Singleton; +import jakarta.servlet.ServletContext; import java.net.MalformedURLException; import java.net.URL; diff --git a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java index 21589161a4..6325560313 100644 --- a/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java +++ b/samples/guice/src/main/java/org/apache/shiro/samples/guice/SampleShiroServletModule.java @@ -30,8 +30,8 @@ import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.inject.Singleton; -import javax.servlet.ServletContext; +import jakarta.inject.Singleton; +import jakarta.servlet.ServletContext; import java.net.MalformedURLException; import java.net.URL; diff --git a/samples/guice/src/main/webapp/WEB-INF/web.xml b/samples/guice/src/main/webapp/WEB-INF/web.xml index b158ae40fa..64681aec7d 100644 --- a/samples/guice/src/main/webapp/WEB-INF/web.xml +++ b/samples/guice/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> org.apache.shiro.samples.guice.SampleShiroGuiceBootstrap diff --git a/samples/pom.xml b/samples/pom.xml index 083008ca51..58a3fcb828 100644 --- a/samples/pom.xml +++ b/samples/pom.xml @@ -41,16 +41,16 @@ aspectj quickstart - web - spring - spring-mvc - spring-hibernate - spring-boot - spring-boot-web - guice - quickstart-guice - servlet-plugin - web-jakarta + + + + + + + + + + @@ -60,7 +60,7 @@ [17,) - spring-boot-3-web + diff --git a/samples/servlet-plugin/pom.xml b/samples/servlet-plugin/pom.xml index 2e9eeffbc4..b70bf8d3eb 100644 --- a/samples/servlet-plugin/pom.xml +++ b/samples/servlet-plugin/pom.xml @@ -96,9 +96,10 @@ runtime
    - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 @@ -117,8 +118,8 @@ test - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/samples/servlet-plugin/src/main/webapp/WEB-INF/web.xml b/samples/servlet-plugin/src/main/webapp/WEB-INF/web.xml index 368fd606f9..a3938ea6e4 100644 --- a/samples/servlet-plugin/src/main/webapp/WEB-INF/web.xml +++ b/samples/servlet-plugin/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> index.jsp diff --git a/samples/spring-boot-3-web/pom.xml b/samples/spring-boot-3-web/pom.xml index 4bdcfe85d5..b00fc08bdd 100644 --- a/samples/spring-boot-3-web/pom.xml +++ b/samples/spring-boot-3-web/pom.xml @@ -44,28 +44,23 @@ org.apache.shiro shiro-core - jakarta org.apache.shiro shiro-web - jakarta org.apache.shiro shiro-spring-boot-web-starter - jakarta org.apache.shiro shiro-spring-boot-starter - jakarta org.apache.shiro shiro-spring - jakarta diff --git a/samples/spring-boot-web/pom.xml b/samples/spring-boot-web/pom.xml index 6d01482447..6ac5181120 100644 --- a/samples/spring-boot-web/pom.xml +++ b/samples/spring-boot-web/pom.xml @@ -50,9 +50,8 @@
    - javax.servlet - javax.servlet-api - 4.0.1 + jakarta.servlet + jakarta.servlet-api provided diff --git a/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/HelloController.java b/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/HelloController.java index 61fe77bf1c..213a79ead9 100644 --- a/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/HelloController.java +++ b/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/HelloController.java @@ -26,7 +26,7 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Collection; import java.util.Map; diff --git a/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/RestrictedErrorController.java b/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/RestrictedErrorController.java index de4ed6c079..198a7ef28b 100644 --- a/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/RestrictedErrorController.java +++ b/samples/spring-boot-web/src/main/java/org/apache/shiro/samples/RestrictedErrorController.java @@ -27,7 +27,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.context.request.ServletWebRequest; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Map; /** diff --git a/samples/spring-boot/pom.xml b/samples/spring-boot/pom.xml index 83ab0a2e1a..6f734d6803 100644 --- a/samples/spring-boot/pom.xml +++ b/samples/spring-boot/pom.xml @@ -53,8 +53,8 @@ true - javax.annotation - javax.annotation-api + jakarta.annotation + jakarta.annotation-api diff --git a/samples/spring-boot/src/main/java/org/apache/shiro/samples/QuickStart.java b/samples/spring-boot/src/main/java/org/apache/shiro/samples/QuickStart.java index 817f4aa13c..9ca4f9eb76 100644 --- a/samples/spring-boot/src/main/java/org/apache/shiro/samples/QuickStart.java +++ b/samples/spring-boot/src/main/java/org/apache/shiro/samples/QuickStart.java @@ -29,7 +29,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import javax.annotation.PostConstruct; +import jakarta.annotation.PostConstruct; /** * Simple Bean used to demonstrate subject usage. diff --git a/samples/spring-hibernate/pom.xml b/samples/spring-hibernate/pom.xml index a64b38f3e6..7edd24e9e0 100644 --- a/samples/spring-hibernate/pom.xml +++ b/samples/spring-hibernate/pom.xml @@ -61,9 +61,10 @@ runtime - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.hibernate @@ -114,8 +115,8 @@ test - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/Role.java b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/Role.java index bb87f7f9a9..b1f51de8aa 100644 --- a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/Role.java +++ b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/Role.java @@ -21,15 +21,15 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.ElementCollection; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.Index; -import javax.persistence.JoinTable; -import javax.persistence.Table; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.ElementCollection; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Index; +import jakarta.persistence.JoinTable; +import jakarta.persistence.Table; import java.util.Set; /** diff --git a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/User.java b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/User.java index 1bd70928cd..f9990586e8 100644 --- a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/User.java +++ b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/model/User.java @@ -21,16 +21,16 @@ import org.hibernate.annotations.Cache; import org.hibernate.annotations.CacheConcurrencyStrategy; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Index; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; -import javax.persistence.Table; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.Index; +import jakarta.persistence.JoinTable; +import jakarta.persistence.ManyToMany; +import jakarta.persistence.Table; import java.util.HashSet; import java.util.Set; diff --git a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/web/CurrentUserInterceptor.java b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/web/CurrentUserInterceptor.java index 0cd64e1f10..44fff7f07e 100644 --- a/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/web/CurrentUserInterceptor.java +++ b/samples/spring-hibernate/src/main/java/org/apache/shiro/samples/sprhib/web/CurrentUserInterceptor.java @@ -25,8 +25,8 @@ import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; /** * A Spring MVC interceptor that adds the currentUser into the request as a request attribute diff --git a/samples/spring-hibernate/src/main/webapp/WEB-INF/web.xml b/samples/spring-hibernate/src/main/webapp/WEB-INF/web.xml index 84072a7c07..9b69c25a2a 100644 --- a/samples/spring-hibernate/src/main/webapp/WEB-INF/web.xml +++ b/samples/spring-hibernate/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> org.apache.shiro.web.env.EnvironmentLoaderListener diff --git a/samples/web/pom.xml b/samples/web/pom.xml index 0352d4dd25..472ba12c58 100644 --- a/samples/web/pom.xml +++ b/samples/web/pom.xml @@ -73,9 +73,10 @@ runtime - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 5.0.0 org.apache.logging.log4j @@ -115,8 +116,8 @@ runtime - org.eclipse.jetty - apache-jsp + org.eclipse.jetty.ee9 + jetty-ee9-apache-jsp ${jetty.version} test diff --git a/samples/web/src/main/webapp/WEB-INF/web.xml b/samples/web/src/main/webapp/WEB-INF/web.xml index 379b042ef6..a3c09ecd4e 100644 --- a/samples/web/src/main/webapp/WEB-INF/web.xml +++ b/samples/web/src/main/webapp/WEB-INF/web.xml @@ -17,10 +17,10 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> org.apache.shiro.web.env.EnvironmentLoaderListener diff --git a/support/cdi/pom.xml b/support/cdi/pom.xml index 6e2f8a677d..0479d5f30d 100644 --- a/support/cdi/pom.xml +++ b/support/cdi/pom.xml @@ -38,7 +38,7 @@ jakarta.enterprise jakarta.enterprise.cdi-api - 2.0.2 + 4.0.1 provided true @@ -59,7 +59,7 @@ jakarta.validation jakarta.validation-api - 2.0.2 + 3.0.2 test @@ -109,30 +109,6 @@ - - org.apache.maven.plugins - maven-shade-plugin - - - - javax.faces - jakarta.faces - - - javax.el - jakarta.el - - - javax.interceptor - jakarta.interceptor - - - javax.activation - jakarta.activation - - - - org.apache.maven.plugins maven-checkstyle-plugin diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/AnnotatedTypeWrapper.java b/support/cdi/src/main/java/org/apache/shiro/cdi/AnnotatedTypeWrapper.java index 9cc5c2cb9e..56cab505d4 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/AnnotatedTypeWrapper.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/AnnotatedTypeWrapper.java @@ -17,7 +17,7 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.enterprise.inject.spi.AnnotatedType; +import jakarta.enterprise.inject.spi.AnnotatedType; import lombok.Getter; import lombok.experimental.Delegate; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/AopHelper.java b/support/cdi/src/main/java/org/apache/shiro/cdi/AopHelper.java index dc9ab2cde4..fc6ea6a909 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/AopHelper.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/AopHelper.java @@ -22,9 +22,9 @@ import java.util.List; import java.util.Map; import java.util.concurrent.Callable; -import javax.annotation.security.DenyAll; -import javax.annotation.security.PermitAll; -import javax.annotation.security.RolesAllowed; +import jakarta.annotation.security.DenyAll; +import jakarta.annotation.security.PermitAll; +import jakarta.annotation.security.RolesAllowed; import lombok.AccessLevel; import lombok.Getter; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroComponentProducer.java b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroComponentProducer.java index a678df86ad..27618360de 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroComponentProducer.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroComponentProducer.java @@ -17,10 +17,10 @@ import java.lang.reflect.ParameterizedType; import java.util.Optional; import java.util.function.Supplier; -import javax.enterprise.context.Dependent; -import javax.enterprise.context.RequestScoped; -import javax.enterprise.inject.Produces; -import javax.enterprise.inject.spi.InjectionPoint; +import jakarta.enterprise.context.Dependent; +import jakarta.enterprise.context.RequestScoped; +import jakarta.enterprise.inject.Produces; +import jakarta.enterprise.inject.spi.InjectionPoint; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecureAnnotation.java b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecureAnnotation.java index f9066a4133..709cb1f66b 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecureAnnotation.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecureAnnotation.java @@ -22,7 +22,7 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.Target; -import javax.interceptor.InterceptorBinding; +import jakarta.interceptor.InterceptorBinding; /** * CDI Marker Annotation to use Shiro diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityExtension.java b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityExtension.java index efc39f55ae..2e0ac0c060 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityExtension.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityExtension.java @@ -13,13 +13,13 @@ */ package org.apache.shiro.cdi; -import javax.annotation.security.DenyAll; -import javax.annotation.security.PermitAll; -import javax.annotation.security.RolesAllowed; -import javax.enterprise.event.Observes; -import javax.enterprise.inject.spi.Extension; -import javax.enterprise.inject.spi.ProcessAnnotatedType; -import javax.enterprise.inject.spi.WithAnnotations; +import jakarta.annotation.security.DenyAll; +import jakarta.annotation.security.PermitAll; +import jakarta.annotation.security.RolesAllowed; +import jakarta.enterprise.event.Observes; +import jakarta.enterprise.inject.spi.Extension; +import jakarta.enterprise.inject.spi.ProcessAnnotatedType; +import jakarta.enterprise.inject.spi.WithAnnotations; import org.apache.shiro.authz.annotation.RequiresAuthentication; import org.apache.shiro.authz.annotation.RequiresGuest; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityInterceptor.java b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityInterceptor.java index cdd802df4f..be152234a9 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityInterceptor.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/ShiroSecurityInterceptor.java @@ -15,11 +15,11 @@ import java.io.Serializable; import java.util.List; -import javax.annotation.Priority; -import javax.enterprise.context.Dependent; -import javax.interceptor.AroundInvoke; -import javax.interceptor.Interceptor; -import javax.interceptor.InvocationContext; +import jakarta.annotation.Priority; +import jakarta.enterprise.context.Dependent; +import jakarta.interceptor.AroundInvoke; +import jakarta.interceptor.Interceptor; +import jakarta.interceptor.InvocationContext; import org.apache.shiro.cdi.AopHelper.SecurityInterceptor; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/NoSessionCreation.java b/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/NoSessionCreation.java index f233408560..f2b4d271fa 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/NoSessionCreation.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/NoSessionCreation.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.cdi.annotations; -import javax.inject.Qualifier; +import jakarta.inject.Qualifier; import java.lang.annotation.Documented; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; diff --git a/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/Principal.java b/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/Principal.java index 3cd8257362..b5c04bd0d3 100644 --- a/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/Principal.java +++ b/support/cdi/src/main/java/org/apache/shiro/cdi/annotations/Principal.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.cdi.annotations; -import javax.inject.Qualifier; +import jakarta.inject.Qualifier; import java.lang.annotation.Documented; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; diff --git a/support/cdi/src/main/resources/META-INF/beans.xml b/support/cdi/src/main/resources/META-INF/beans.xml index 3227a065c4..40a7b1253b 100644 --- a/support/cdi/src/main/resources/META-INF/beans.xml +++ b/support/cdi/src/main/resources/META-INF/beans.xml @@ -17,8 +17,8 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd" + bean-discovery-mode="all" version="4.0"> diff --git a/support/cdi/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension b/support/cdi/src/main/resources/META-INF/services/jakarta.enterprise.inject.spi.Extension similarity index 100% rename from support/cdi/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension rename to support/cdi/src/main/resources/META-INF/services/jakarta.enterprise.inject.spi.Extension diff --git a/support/cdi/src/test/java/org/apache/shiro/cdi/AnnotatedTypeWrapperTest.java b/support/cdi/src/test/java/org/apache/shiro/cdi/AnnotatedTypeWrapperTest.java index 14aa49ce74..aabd587133 100644 --- a/support/cdi/src/test/java/org/apache/shiro/cdi/AnnotatedTypeWrapperTest.java +++ b/support/cdi/src/test/java/org/apache/shiro/cdi/AnnotatedTypeWrapperTest.java @@ -19,13 +19,13 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.ejb.Stateless; +import jakarta.ejb.Stateless; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.AssertionsForClassTypes.assertThatExceptionOfType; -import javax.enterprise.context.SessionScoped; -import javax.enterprise.inject.spi.AnnotatedType; +import jakarta.enterprise.context.SessionScoped; +import jakarta.enterprise.inject.spi.AnnotatedType; import org.apache.shiro.authz.annotation.RequiresAuthentication; import org.apache.shiro.authz.annotation.RequiresGuest; diff --git a/support/cdi/src/test/java/org/apache/shiro/cdi/AopHelperTest.java b/support/cdi/src/test/java/org/apache/shiro/cdi/AopHelperTest.java index cd747f72d4..baed4c7f50 100644 --- a/support/cdi/src/test/java/org/apache/shiro/cdi/AopHelperTest.java +++ b/support/cdi/src/test/java/org/apache/shiro/cdi/AopHelperTest.java @@ -21,11 +21,11 @@ import org.apache.shiro.cdi.AopHelper.SecurityInterceptor; import org.junit.jupiter.api.Test; -import javax.validation.constraints.NotNull; +import jakarta.validation.constraints.NotNull; import java.lang.annotation.Annotation; import java.util.List; -import static org.apache.shiro.cdi.AopHelper.autorizationAnnotationClasses; +import static org.apache.shiro.cdi.AopHelper.authorizationAnnotationClasses; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.ArgumentMatchers.any; @@ -88,9 +88,9 @@ void checkNotAnnotated() { @SneakyThrows @SuppressWarnings("MagicNumber") void checkAllAnnotationTypes() { - assertThat(autorizationAnnotationClasses.keySet().stream().distinct().count()).isEqualTo(8); - for (Class clz : autorizationAnnotationClasses.keySet()) { - assertThat(autorizationAnnotationClasses.get(clz).call().getAnnotationClass()).isEqualTo(clz); + assertThat(authorizationAnnotationClasses.keySet().stream().distinct().count()).isEqualTo(8); + for (Class clz : authorizationAnnotationClasses.keySet()) { + assertThat(authorizationAnnotationClasses.get(clz).call().getAnnotationClass()).isEqualTo(clz); } } } diff --git a/support/guice/pom.xml b/support/guice/pom.xml index 90e17ab116..ed1231506e 100644 --- a/support/guice/pom.xml +++ b/support/guice/pom.xml @@ -48,8 +48,9 @@ true - javax.annotation - javax.annotation-api + jakarta.annotation + jakarta.annotation-api + 2.1.1 com.google.inject @@ -69,9 +70,10 @@ commons-beanutils - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 6.0.0 org.slf4j diff --git a/support/guice/src/main/java/org/apache/shiro/guice/ShiroModule.java b/support/guice/src/main/java/org/apache/shiro/guice/ShiroModule.java index 36627bf38a..cf15836c7f 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/ShiroModule.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/ShiroModule.java @@ -46,7 +46,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.annotation.PreDestroy; +import jakarta.annotation.PreDestroy; import java.lang.reflect.Method; import java.util.Collection; import java.util.Collections; diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/FilterChainResolverProvider.java b/support/guice/src/main/java/org/apache/shiro/guice/web/FilterChainResolverProvider.java index 0f42b42fae..348375fc3a 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/FilterChainResolverProvider.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/FilterChainResolverProvider.java @@ -23,7 +23,7 @@ import java.util.Map; import java.util.Set; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import com.google.inject.Inject; import com.google.inject.Injector; diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/GuiceShiroFilter.java b/support/guice/src/main/java/org/apache/shiro/guice/web/GuiceShiroFilter.java index 969c627b23..bd27aeb730 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/GuiceShiroFilter.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/GuiceShiroFilter.java @@ -23,7 +23,7 @@ import org.apache.shiro.web.mgt.WebSecurityManager; import org.apache.shiro.web.servlet.AbstractShiroFilter; -import javax.inject.Inject; +import jakarta.inject.Inject; /** * Shiro filter that is managed by and receives its filter chain configurations from Guice. The convenience method to diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/ShiroWebModule.java b/support/guice/src/main/java/org/apache/shiro/guice/web/ShiroWebModule.java index c867f38c8a..14dbc9170e 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/ShiroWebModule.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/ShiroWebModule.java @@ -51,8 +51,8 @@ import org.apache.shiro.web.mgt.WebSecurityManager; import org.apache.shiro.web.session.mgt.ServletContainerSessionManager; -import javax.servlet.Filter; -import javax.servlet.ServletContext; +import jakarta.servlet.Filter; +import jakarta.servlet.ServletContext; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChain.java b/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChain.java index 5074df5b6d..1e4b4bc38d 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChain.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChain.java @@ -18,11 +18,11 @@ */ package org.apache.shiro.guice.web; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; import java.util.Iterator; diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChainResolver.java b/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChainResolver.java index 0d0a34d91f..bca3a4c790 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChainResolver.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/SimpleFilterChainResolver.java @@ -22,10 +22,10 @@ import java.util.Iterator; import java.util.Map; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import com.google.inject.Injector; import com.google.inject.Key; diff --git a/support/guice/src/main/java/org/apache/shiro/guice/web/WebGuiceEnvironment.java b/support/guice/src/main/java/org/apache/shiro/guice/web/WebGuiceEnvironment.java index 2a95a59ded..09e758639c 100644 --- a/support/guice/src/main/java/org/apache/shiro/guice/web/WebGuiceEnvironment.java +++ b/support/guice/src/main/java/org/apache/shiro/guice/web/WebGuiceEnvironment.java @@ -27,8 +27,8 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.inject.Named; -import javax.servlet.ServletContext; +import jakarta.inject.Named; +import jakarta.servlet.ServletContext; @Singleton class WebGuiceEnvironment implements WebEnvironment { diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/DefaultFiltersTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/DefaultFiltersTest.java index dfc126ae01..34228ead74 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/DefaultFiltersTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/DefaultFiltersTest.java @@ -22,7 +22,7 @@ import org.apache.shiro.web.filter.mgt.DefaultFilter; import org.junit.jupiter.api.Test; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.EnumSet; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/FilterChainResolverProviderTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/FilterChainResolverProviderTest.java index e634db15a6..1b69adec39 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/FilterChainResolverProviderTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/FilterChainResolverProviderTest.java @@ -27,7 +27,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.lang.reflect.Field; import java.util.LinkedHashMap; import java.util.Map; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/FilterConfigTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/FilterConfigTest.java index 255844c5d2..1cbd42ee23 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/FilterConfigTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/FilterConfigTest.java @@ -25,10 +25,10 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.junit.jupiter.api.Test; -import javax.servlet.FilterChain; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import static org.assertj.core.api.Assertions.assertThat; import static org.easymock.EasyMock.createMock; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/ShiroWebModuleTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/ShiroWebModuleTest.java index e6f4d388bc..2432c72537 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/ShiroWebModuleTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/ShiroWebModuleTest.java @@ -49,15 +49,15 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.parallel.Isolated; -import javax.inject.Named; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.inject.Named; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.Collection; import java.util.Collections; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainResolverTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainResolverTest.java index 35903bb896..be9c9bd398 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainResolverTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainResolverTest.java @@ -26,12 +26,12 @@ import org.easymock.IMocksControl; import org.junit.jupiter.api.Test; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.LinkedHashMap; import java.util.Map; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainTest.java index a0593397f7..56e40fb1ea 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/SimpleFilterChainTest.java @@ -20,10 +20,10 @@ import java.util.Arrays; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import org.easymock.Capture; import org.easymock.IMocksControl; diff --git a/support/guice/src/test/java/org/apache/shiro/guice/web/WebGuiceEnvironmentTest.java b/support/guice/src/test/java/org/apache/shiro/guice/web/WebGuiceEnvironmentTest.java index b08c74a181..b2a9587aff 100644 --- a/support/guice/src/test/java/org/apache/shiro/guice/web/WebGuiceEnvironmentTest.java +++ b/support/guice/src/test/java/org/apache/shiro/guice/web/WebGuiceEnvironmentTest.java @@ -26,7 +26,7 @@ import org.easymock.Capture; import org.junit.jupiter.api.Test; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.fail; diff --git a/support/jakarta-ee/pom.xml b/support/jakarta-ee/pom.xml index 9011eabd2d..ab61cb2161 100644 --- a/support/jakarta-ee/pom.xml +++ b/support/jakarta-ee/pom.xml @@ -40,7 +40,7 @@ jakarta.platform jakarta.jakartaee-api - 8.0.0 + 10.0.0 provided true @@ -72,7 +72,7 @@ org.omnifaces omnifaces - 3.14.11 + 4.6.5 org.jsoup @@ -128,38 +128,6 @@ - - org.apache.maven.plugins - maven-shade-plugin - - - - javax.faces - jakarta.faces - - - javax.el - jakarta.el - - - javax.interceptor - jakarta.interceptor - - - javax.activation - jakarta.activation - - - window.jsf - window.faces - - - jsf.ajax - faces.ajax - - - - org.apache.maven.plugins maven-checkstyle-plugin diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroFacesViewScoped.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroFacesViewScoped.java index 44e26b4b1e..9c8ce15992 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroFacesViewScoped.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroFacesViewScoped.java @@ -17,7 +17,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import javax.inject.Scope; +import jakarta.inject.Scope; /** * {@code @javax.faces.view.ViewScoped} interface that works with Shiro sessions diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroOmniViewScoped.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroOmniViewScoped.java index 5be6b1149f..9a3b9119ab 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroOmniViewScoped.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroOmniViewScoped.java @@ -17,7 +17,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import javax.inject.Scope; +import jakarta.inject.Scope; /** * {@code @org.omnifaces.cdi.ViewScoped} interface that works with Shiro sessions diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroScopeContext.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroScopeContext.java index c366896c5e..ef9236b255 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroScopeContext.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroScopeContext.java @@ -17,10 +17,10 @@ import java.io.Serializable; import java.lang.annotation.Annotation; -import javax.enterprise.context.spi.Context; -import javax.enterprise.context.spi.Contextual; -import javax.enterprise.context.spi.CreationalContext; -import javax.enterprise.inject.spi.CDI; +import jakarta.enterprise.context.spi.Context; +import jakarta.enterprise.context.spi.Contextual; +import jakarta.enterprise.context.spi.CreationalContext; +import jakarta.enterprise.inject.spi.CDI; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.SecurityUtils; @@ -45,7 +45,7 @@ public class ShiroScopeContext implements Context, Serializable { public ShiroScopeContext(Class scopeType, Class webScopeType) { this.scopeType = scopeType; this.webScopeType = webScopeType; - isViewScoped = webScopeType == javax.faces.view.ViewScoped.class + isViewScoped = webScopeType == jakarta.faces.view.ViewScoped.class || webScopeType == org.omnifaces.cdi.ViewScoped.class; } diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScopeExtension.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScopeExtension.java index cc54b628c3..805cac2bd1 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScopeExtension.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScopeExtension.java @@ -19,13 +19,13 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.enterprise.context.SessionScoped; -import javax.enterprise.event.Observes; -import javax.enterprise.inject.spi.AfterBeanDiscovery; -import javax.enterprise.inject.spi.BeforeBeanDiscovery; -import javax.enterprise.inject.spi.Extension; -import javax.enterprise.inject.spi.ProcessAnnotatedType; -import javax.enterprise.inject.spi.WithAnnotations; +import jakarta.enterprise.context.SessionScoped; +import jakarta.enterprise.event.Observes; +import jakarta.enterprise.inject.spi.AfterBeanDiscovery; +import jakarta.enterprise.inject.spi.BeforeBeanDiscovery; +import jakarta.enterprise.inject.spi.Extension; +import jakarta.enterprise.inject.spi.ProcessAnnotatedType; +import jakarta.enterprise.inject.spi.WithAnnotations; import org.apache.shiro.cdi.AnnotatedTypeWrapper; import org.apache.shiro.cdi.ShiroSecurityExtension.ShiroSecureAnnotated; @@ -41,7 +41,7 @@ public class ShiroSessionScopeExtension implements Extension, Serializable { @SuppressWarnings("ConstantName") private static final List contexts = Stream.of( new ShiroScopeContext(ShiroSessionScoped.class, SessionScoped.class), - new ShiroScopeContext(ShiroFacesViewScoped.class, javax.faces.view.ViewScoped.class), + new ShiroScopeContext(ShiroFacesViewScoped.class, jakarta.faces.view.ViewScoped.class), new ShiroScopeContext(ShiroOmniViewScoped.class, org.omnifaces.cdi.ViewScoped.class)) .collect(Collectors.toList()); @@ -50,7 +50,7 @@ public class ShiroSessionScopeExtension implements Extension, Serializable { private static final class SessionScopedAnnotated implements Serializable { } - @javax.faces.view.ViewScoped + @jakarta.faces.view.ViewScoped @SuppressWarnings("serial") private static final class FacesViewScopedAnnotated implements Serializable { } @@ -108,7 +108,7 @@ void addSessionScoped(@Observes @WithAnnotations(SessionScoped.class) Proces Set.of(SessionScopedAnnotated.class.getDeclaredAnnotations()[0]))); } - void addFacesViewScoped(@Observes @WithAnnotations(javax.faces.view.ViewScoped.class) ProcessAnnotatedType pat) { + void addFacesViewScoped(@Observes @WithAnnotations(jakarta.faces.view.ViewScoped.class) ProcessAnnotatedType pat) { pat.setAnnotatedType(new AnnotatedTypeWrapper<>(pat.getAnnotatedType(), true, Set.of(ShiroFacesViewScopedAnnotated.class.getDeclaredAnnotations()[0], ShiroSecureAnnotated.class.getDeclaredAnnotations()[0]), diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScoped.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScoped.java index 41e68ee8d7..55dcc513a9 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScoped.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/cdi/ShiroSessionScoped.java @@ -17,7 +17,7 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; -import javax.inject.Scope; +import jakarta.inject.Scope; /** * {@code @SessionScoped} interface that works with Shiro sessions diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticatedTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticatedTag.java index 5fdbdffa49..46f864df64 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticatedTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticatedTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body only if the current user has executed a successful authentication attempt diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticationTagHandler.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticationTagHandler.java index c20974727c..147aedba07 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticationTagHandler.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/AuthenticationTagHandler.java @@ -13,11 +13,11 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.el.ELException; -import javax.faces.FacesException; -import javax.faces.component.UIComponent; -import javax.faces.view.facelets.FaceletContext; -import javax.faces.view.facelets.TagConfig; +import jakarta.el.ELException; +import jakarta.faces.FacesException; +import jakarta.faces.component.UIComponent; +import jakarta.faces.view.facelets.FaceletContext; +import jakarta.faces.view.facelets.TagConfig; import java.io.IOException; import lombok.extern.slf4j.Slf4j; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/GuestTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/GuestTag.java index cbcb07d509..a19a843cad 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/GuestTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/GuestTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body if the current user is not known to the system, either because they diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyPermissionTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyPermissionTag.java index 6df2ebf574..344bfcea44 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyPermissionTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyPermissionTag.java @@ -15,7 +15,7 @@ import org.apache.shiro.subject.Subject; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body only if the current user has at least one of the comma-delimited diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyRolesTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyRolesTag.java index 7d7d857e07..e658b8baf9 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyRolesTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasAnyRolesTag.java @@ -15,7 +15,7 @@ import org.apache.shiro.subject.Subject; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasPermissionTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasPermissionTag.java index 1d4aec0920..61fadba0c0 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasPermissionTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasPermissionTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body only if the current user has the string permissions diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasRoleTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasRoleTag.java index a2e663f1b5..e64c2240d7 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasRoleTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/HasRoleTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksPermissionTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksPermissionTag.java index 1e83b213f0..b049bb4c7f 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksPermissionTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksPermissionTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksRoleTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksRoleTag.java index 10abc72c59..7ccd75fef8 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksRoleTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/LacksRoleTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/NotAuthenticatedTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/NotAuthenticatedTag.java index 55bd2feed8..656320a9fc 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/NotAuthenticatedTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/NotAuthenticatedTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body only if the current user has not executed a successful authentication diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PermissionTagHandler.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PermissionTagHandler.java index 83a846eeaa..941ef1d06e 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PermissionTagHandler.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PermissionTagHandler.java @@ -13,13 +13,13 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.el.ELException; -import javax.el.ValueExpression; -import javax.faces.FacesException; -import javax.faces.component.UIComponent; -import javax.faces.view.facelets.FaceletContext; -import javax.faces.view.facelets.TagAttribute; -import javax.faces.view.facelets.TagConfig; +import jakarta.el.ELException; +import jakarta.el.ValueExpression; +import jakarta.faces.FacesException; +import jakarta.faces.component.UIComponent; +import jakarta.faces.view.facelets.FaceletContext; +import jakarta.faces.view.facelets.TagAttribute; +import jakarta.faces.view.facelets.TagConfig; import java.io.IOException; /** diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PrincipalTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PrincipalTag.java index c9b27a789b..560c10e6c4 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PrincipalTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/PrincipalTag.java @@ -15,7 +15,7 @@ import org.apache.shiro.subject.PrincipalCollection; -import javax.faces.context.FacesContext; +import jakarta.faces.context.FacesContext; import java.beans.BeanInfo; import java.beans.IntrospectionException; import java.beans.Introspector; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/RememberedTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/RememberedTag.java index 061345f236..3cabfb5543 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/RememberedTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/RememberedTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body only if the current user's identity (aka principals) is remembered from a diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureComponent.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureComponent.java index ce98900c70..d40c803a78 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureComponent.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureComponent.java @@ -16,8 +16,8 @@ import org.apache.shiro.SecurityUtils; import org.apache.shiro.subject.Subject; -import javax.faces.component.UIOutput; -import javax.faces.context.FacesContext; +import jakarta.faces.component.UIOutput; +import jakarta.faces.context.FacesContext; import java.io.IOException; /** diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureTagHandler.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureTagHandler.java index 6c1ccc2588..914a784ee3 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureTagHandler.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/SecureTagHandler.java @@ -16,8 +16,8 @@ import org.apache.shiro.SecurityUtils; import org.apache.shiro.subject.Subject; -import javax.faces.view.facelets.TagConfig; -import javax.faces.view.facelets.TagHandler; +import jakarta.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagHandler; /** * Base class for all TagHandlers diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/UserTag.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/UserTag.java index a8dc641378..d1979d18bd 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/UserTag.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/faces/tags/UserTag.java @@ -13,7 +13,7 @@ */ package org.apache.shiro.ee.faces.tags; -import javax.faces.view.facelets.TagConfig; +import jakarta.faces.view.facelets.TagConfig; /** * Tag that renders the tag body if the current user known to the system, either from a successful login attempt diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/AuthenticationFilterDelegate.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/AuthenticationFilterDelegate.java index 509da6079c..7cb31df49f 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/AuthenticationFilterDelegate.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/AuthenticationFilterDelegate.java @@ -23,9 +23,9 @@ import org.apache.shiro.subject.Subject; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.concurrent.TimeUnit; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormAuthenticationFilter.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormAuthenticationFilter.java index 1c2b6b7b44..0e1fbb57f8 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormAuthenticationFilter.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormAuthenticationFilter.java @@ -21,9 +21,9 @@ import org.apache.shiro.ee.filters.Forms.FallbackPredicate; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import lombok.experimental.Delegate; import org.apache.shiro.authc.AuthenticationException; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupport.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupport.java index 27808182ba..1ca95f1a59 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupport.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupport.java @@ -52,13 +52,13 @@ import static java.util.function.Predicate.not; import java.util.regex.Pattern; import java.util.stream.Collectors; -import static javax.faces.application.StateManager.STATE_SAVING_METHOD_CLIENT; -import static javax.faces.application.StateManager.STATE_SAVING_METHOD_PARAM_NAME; -import javax.servlet.ServletContext; -import javax.servlet.ServletRequest; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import static jakarta.faces.view.StateManagementStrategy.STATE_SAVING_METHOD_CLIENT; +import static jakarta.faces.view.StateManagementStrategy.STATE_SAVING_METHOD_PARAM_NAME; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import lombok.AccessLevel; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -91,11 +91,11 @@ public class FormResubmitSupport { static final String SESSION_EXPIRED_PARAMETER = "org.apache.shiro.sessionExpired"; static final String FORM_IS_RESUBMITTED = "org.apache.shiro.form-is-resubmitted"; // encoded view state - private static final String FACES_VIEW_STATE = jakartify("javax.faces.ViewState"); + private static final String FACES_VIEW_STATE = jakartify("jakarta.faces.ViewState"); private static final String FACES_VIEW_STATE_EQUALS = FACES_VIEW_STATE + "="; private static final Pattern VIEW_STATE_PATTERN = Pattern.compile(String.format("(.*)(%s[-]?[\\d]+:[-]?[\\d]+)(.*)", FACES_VIEW_STATE_EQUALS)); - private static final String PARTIAL_VIEW = jakartify("javax.faces.partial"); + private static final String PARTIAL_VIEW = jakartify("jakarta.faces.partial"); private static final Pattern PARTIAL_REQUEST_PATTERN = Pattern.compile(String.format("[\\&]?%s.\\w+=[\\w\\s:%%\\d]*", PARTIAL_VIEW)); private static final Pattern INITIAL_AMPERSAND = Pattern.compile("^\\&"); diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupportCookies.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupportCookies.java index 465ddde945..06b17979a8 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupportCookies.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/FormResubmitSupportCookies.java @@ -21,10 +21,10 @@ import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.servlet.ServletContext; -import javax.servlet.ServletRequest; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletResponse; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.NonNull; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/Forms.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/Forms.java index 42ba0a85a5..574ecb2581 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/Forms.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/Forms.java @@ -20,10 +20,10 @@ import static org.apache.shiro.ee.filters.LogoutFilter.LOGOUT_PREDICATE_ATTR_NAME; import static org.apache.shiro.ee.listeners.EnvironmentLoaderListener.isFormResubmitDisabled; import java.util.concurrent.TimeUnit; -import javax.enterprise.context.ApplicationScoped; -import javax.inject.Named; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Named; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.SneakyThrows; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/LogoutFilter.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/LogoutFilter.java index 5ac7e7fdaf..53c998f2a2 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/LogoutFilter.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/LogoutFilter.java @@ -19,9 +19,9 @@ import org.apache.shiro.ee.filters.Forms.FallbackPredicate; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import lombok.experimental.Delegate; import org.apache.shiro.authc.AuthenticationException; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/PassThruAuthenticationFilter.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/PassThruAuthenticationFilter.java index 00318874ca..0ed29a1b0d 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/PassThruAuthenticationFilter.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/PassThruAuthenticationFilter.java @@ -14,8 +14,8 @@ package org.apache.shiro.ee.filters; import org.apache.shiro.ee.filters.AuthenticationFilterDelegate.MethodsFromFilter; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import lombok.experimental.Delegate; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.authc.AuthenticationException; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/ShiroFilter.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/ShiroFilter.java index d3fda76134..41796d460e 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/ShiroFilter.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/ShiroFilter.java @@ -26,17 +26,17 @@ import java.security.Principal; import java.util.Optional; import java.util.regex.Pattern; -import javax.servlet.DispatcherType; -import javax.servlet.FilterChain; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.annotation.WebFilter; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpServletResponseWrapper; +import jakarta.servlet.DispatcherType; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.annotation.WebFilter; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; import lombok.AccessLevel; import lombok.Getter; import lombok.RequiredArgsConstructor; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/SslFilter.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/SslFilter.java index 9a9a4dcbb2..ac8abe002e 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/SslFilter.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/filters/SslFilter.java @@ -15,9 +15,9 @@ import static org.apache.shiro.ee.filters.FormResubmitSupport.hasFacesContext; import java.io.IOException; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import lombok.Getter; import lombok.Setter; import org.omnifaces.util.Faces; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/EnvironmentLoaderListener.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/EnvironmentLoaderListener.java index 4fb170bfdf..0391336840 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/EnvironmentLoaderListener.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/EnvironmentLoaderListener.java @@ -15,12 +15,12 @@ import java.util.Optional; import java.util.Set; -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; -import javax.servlet.ServletContextListener; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletContextEvent; +import jakarta.servlet.ServletContextListener; -import javax.servlet.SessionTrackingMode; -import javax.servlet.annotation.WebListener; +import jakarta.servlet.SessionTrackingMode; +import jakarta.servlet.annotation.WebListener; import org.apache.shiro.web.env.EnvironmentLoader; import org.apache.shiro.web.env.WebEnvironment; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/IniEnvironment.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/IniEnvironment.java index 46c0d9ff30..04461e9c88 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/IniEnvironment.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/listeners/IniEnvironment.java @@ -23,7 +23,7 @@ import java.util.Map; import java.util.function.Function; import java.util.function.Supplier; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.cdi.annotations.CipherKeySupplier; diff --git a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/util/JakartaTransformer.java b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/util/JakartaTransformer.java index a89259bd6f..8e7a0a6f9b 100644 --- a/support/jakarta-ee/src/main/java/org/apache/shiro/ee/util/JakartaTransformer.java +++ b/support/jakarta-ee/src/main/java/org/apache/shiro/ee/util/JakartaTransformer.java @@ -14,7 +14,7 @@ package org.apache.shiro.ee.util; import java.util.regex.Pattern; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import lombok.AccessLevel; import lombok.Getter; diff --git a/support/jakarta-ee/src/main/resources/META-INF/beans.xml b/support/jakarta-ee/src/main/resources/META-INF/beans.xml index 3227a065c4..40a7b1253b 100644 --- a/support/jakarta-ee/src/main/resources/META-INF/beans.xml +++ b/support/jakarta-ee/src/main/resources/META-INF/beans.xml @@ -17,8 +17,8 @@ ~ specific language governing permissions and limitations ~ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/beans_4_0.xsd" + bean-discovery-mode="all" version="4.0"> diff --git a/support/jakarta-ee/src/main/resources/META-INF/faces-config.xml b/support/jakarta-ee/src/main/resources/META-INF/faces-config.xml index f9a7224a2c..bc329d9a5c 100644 --- a/support/jakarta-ee/src/main/resources/META-INF/faces-config.xml +++ b/support/jakarta-ee/src/main/resources/META-INF/faces-config.xml @@ -19,10 +19,10 @@ under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-facesconfig_4_0.xsd"> org.apache.shiro.ee.faces.tags.PrincipalTag org.apache.shiro.ee.faces.tags.PrincipalTag diff --git a/support/jakarta-ee/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension b/support/jakarta-ee/src/main/resources/META-INF/services/jakarta.enterprise.inject.spi.Extension similarity index 100% rename from support/jakarta-ee/src/main/resources/META-INF/services/javax.enterprise.inject.spi.Extension rename to support/jakarta-ee/src/main/resources/META-INF/services/jakarta.enterprise.inject.spi.Extension diff --git a/support/jakarta-ee/src/main/resources/META-INF/shiro-faces.taglib.xml b/support/jakarta-ee/src/main/resources/META-INF/shiro-faces.taglib.xml index 904aa27e23..8e1e138324 100644 --- a/support/jakarta-ee/src/main/resources/META-INF/shiro-faces.taglib.xml +++ b/support/jakarta-ee/src/main/resources/META-INF/shiro-faces.taglib.xml @@ -20,10 +20,10 @@ --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-facelettaglibrary_4_0.xsd"> http://shiro.apache.org/tags diff --git a/support/jakarta-ee/src/test/java/org/apache/shiro/ee/cdi/ShiroScopeContextTest.java b/support/jakarta-ee/src/test/java/org/apache/shiro/ee/cdi/ShiroScopeContextTest.java index 1d47a183a4..204bde427c 100644 --- a/support/jakarta-ee/src/test/java/org/apache/shiro/ee/cdi/ShiroScopeContextTest.java +++ b/support/jakarta-ee/src/test/java/org/apache/shiro/ee/cdi/ShiroScopeContextTest.java @@ -24,11 +24,11 @@ import org.mockito.MockedStatic; import org.mockito.junit.jupiter.MockitoExtension; -import javax.enterprise.context.SessionScoped; -import javax.enterprise.context.spi.CreationalContext; -import javax.enterprise.inject.spi.Bean; -import javax.enterprise.inject.spi.CDI; -import javax.faces.view.ViewScoped; +import jakarta.enterprise.context.SessionScoped; +import jakarta.enterprise.context.spi.CreationalContext; +import jakarta.enterprise.inject.spi.Bean; +import jakarta.enterprise.inject.spi.CDI; +import jakarta.faces.view.ViewScoped; import java.io.Serializable; import java.lang.annotation.Annotation; diff --git a/support/jakarta-ee/src/test/java/org/apache/shiro/ee/filters/FormSupportTest.java b/support/jakarta-ee/src/test/java/org/apache/shiro/ee/filters/FormSupportTest.java index ce8f47720e..af26e86dcd 100644 --- a/support/jakarta-ee/src/test/java/org/apache/shiro/ee/filters/FormSupportTest.java +++ b/support/jakarta-ee/src/test/java/org/apache/shiro/ee/filters/FormSupportTest.java @@ -25,7 +25,7 @@ import java.nio.charset.StandardCharsets; import java.util.List; import java.util.Map; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import static org.apache.shiro.ee.util.JakartaTransformer.jakartify; import static org.assertj.core.api.Assertions.assertThat; @@ -81,12 +81,12 @@ void dontSwitchToHttpsWhenCustomPortNoTrailingSlash() { void viewStatePattern() { String statefulFormData = "j_idt5%3Dj_idt5%26j_idt5%3Aj_idt7%3Daaa%26j_idt5%3Aj_idt9%3Dbbb%26j_idt5%3A" - + "j_idt11%3DSubmit+...%26" + jakartify("javax.faces.ViewState") + + "j_idt11%3DSubmit+...%26" + jakartify("jakarta.faces.ViewState") + "%3D-8335355445345003673%3A-6008443334776649058"; assertThat(isJSFStatefulForm(decode(statefulFormData))).isTrue(); String statelessFormData = "j_idt5%3Dj_idt5%26j_idt5%3Aj_idt7%3Daaa%26j_idt5%3Aj_idt9%3Dbbb%26j_idt5%3A" - + "j_idt11%3DSubmit+...%26" + jakartify("javax.faces.ViewState") + "%3Dstateless"; + + "j_idt11%3DSubmit+...%26" + jakartify("jakarta.faces.ViewState") + "%3Dstateless"; assertThat(isJSFStatefulForm(statelessFormData)).isFalse(); assertThatExceptionOfType(NullPointerException.class).isThrownBy(() -> isJSFStatefulForm(null)); String nonJSFFormData @@ -100,49 +100,49 @@ void viewStatePattern() { void extractViewState() { assertThatExceptionOfType(NullPointerException.class).isThrownBy(() -> extractJSFNewViewState(null, null)); assertThat(extractJSFNewViewState("", "hello")).isEqualTo("hello"); - assertThat(extractJSFNewViewState("xxx", jakartify("javax.faces.ViewState=stateless&hello=bye"))) - .isEqualTo(jakartify("javax.faces.ViewState=stateless&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("javax.faces.ViewState=stateless&hello=bye"))) - .isEqualTo(jakartify("javax.faces.ViewState=stateless&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("aaa=bbb&javax.faces.ViewState=xxx:yyy&hello=bye"))) - .isEqualTo(jakartify("aaa=bbb&javax.faces.ViewState=xxx:yyy&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("javax.faces.ViewState=987:654&hello=bye"))) - .isEqualTo(jakartify("javax.faces.ViewState=123:456&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("javax.faces.ViewState=987:654&hello=bye"))) - .isEqualTo(jakartify("javax.faces.ViewState=-123:-456&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("javax.faces.ViewState=-987:-654&hello=bye"))) - .isEqualTo(jakartify("javax.faces.ViewState=-123:-456&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("aaa=bbb&javax.faces.ViewState=-987:-654&hello=bye"))) - .isEqualTo(jakartify("aaa=bbb&javax.faces.ViewState=-123:-456&hello=bye")); - assertThat(extractJSFNewViewState(jakartify(""), - jakartify("aaa=bbb&javax.faces.ViewState=-987:-654"))) - .isEqualTo(jakartify("aaa=bbb&javax.faces.ViewState=-123:-456")); + assertThat(extractJSFNewViewState("xxx", jakartify("jakarta.faces.ViewState=stateless&hello=bye"))) + .isEqualTo(jakartify("jakarta.faces.ViewState=stateless&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("jakarta.faces.ViewState=stateless&hello=bye"))) + .isEqualTo(jakartify("jakarta.faces.ViewState=stateless&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("aaa=bbb&jakarta.faces.ViewState=xxx:yyy&hello=bye"))) + .isEqualTo(jakartify("aaa=bbb&jakarta.faces.ViewState=xxx:yyy&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("jakarta.faces.ViewState=987:654&hello=bye"))) + .isEqualTo(jakartify("jakarta.faces.ViewState=123:456&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("jakarta.faces.ViewState=987:654&hello=bye"))) + .isEqualTo(jakartify("jakarta.faces.ViewState=-123:-456&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("jakarta.faces.ViewState=-987:-654&hello=bye"))) + .isEqualTo(jakartify("jakarta.faces.ViewState=-123:-456&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("aaa=bbb&jakarta.faces.ViewState=-987:-654&hello=bye"))) + .isEqualTo(jakartify("aaa=bbb&jakarta.faces.ViewState=-123:-456&hello=bye")); + assertThat(extractJSFNewViewState(jakartify(""), + jakartify("aaa=bbb&jakarta.faces.ViewState=-987:-654"))) + .isEqualTo(jakartify("aaa=bbb&jakarta.faces.ViewState=-123:-456")); } @Test void noAjaxRequests() { - assertThat(noJSFAjaxRequests(jakartify("aaa=bbb&javax.faces.ViewState=-123:-456") - + jakartify("&javax.faces.partial.ajax=true&hello=bye"), false)).isEqualTo(new PartialAjaxResult( - jakartify("aaa=bbb&javax.faces.ViewState=-123:-456&hello=bye"), + assertThat(noJSFAjaxRequests(jakartify("aaa=bbb&jakarta.faces.ViewState=-123:-456") + + jakartify("&jakarta.faces.partial.ajax=true&hello=bye"), false)).isEqualTo(new PartialAjaxResult( + jakartify("aaa=bbb&jakarta.faces.ViewState=-123:-456&hello=bye"), true, false)); assertThat(noJSFAjaxRequests("j_idt12=j_idt12&j_idt12:j_idt14=asdf&j_idt12:j_idt16=asdf" - + jakartify("&javax.faces.ViewState=7709788254588873136:-8052771455757429917") - + jakartify("&javax.faces.source=j_idt12:j_idt18") - + jakartify("&javax.faces.partial.event=click") - + jakartify("&javax.faces.partial.execute=j_idt12:j_idt18 j_idt12") - + jakartify("&javax.faces.partial.render=j_idt12") - + jakartify("&javax.faces.behavior.event=action") - + jakartify("&javax.faces.partial.ajax=false"), false)) + + jakartify("&jakarta.faces.ViewState=7709788254588873136:-8052771455757429917") + + jakartify("&jakarta.faces.source=j_idt12:j_idt18") + + jakartify("&jakarta.faces.partial.event=click") + + jakartify("&jakarta.faces.partial.execute=j_idt12:j_idt18 j_idt12") + + jakartify("&jakarta.faces.partial.render=j_idt12") + + jakartify("&jakarta.faces.behavior.event=action") + + jakartify("&jakarta.faces.partial.ajax=false"), false)) .isEqualTo(new PartialAjaxResult("j_idt12=j_idt12&j_idt12:j_idt14=asdf&j_idt12:j_idt16=asdf" - + jakartify("&javax.faces.ViewState=7709788254588873136:-8052771455757429917") - + jakartify("&javax.faces.source=j_idt12:j_idt18") - + jakartify("&javax.faces.behavior.event=action"), true, false)); + + jakartify("&jakarta.faces.ViewState=7709788254588873136:-8052771455757429917") + + jakartify("&jakarta.faces.source=j_idt12:j_idt18") + + jakartify("&jakarta.faces.behavior.event=action"), true, false)); } @Test diff --git a/support/jaxrs/pom.xml b/support/jaxrs/pom.xml index 60fbb3d841..a9cc1a0c18 100644 --- a/support/jaxrs/pom.xml +++ b/support/jaxrs/pom.xml @@ -61,9 +61,9 @@ test - javax.xml.bind - jaxb-api - 2.3.1 + jakarta.xml.bind + jakarta.xml.bind-api + 4.0.2 test diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/AnnotationAuthorizationFilter.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/AnnotationAuthorizationFilter.java index 4e2421aa2a..c51ac4c6e1 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/AnnotationAuthorizationFilter.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/AnnotationAuthorizationFilter.java @@ -34,11 +34,11 @@ import org.apache.shiro.authz.aop.RolesAllowedAnnotationHandler; import org.apache.shiro.authz.aop.UserAnnotationHandler; -import javax.annotation.security.DenyAll; -import javax.annotation.security.PermitAll; -import javax.annotation.security.RolesAllowed; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; +import jakarta.annotation.security.DenyAll; +import jakarta.annotation.security.PermitAll; +import jakarta.annotation.security.RolesAllowed; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; import java.io.IOException; import java.lang.annotation.Annotation; import java.util.Collection; diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroAnnotationFilterFeature.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroAnnotationFilterFeature.java index 3d9e62f528..536545629c 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroAnnotationFilterFeature.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroAnnotationFilterFeature.java @@ -26,18 +26,18 @@ import org.apache.shiro.authz.annotation.RequiresUser; import org.apache.shiro.web.filter.authz.AuthorizationFilter; -import javax.ws.rs.Priorities; -import javax.ws.rs.container.DynamicFeature; -import javax.ws.rs.container.ResourceInfo; -import javax.ws.rs.core.FeatureContext; +import jakarta.ws.rs.Priorities; +import jakarta.ws.rs.container.DynamicFeature; +import jakarta.ws.rs.container.ResourceInfo; +import jakarta.ws.rs.core.FeatureContext; import java.lang.annotation.Annotation; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.annotation.security.DenyAll; -import javax.annotation.security.PermitAll; -import javax.annotation.security.RolesAllowed; +import jakarta.annotation.security.DenyAll; +import jakarta.annotation.security.PermitAll; +import jakarta.annotation.security.RolesAllowed; import static org.apache.shiro.web.jaxrs.SubjectPrincipalRequestFilter.SHIRO_WEB_JAXRS_DISABLE_PRINCIPAL_PARAM; diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroFeature.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroFeature.java index 8de8be8723..682456e85f 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroFeature.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroFeature.java @@ -18,10 +18,10 @@ */ package org.apache.shiro.web.jaxrs; -import javax.ws.rs.core.Application; -import javax.ws.rs.core.Feature; -import javax.ws.rs.core.FeatureContext; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.core.Application; +import jakarta.ws.rs.core.Feature; +import jakarta.ws.rs.core.FeatureContext; +import jakarta.ws.rs.ext.Provider; /** diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroSecurityContext.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroSecurityContext.java index 872c8e8c3b..d716107dc6 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroSecurityContext.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/ShiroSecurityContext.java @@ -22,8 +22,8 @@ import org.apache.shiro.subject.PrincipalCollection; import org.apache.shiro.subject.Subject; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.core.SecurityContext; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.core.SecurityContext; import java.security.Principal; /** diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilter.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilter.java index 23559b65dc..ec64b0dead 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilter.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilter.java @@ -18,14 +18,14 @@ */ package org.apache.shiro.web.jaxrs; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.ext.Provider; +import jakarta.ws.rs.container.ContainerRequestContext; +import jakarta.ws.rs.container.ContainerRequestFilter; +import jakarta.ws.rs.container.PreMatching; +import jakarta.ws.rs.ext.Provider; import java.io.IOException; /** - * A {@link ContainerRequestFilter} that replaces the {@link javax.ws.rs.core.SecurityContext} + * A {@link ContainerRequestFilter} that replaces the {@link jakarta.ws.rs.core.SecurityContext} * with a {@link ShiroSecurityContext}. * * @since 1.4 diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthenticatedExceptionExceptionMapper.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthenticatedExceptionExceptionMapper.java index a576aa40c9..982b993094 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthenticatedExceptionExceptionMapper.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthenticatedExceptionExceptionMapper.java @@ -23,9 +23,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; -import javax.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; +import jakarta.ws.rs.ext.ExceptionMapper; /** * JAX-RS exception mapper used to map Shiro {@link UnauthenticatedException} to HTTP status codes. diff --git a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapper.java b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapper.java index 113be09db1..1f469035b6 100644 --- a/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapper.java +++ b/support/jaxrs/src/main/java/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapper.java @@ -23,9 +23,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.ws.rs.core.Response; -import javax.ws.rs.core.Response.Status; -import javax.ws.rs.ext.ExceptionMapper; +import jakarta.ws.rs.core.Response; +import jakarta.ws.rs.core.Response.Status; +import jakarta.ws.rs.ext.ExceptionMapper; /** * JAX-RS exception mapper used to map Shiro {@link UnauthorizedException} to HTTP status codes. diff --git a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/ShiroSecurityContextTest.groovy b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/ShiroSecurityContextTest.groovy index 84fbadc8f3..0348b2cf9d 100644 --- a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/ShiroSecurityContextTest.groovy +++ b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/ShiroSecurityContextTest.groovy @@ -24,8 +24,8 @@ import org.apache.shiro.util.ThreadContext import org.junit.jupiter.api.AfterEach import org.junit.jupiter.api.Test -import javax.ws.rs.container.ContainerRequestContext -import javax.ws.rs.core.SecurityContext +import jakarta.ws.rs.container.ContainerRequestContext +import jakarta.ws.rs.core.SecurityContext import java.security.Principal import static org.easymock.EasyMock.* diff --git a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilterTest.groovy b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilterTest.groovy index 4688fadd73..a18ae52412 100644 --- a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilterTest.groovy +++ b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/SubjectPrincipalRequestFilterTest.groovy @@ -21,8 +21,8 @@ package org.apache.shiro.web.jaxrs import org.easymock.Capture import org.junit.jupiter.api.Test -import javax.ws.rs.container.ContainerRequestContext -import javax.ws.rs.core.SecurityContext +import jakarta.ws.rs.container.ContainerRequestContext +import jakarta.ws.rs.core.SecurityContext import static org.easymock.EasyMock.* import static org.junit.jupiter.api.Assertions.* diff --git a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapperTest.groovy b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapperTest.groovy index 3e9ac3f1ef..bb60d08a52 100644 --- a/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapperTest.groovy +++ b/support/jaxrs/src/test/groovy/org/apache/shiro/web/jaxrs/UnauthorizedExceptionExceptionMapperTest.groovy @@ -24,8 +24,8 @@ import org.apache.shiro.authz.UnauthenticatedException import org.apache.shiro.authz.UnauthorizedException import org.junit.jupiter.api.Test -import javax.ws.rs.core.Response -import javax.ws.rs.ext.ExceptionMapper +import jakarta.ws.rs.core.Response +import jakarta.ws.rs.ext.ExceptionMapper import static org.junit.jupiter.api.Assertions.assertEquals diff --git a/support/pom.xml b/support/pom.xml index e9c9ee68a7..7a30e0647f 100644 --- a/support/pom.xml +++ b/support/pom.xml @@ -37,13 +37,13 @@ ehcache hazelcast quartz - spring - guice - spring-boot + + + servlet-plugin - jaxrs + features - cdi - jakarta-ee + + diff --git a/support/servlet-plugin/src/main/resources/META-INF/web-fragment.xml b/support/servlet-plugin/src/main/resources/META-INF/web-fragment.xml index 946700418a..bdfc8d9fd7 100644 --- a/support/servlet-plugin/src/main/resources/META-INF/web-fragment.xml +++ b/support/servlet-plugin/src/main/resources/META-INF/web-fragment.xml @@ -18,10 +18,10 @@ ~ under the License. --> + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-fragment_6_0.xsd" + version="6.0"> ApacheShiro diff --git a/support/spring-boot/spring-boot-starter/src/main/java/org/apache/shiro/spring/config/web/autoconfigure/ShiroWebFilterConfiguration.java b/support/spring-boot/spring-boot-starter/src/main/java/org/apache/shiro/spring/config/web/autoconfigure/ShiroWebFilterConfiguration.java index 9a103a280c..917557bb6f 100644 --- a/support/spring-boot/spring-boot-starter/src/main/java/org/apache/shiro/spring/config/web/autoconfigure/ShiroWebFilterConfiguration.java +++ b/support/spring-boot/spring-boot-starter/src/main/java/org/apache/shiro/spring/config/web/autoconfigure/ShiroWebFilterConfiguration.java @@ -28,7 +28,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import javax.servlet.DispatcherType; +import jakarta.servlet.DispatcherType; import java.util.List; /** diff --git a/support/spring/pom.xml b/support/spring/pom.xml index 30b3f9c691..e928c3704c 100644 --- a/support/spring/pom.xml +++ b/support/spring/pom.xml @@ -45,9 +45,10 @@ shiro-web - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api provided + 6.0.0 org.springframework diff --git a/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroFilterFactoryBean.java b/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroFilterFactoryBean.java index f02fdd4b74..6a4c6f62ba 100644 --- a/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroFilterFactoryBean.java +++ b/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroFilterFactoryBean.java @@ -44,7 +44,7 @@ import org.springframework.beans.factory.FactoryBean; import org.springframework.beans.factory.config.BeanPostProcessor; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; @@ -78,7 +78,7 @@ * optional. *

    * This implementation is also a {@link BeanPostProcessor} and will acquire - * any {@link javax.servlet.Filter Filter} beans defined independently in your Spring application context. Upon + * any {@link jakarta.servlet.Filter Filter} beans defined independently in your Spring application context. Upon * discovery, they will be automatically added to the {@link #setFilters(java.util.Map) map} keyed by the bean ID. * That ID can then be used in the filter chain definitions, for example: * diff --git a/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroUrlPathHelper.java b/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroUrlPathHelper.java index b54a6eae3f..ecce70f7dc 100644 --- a/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroUrlPathHelper.java +++ b/support/spring/src/main/java/org/apache/shiro/spring/web/ShiroUrlPathHelper.java @@ -21,7 +21,7 @@ import org.apache.shiro.web.util.WebUtils; import org.springframework.web.util.UrlPathHelper; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; /** * A Spring UrlPathHelper that uses Shiro's path resolution logic. diff --git a/support/spring/src/main/java/org/apache/shiro/spring/web/config/AbstractShiroWebFilterConfiguration.java b/support/spring/src/main/java/org/apache/shiro/spring/web/config/AbstractShiroWebFilterConfiguration.java index ff9df7a0b5..8261d37c37 100644 --- a/support/spring/src/main/java/org/apache/shiro/spring/web/config/AbstractShiroWebFilterConfiguration.java +++ b/support/spring/src/main/java/org/apache/shiro/spring/web/config/AbstractShiroWebFilterConfiguration.java @@ -25,7 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.util.Collections; import java.util.List; import java.util.Map; diff --git a/support/spring/src/test/groovy/org/apache/shiro/spring/config/ShiroWebFilterConfigurationTest.groovy b/support/spring/src/test/groovy/org/apache/shiro/spring/config/ShiroWebFilterConfigurationTest.groovy index 5c6ee9f504..a43d3f38e7 100644 --- a/support/spring/src/test/groovy/org/apache/shiro/spring/config/ShiroWebFilterConfigurationTest.groovy +++ b/support/spring/src/test/groovy/org/apache/shiro/spring/config/ShiroWebFilterConfigurationTest.groovy @@ -36,12 +36,12 @@ import org.springframework.test.context.junit.jupiter.SpringExtension import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests import org.springframework.test.context.web.WebAppConfiguration -import javax.servlet.Filter -import javax.servlet.FilterChain -import javax.servlet.FilterConfig -import javax.servlet.ServletException -import javax.servlet.ServletRequest -import javax.servlet.ServletResponse +import jakarta.servlet.Filter +import jakarta.servlet.FilterChain +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletException +import jakarta.servlet.ServletRequest +import jakarta.servlet.ServletResponse import static org.hamcrest.Matchers.contains import static org.hamcrest.Matchers.instanceOf diff --git a/support/spring/src/test/java/org/apache/shiro/spring/web/DummyFilter.java b/support/spring/src/test/java/org/apache/shiro/spring/web/DummyFilter.java index d384c1f9e3..044824887f 100644 --- a/support/spring/src/test/java/org/apache/shiro/spring/web/DummyFilter.java +++ b/support/spring/src/test/java/org/apache/shiro/spring/web/DummyFilter.java @@ -18,12 +18,12 @@ */ package org.apache.shiro.spring.web; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; /** diff --git a/support/spring/src/test/java/org/apache/shiro/spring/web/ShiroFilterFactoryBeanTest.java b/support/spring/src/test/java/org/apache/shiro/spring/web/ShiroFilterFactoryBeanTest.java index fd0f7f9bb1..8956f2350e 100644 --- a/support/spring/src/test/java/org/apache/shiro/spring/web/ShiroFilterFactoryBeanTest.java +++ b/support/spring/src/test/java/org/apache/shiro/spring/web/ShiroFilterFactoryBeanTest.java @@ -27,15 +27,15 @@ import org.junit.jupiter.api.Test; import org.springframework.context.support.ClassPathXmlApplicationContext; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import static org.assertj.core.api.Assertions.assertThat; diff --git a/web/pom.xml b/web/pom.xml index d338283ee8..4ab8aca263 100644 --- a/web/pom.xml +++ b/web/pom.xml @@ -41,8 +41,9 @@ shiro-core - javax.servlet.jsp - jsp-api + jakarta.servlet.jsp + jakarta.servlet.jsp-api + 3.0.0 org.apache.taglibs @@ -53,8 +54,9 @@ taglibs-standard-impl - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api + 6.0.0 org.owasp.encoder diff --git a/web/src/main/java/org/apache/shiro/web/config/IniFilterChainResolverFactory.java b/web/src/main/java/org/apache/shiro/web/config/IniFilterChainResolverFactory.java index 07dfbbad6a..79e5104c7a 100644 --- a/web/src/main/java/org/apache/shiro/web/config/IniFilterChainResolverFactory.java +++ b/web/src/main/java/org/apache/shiro/web/config/IniFilterChainResolverFactory.java @@ -31,8 +31,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.Filter; -import javax.servlet.FilterConfig; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterConfig; import java.util.Collections; import java.util.LinkedHashMap; import java.util.List; diff --git a/web/src/main/java/org/apache/shiro/web/config/ShiroFilterConfiguration.java b/web/src/main/java/org/apache/shiro/web/config/ShiroFilterConfiguration.java index 87a2729942..46db10696e 100644 --- a/web/src/main/java/org/apache/shiro/web/config/ShiroFilterConfiguration.java +++ b/web/src/main/java/org/apache/shiro/web/config/ShiroFilterConfiguration.java @@ -43,7 +43,7 @@ public boolean isFilterOncePerRequest() { /** * Sets whether the filter executes once per request or for every invocation of the filter. It is recommended - * to leave this disabled if you are using a {@link javax.servlet.RequestDispatcher RequestDispatcher} to forward + * to leave this disabled if you are using a {@link jakarta.servlet.RequestDispatcher RequestDispatcher} to forward * or include request (JSP tags, programmatically, or via a framework). * * @param filterOncePerRequest Whether this filter executes once per request. diff --git a/web/src/main/java/org/apache/shiro/web/config/WebIniSecurityManagerFactory.java b/web/src/main/java/org/apache/shiro/web/config/WebIniSecurityManagerFactory.java index 6c20d3dbdb..9bbdb45409 100644 --- a/web/src/main/java/org/apache/shiro/web/config/WebIniSecurityManagerFactory.java +++ b/web/src/main/java/org/apache/shiro/web/config/WebIniSecurityManagerFactory.java @@ -24,7 +24,7 @@ import org.apache.shiro.web.filter.mgt.DefaultFilter; import org.apache.shiro.web.mgt.DefaultWebSecurityManager; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.util.Map; /** diff --git a/web/src/main/java/org/apache/shiro/web/env/DefaultWebEnvironment.java b/web/src/main/java/org/apache/shiro/web/env/DefaultWebEnvironment.java index 81a2b9e7ad..5f33b85555 100644 --- a/web/src/main/java/org/apache/shiro/web/env/DefaultWebEnvironment.java +++ b/web/src/main/java/org/apache/shiro/web/env/DefaultWebEnvironment.java @@ -24,7 +24,7 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import java.util.Map; /** diff --git a/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoader.java b/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoader.java index 7d265de562..784094fedb 100644 --- a/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoader.java +++ b/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoader.java @@ -27,7 +27,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -279,7 +279,7 @@ protected WebEnvironment determineWebEnvironment(ServletContext servletContext) /** * Instantiates a {@link WebEnvironment} based on the specified ServletContext. *

    - * This implementation {@link #determineWebEnvironmentClass(javax.servlet.ServletContext) determines} a + * This implementation {@link #determineWebEnvironmentClass(jakarta.servlet.ServletContext) determines} a * {@link WebEnvironment} implementation class to use. That class is instantiated, configured, and returned. *

    * This allows custom {@code WebEnvironment} implementations to be specified via a ServletContext init-param if diff --git a/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoaderListener.java b/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoaderListener.java index e773262379..efa6457de1 100644 --- a/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoaderListener.java +++ b/web/src/main/java/org/apache/shiro/web/env/EnvironmentLoaderListener.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.env; -import javax.servlet.ServletContextEvent; -import javax.servlet.ServletContextListener; +import jakarta.servlet.ServletContextEvent; +import jakarta.servlet.ServletContextListener; /** * Bootstrap listener to startup and shutdown the web application's Shiro @@ -59,7 +59,7 @@ public void contextInitialized(ServletContextEvent sce) { /** * Destroys any previously created/bound {@code WebEnvironment} instance created by - * the {@link #contextInitialized(javax.servlet.ServletContextEvent)} method. + * the {@link #contextInitialized(jakarta.servlet.ServletContextEvent)} method. * * @param sce the ServletContextEvent triggered upon application shutdown */ diff --git a/web/src/main/java/org/apache/shiro/web/env/IniWebEnvironment.java b/web/src/main/java/org/apache/shiro/web/env/IniWebEnvironment.java index a98fe05f44..b0ea0a818e 100644 --- a/web/src/main/java/org/apache/shiro/web/env/IniWebEnvironment.java +++ b/web/src/main/java/org/apache/shiro/web/env/IniWebEnvironment.java @@ -36,7 +36,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import java.io.IOException; import java.io.InputStream; import java.util.HashMap; @@ -343,7 +343,7 @@ protected String[] getDefaultConfigLocations() { *

    * If the path does not have a resource prefix as defined by {@link ResourceUtils#hasResourcePrefix(String)}, * the path is expected to be resolvable by the {@code ServletContext} via - * {@link javax.servlet.ServletContext#getResourceAsStream(String)}. + * {@link jakarta.servlet.ServletContext#getResourceAsStream(String)}. * * @param path the path of the INI resource to load into an INI instance. * @param required if the specified path must exist diff --git a/web/src/main/java/org/apache/shiro/web/env/MutableWebEnvironment.java b/web/src/main/java/org/apache/shiro/web/env/MutableWebEnvironment.java index 1c2d3786f4..f1e5fdba59 100644 --- a/web/src/main/java/org/apache/shiro/web/env/MutableWebEnvironment.java +++ b/web/src/main/java/org/apache/shiro/web/env/MutableWebEnvironment.java @@ -22,7 +22,7 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; /** * A {@code WebEnvironment} that supports 'write' operations operations. This mainly exists to shield diff --git a/web/src/main/java/org/apache/shiro/web/env/WebEnvironment.java b/web/src/main/java/org/apache/shiro/web/env/WebEnvironment.java index e2899b79ad..7f04416e68 100644 --- a/web/src/main/java/org/apache/shiro/web/env/WebEnvironment.java +++ b/web/src/main/java/org/apache/shiro/web/env/WebEnvironment.java @@ -23,7 +23,7 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; /** * A web-specific {@link Environment} instance, used in web applications. diff --git a/web/src/main/java/org/apache/shiro/web/filter/AccessControlFilter.java b/web/src/main/java/org/apache/shiro/web/filter/AccessControlFilter.java index 65ec890cc5..99478343fb 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/AccessControlFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/AccessControlFilter.java @@ -22,14 +22,14 @@ import org.apache.shiro.subject.Subject; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; /** * Superclass for any filter that controls access to a resource and may redirect the user to the login page * if they are not authenticated. This superclass provides the method - * {@link #saveRequestAndRedirectToLogin(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} + * {@link #saveRequestAndRedirectToLogin(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} * which is used by many subclasses as the behavior when a user is unauthenticated. * * @since 0.9 @@ -116,7 +116,7 @@ protected abstract boolean isAccessAllowed(ServletRequest request, ServletRespon /** * Processes requests where the subject was denied access as determined by the - * {@link #isAccessAllowed(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Object) isAccessAllowed} + * {@link #isAccessAllowed(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Object) isAccessAllowed} * method, retaining the {@code mappedValue} that was used during configuration. *

    * This method immediately delegates to {@link #onAccessDenied(ServletRequest, ServletResponse)} as a @@ -136,7 +136,7 @@ protected boolean onAccessDenied(ServletRequest request, ServletResponse respons /** * Processes requests where the subject was denied access as determined by the - * {@link #isAccessAllowed(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Object) isAccessAllowed} + * {@link #isAccessAllowed(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Object) isAccessAllowed} * method. * * @param request the incoming ServletRequest @@ -154,9 +154,9 @@ protected boolean onAccessDenied(ServletRequest request, ServletResponse respons * {@link #onAccessDenied(ServletRequest, ServletResponse, Object) onAccessDenied(Request,Response,Object)}. * * @return true if - * {@link #isAccessAllowed(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Object) isAccessAllowed}, + * {@link #isAccessAllowed(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Object) isAccessAllowed}, * otherwise returns the result of - * {@link #onAccessDenied(javax.servlet.ServletRequest, javax.servlet.ServletResponse) onAccessDenied}. + * {@link #onAccessDenied(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) onAccessDenied}. * @throws Exception if an error occurs. */ public boolean onPreHandle(ServletRequest request, ServletResponse response, Object mappedValue) throws Exception { @@ -182,7 +182,7 @@ protected boolean isLoginRequest(ServletRequest request, ServletResponse respons /** * Convenience method for subclasses to use when a login redirect is required. *

    - * This implementation simply calls {@link #saveRequest(javax.servlet.ServletRequest) saveRequest(request)} + * This implementation simply calls {@link #saveRequest(jakarta.servlet.ServletRequest) saveRequest(request)} * and then {@link #redirectToLogin(ServletRequest, ServletResponse) redirectToLogin(request,response)}. * * @param request the incoming ServletRequest @@ -196,12 +196,12 @@ protected void saveRequestAndRedirectToLogin(ServletRequest request, ServletResp /** * Convenience method merely delegates to - * {@link WebUtils#saveRequest(javax.servlet.ServletRequest) WebUtils.saveRequest(request)} to save the request + * {@link WebUtils#saveRequest(jakarta.servlet.ServletRequest) WebUtils.saveRequest(request)} to save the request * state for reuse later. This is mostly used to retain user request state when a redirect is issued to * return the user to their originally requested url/resource. *

    * If you need to save and then immediately redirect the user to login, consider using - * {@link #saveRequestAndRedirectToLogin(javax.servlet.ServletRequest, javax.servlet.ServletResponse) + * {@link #saveRequestAndRedirectToLogin(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) * saveRequestAndRedirectToLogin(request,response)} directly. * * @param request the incoming ServletRequest to save for re-use later (for example, after a redirect). @@ -216,7 +216,7 @@ protected void saveRequest(ServletRequest request) { *

    * N.B. If you want to issue a redirect with the intention of allowing the user to then return to their * originally requested URL, don't use this method directly. Instead you should call - * {@link #saveRequestAndRedirectToLogin(javax.servlet.ServletRequest, javax.servlet.ServletResponse) + * {@link #saveRequestAndRedirectToLogin(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) * saveRequestAndRedirectToLogin(request,response)}, which will save the current request state so that it can * be reconstructed and re-used after a successful login. * diff --git a/web/src/main/java/org/apache/shiro/web/filter/InvalidRequestFilter.java b/web/src/main/java/org/apache/shiro/web/filter/InvalidRequestFilter.java index e29bd3eb62..c903074522 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/InvalidRequestFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/InvalidRequestFilter.java @@ -22,10 +22,10 @@ import org.apache.shiro.lang.util.StringUtils; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.Arrays; import java.util.Collections; import java.util.List; diff --git a/web/src/main/java/org/apache/shiro/web/filter/PathConfigProcessor.java b/web/src/main/java/org/apache/shiro/web/filter/PathConfigProcessor.java index aa5be8169b..34fd240297 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/PathConfigProcessor.java +++ b/web/src/main/java/org/apache/shiro/web/filter/PathConfigProcessor.java @@ -18,7 +18,7 @@ */ package org.apache.shiro.web.filter; -import javax.servlet.Filter; +import jakarta.servlet.Filter; /** * A PathConfigProcessor processes configuration entries on a per path (url) basis. diff --git a/web/src/main/java/org/apache/shiro/web/filter/PathMatchingFilter.java b/web/src/main/java/org/apache/shiro/web/filter/PathMatchingFilter.java index 4ac41845c7..a948e4f6ab 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/PathMatchingFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/PathMatchingFilter.java @@ -26,9 +26,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.Filter; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.util.LinkedHashMap; import java.util.Map; @@ -95,7 +95,7 @@ public Filter processPathConfig(String path, String config) { * Returns the context path within the application based on the specified request. *

    * This implementation merely delegates to - * {@link WebUtils#getPathWithinApplication(javax.servlet.http.HttpServletRequest) + * {@link WebUtils#getPathWithinApplication(jakarta.servlet.http.HttpServletRequest) * WebUtils.getPathWithinApplication(request)}, * but can be overridden by subclasses for custom logic. * @@ -165,15 +165,15 @@ protected boolean pathsMatch(String pattern, String path) { /** * Implementation that handles path-matching behavior before a request is evaluated. If the path matches and * the filter - * {@link #isEnabled(javax.servlet.ServletRequest, javax.servlet.ServletResponse, String, Object) isEnabled} for + * {@link #isEnabled(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, String, Object) isEnabled} for * that path/config, the request will be allowed through via the result from - * {@link #onPreHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Object) onPreHandle}. If the + * {@link #onPreHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Object) onPreHandle}. If the * path does not match or the filter is not enabled for that path, this filter will allow passthrough immediately * to allow the {@code FilterChain} to continue executing. *

    * In order to retain path-matching functionality, subclasses should not override this method if at all * possible, and instead override - * {@link #onPreHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Object) onPreHandle} instead. + * {@link #onPreHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Object) onPreHandle} instead. * * @param request the incoming ServletRequest * @param response the outgoing ServletResponse @@ -246,7 +246,7 @@ private boolean isFilterChainContinued(ServletRequest request, ServletResponse r * @return {@code true} if the request should be able to continue, {@code false} if the filter will * handle the response directly. * @throws Exception if an error occurs - * @see #isEnabled(javax.servlet.ServletRequest, javax.servlet.ServletResponse, String, Object) + * @see #isEnabled(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, String, Object) */ protected boolean onPreHandle(ServletRequest request, ServletResponse response, Object mappedValue) throws Exception { return true; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/AnonymousFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/AnonymousFilter.java index 419a878d12..b7ff097ab7 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/AnonymousFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/AnonymousFilter.java @@ -20,8 +20,8 @@ import org.apache.shiro.web.filter.PathMatchingFilter; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * Filter that allows access to a path immediately without performing security checks of any kind. diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticatingFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticatingFilter.java index a56a76367b..b69871d471 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticatingFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticatingFilter.java @@ -24,9 +24,9 @@ import org.apache.shiro.authz.UnauthenticatedException; import org.apache.shiro.subject.Subject; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; import java.util.Arrays; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticationFilter.java index 33b1d46723..20a79fc2f9 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/AuthenticationFilter.java @@ -22,8 +22,8 @@ import org.apache.shiro.web.filter.AccessControlFilter; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * Base class for all Filters that require the current user to be authenticated. This class encapsulates the @@ -69,7 +69,7 @@ public void setSuccessUrl(String successUrl) { /** * Determines whether the current subject is authenticated. *

    - * The default implementation {@link #getSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) acquires} + * The default implementation {@link #getSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) acquires} * the currently executing Subject and then returns * {@link org.apache.shiro.subject.Subject#isAuthenticated() subject.isAuthenticated()}; * diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/BasicHttpAuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/BasicHttpAuthenticationFilter.java index d9243817fa..97b1a2c3ab 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/BasicHttpAuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/BasicHttpAuthenticationFilter.java @@ -23,9 +23,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; /** @@ -48,7 +48,7 @@ *

  • The client then sends another request for the same resource with the following header:
    *

    Authorization: Basic Base64_encoded_username_and_password

  • * - * The {@link #onAccessDenied(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} method will + * The {@link #onAccessDenied(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} method will * only be called if the subject making the request is not * {@link org.apache.shiro.subject.Subject#isAuthenticated() authenticated} * @@ -74,10 +74,11 @@ public BasicHttpAuthenticationFilter() { *

    * This implementation: *

    1. acquires the username and password based on the request's - * {@link #getAuthzHeader(javax.servlet.ServletRequest) authorization header} via the - * {@link #getPrincipalsAndCredentials(String, javax.servlet.ServletRequest) getPrincipalsAndCredentials} method
    2. + * {@link #getAuthzHeader(jakarta.servlet.ServletRequest) authorization header} via the + * {@link #getPrincipalsAndCredentials(String, jakarta.servlet.ServletRequest) getPrincipalsAndCredentials} method *
    3. The return value of that method is converted to an AuthenticationToken via the - * {@link #createToken(String, String, javax.servlet.ServletRequest, javax.servlet.ServletResponse) createToken} method
    4. + * {@link #createToken(String, String, jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) createToken} + * method *
    5. The created AuthenticationToken is returned.
    6. *
    * @@ -121,7 +122,7 @@ protected AuthenticationToken createToken(ServletRequest request, ServletRespons * return decoded.split(":"); * * @param scheme the {@link #getAuthcScheme() authcScheme} found in the request - * {@link #getAuthzHeader(javax.servlet.ServletRequest) authzHeader}. It is ignored by this implementation, + * {@link #getAuthzHeader(jakarta.servlet.ServletRequest) authzHeader}. It is ignored by this implementation, * but available to overriding implementations should they find it useful. * @param encoded the Base64-encoded username:password value found after the scheme in the header * @return the username (index 0)/password (index 1) pair obtained from the encoded header data. diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/BearerHttpAuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/BearerHttpAuthenticationFilter.java index 075ce524c1..9229b294b9 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/BearerHttpAuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/BearerHttpAuthenticationFilter.java @@ -23,8 +23,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/FormAuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/FormAuthenticationFilter.java index ff2584ef38..d33804ba3e 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/FormAuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/FormAuthenticationFilter.java @@ -26,9 +26,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; /** * Requires the requesting user to be authenticated for the request to continue, and if they are not, forces the user @@ -39,7 +39,7 @@ * and {@link #setRememberMeParam(String) rememberMe} request parameters. It then calls * {@link Subject#login(AuthenticationToken) Subject.login(usernamePasswordToken)}, * effectively automatically performing a login attempt. Note that the login attempt will only occur when the - * {@link #isLoginSubmission(javax.servlet.ServletRequest, javax.servlet.ServletResponse) isLoginSubmission(request,response)} + * {@link #isLoginSubmission(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) isLoginSubmission(request,response)} * is true, which by default occurs when the request is for the {@link #setLoginUrl(String) loginUrl} and * is a POST request. *

    diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/HttpAuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/HttpAuthenticationFilter.java index 636744a322..84a151c9fb 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/HttpAuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/HttpAuthenticationFilter.java @@ -23,10 +23,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.HashSet; import java.util.Locale; import java.util.Set; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/LogoutFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/LogoutFilter.java index 46bc9a05b4..7c3a06d247 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/LogoutFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/LogoutFilter.java @@ -26,15 +26,15 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletResponse; import java.util.Locale; /** * Simple Filter that, upon receiving a request, will immediately log-out the currently executing - * {@link #getSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) subject} + * {@link #getSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) subject} * and then redirect them to a configured {@link #getRedirectUrl() redirectUrl}. * * @since 1.2 @@ -62,9 +62,9 @@ public class LogoutFilter extends AdviceFilter { private boolean postOnlyLogout; /** - * Acquires the currently executing {@link #getSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) subject}, - * a potentially Subject or request-specific - * {@link #getRedirectUrl(ServletRequest, ServletResponse, org.apache.shiro.subject.Subject) redirectUrl}, + * Acquires the currently executing + * {@link #getSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) subject}, a potentially Subject or + * request-specific {@link #getRedirectUrl(ServletRequest, ServletResponse, org.apache.shiro.subject.Subject) redirectUrl}, * and redirects the end-user to that redirect url. * * @param request the incoming ServletRequest @@ -112,7 +112,7 @@ protected Subject getSubject(ServletRequest request, ServletResponse response) { /** * Issues an HTTP redirect to the specified URL after subject logout. This implementation simply calls - * {@code WebUtils.}{@link WebUtils#issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, String) + * {@code WebUtils.}{@link WebUtils#issueRedirect(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, String) * issueRedirect(request,response,redirectUrl)}. * * @param request the incoming Servlet request diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/PassThruAuthenticationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/PassThruAuthenticationFilter.java index 6aa9ea2bee..520b6c661f 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/PassThruAuthenticationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/PassThruAuthenticationFilter.java @@ -20,8 +20,8 @@ import org.apache.shiro.subject.Subject; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * An authentication filter that redirects the user to the login page when they are trying to access diff --git a/web/src/main/java/org/apache/shiro/web/filter/authc/UserFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authc/UserFilter.java index 1c31fd1987..0f75d95483 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authc/UserFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authc/UserFilter.java @@ -21,8 +21,8 @@ import org.apache.shiro.subject.Subject; import org.apache.shiro.web.filter.AccessControlFilter; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * Filter that allows access to resources if the accessor is a known user, which is defined as @@ -37,13 +37,13 @@ public class UserFilter extends AccessControlFilter { /** * Returns true if the request is a - * {@link #isLoginRequest(javax.servlet.ServletRequest, javax.servlet.ServletResponse) loginRequest} or - * if the current {@link #getSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) subject} + * {@link #isLoginRequest(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) loginRequest} or + * if the current {@link #getSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) subject} * is not null, false otherwise. * * @return true if the request is a - * {@link #isLoginRequest(javax.servlet.ServletRequest, javax.servlet.ServletResponse) loginRequest} or - * if the current {@link #getSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) subject} + * {@link #isLoginRequest(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) loginRequest} or + * if the current {@link #getSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) subject} * is not null, false otherwise. */ protected boolean isAccessAllowed(ServletRequest request, ServletResponse response, Object mappedValue) { diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/AuthorizationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/AuthorizationFilter.java index 8d1a12706d..50a16c60c7 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/AuthorizationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/AuthorizationFilter.java @@ -23,17 +23,17 @@ import org.apache.shiro.web.filter.AccessControlFilter; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; /** * Superclass for authorization-related filters. If an request is unauthorized, response handling is delegated to the - * {@link #onAccessDenied(javax.servlet.ServletRequest, javax.servlet.ServletResponse) onAccessDenied} method, which + * {@link #onAccessDenied(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) onAccessDenied} method, which * provides reasonable handling for most applications. * - * @see #onAccessDenied(javax.servlet.ServletRequest, javax.servlet.ServletResponse) + * @see #onAccessDenied(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) * @since 0.9 */ public abstract class AuthorizationFilter extends AccessControlFilter { @@ -83,7 +83,7 @@ public void setUnauthorizedUrl(String unauthorizedUrl) { *

      *
    • If the {@code Subject} is unknown[1]: *
      1. The incoming request will be saved and they will be redirected to the login page for authentication - * (via the {@link #saveRequestAndRedirectToLogin(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} + * (via the {@link #saveRequestAndRedirectToLogin(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} * method).
      2. *
      3. Once successfully authenticated, they will be redirected back to the originally attempted page.
      *
    • diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/HostFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/HostFilter.java index 719117b37d..17f1abbf24 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/HostFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/HostFilter.java @@ -20,8 +20,8 @@ import org.apache.shiro.lang.util.StringUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.util.regex.Pattern; import java.util.Map; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/HttpMethodPermissionFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/HttpMethodPermissionFilter.java index 0ba3b095f2..82a2e28cfe 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/HttpMethodPermissionFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/HttpMethodPermissionFilter.java @@ -22,9 +22,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.HashMap; import java.util.Map; @@ -169,7 +169,7 @@ protected Map getHttpMethodActions() { * Determines the action (verb) attempting to be performed on the filtered resource by the current request. *

      * This implementation expects the incoming request to be an {@link HttpServletRequest} and returns a mapped - * action based on the HTTP request {@link javax.servlet.http.HttpServletRequest#getMethod() method}. + * action based on the HTTP request {@link jakarta.servlet.http.HttpServletRequest#getMethod() method}. * * @param request to pull the method from. * @return The string equivalent verb of the http method. @@ -232,7 +232,7 @@ protected String[] buildPermissions(HttpServletRequest request, String[] configu * * per {@link org.apache.shiro.authz.permission.WildcardPermission WildcardPermission} conventions. Subclasses * are of course free to override this method or the - * {@link #buildPermissions(javax.servlet.http.HttpServletRequest, String[], String) buildPermissions} request + * {@link #buildPermissions(jakarta.servlet.http.HttpServletRequest, String[], String) buildPermissions} request * variant for custom building logic or with different permission formats. * * @param configuredPerms list of configuredPerms to be converted. diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/IpFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/IpFilter.java index 98acf783b3..6c80d117bb 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/IpFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/IpFilter.java @@ -20,8 +20,8 @@ import org.apache.shiro.lang.util.StringUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.util.ArrayList; import java.util.Collections; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/PermissionsAuthorizationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/PermissionsAuthorizationFilter.java index fb703fe412..9912c660d0 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/PermissionsAuthorizationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/PermissionsAuthorizationFilter.java @@ -19,8 +19,8 @@ package org.apache.shiro.web.filter.authz; import java.io.IOException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import org.apache.shiro.subject.Subject; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/PortFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/PortFilter.java index 3425c1c456..a5e708cc87 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/PortFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/PortFilter.java @@ -22,9 +22,9 @@ import org.apache.shiro.lang.util.StringUtils; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import java.io.IOException; /** diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/RolesAuthorizationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/RolesAuthorizationFilter.java index d0a6196ba9..5aa4444e0d 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/RolesAuthorizationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/RolesAuthorizationFilter.java @@ -20,8 +20,8 @@ import java.io.IOException; import java.util.Set; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import org.apache.shiro.subject.Subject; import org.apache.shiro.util.CollectionUtils; diff --git a/web/src/main/java/org/apache/shiro/web/filter/authz/SslFilter.java b/web/src/main/java/org/apache/shiro/web/filter/authz/SslFilter.java index 3ca3133b36..b47f27851a 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/authz/SslFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/authz/SslFilter.java @@ -18,14 +18,14 @@ */ package org.apache.shiro.web.filter.authz; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletResponse; /** * Filter which requires a request to be over SSL. Access is allowed if the request is received on the configured * server {@link #setPort(int) port} and the - * {@code request.}{@link javax.servlet.ServletRequest#isSecure() isSecure()}. If either condition is {@code false}, + * {@code request.}{@link jakarta.servlet.ServletRequest#isSecure() isSecure()}. If either condition is {@code false}, * the filter chain will not continue. *

      * The {@link #getPort() port} property defaults to {@code 443} and also additionally guarantees that the @@ -90,7 +90,7 @@ protected String getScheme(String requestScheme, int port) { /** * Retains the parent method's port-matching behavior but additionally guarantees that the - * {@code ServletRequest.}{@link javax.servlet.ServletRequest#isSecure() isSecure()}. If the port does not match or + * {@code ServletRequest.}{@link jakarta.servlet.ServletRequest#isSecure() isSecure()}. If the port does not match or * the request is not secure, access is denied. * * @param request the incoming {@code ServletRequest} @@ -98,7 +98,7 @@ protected String getScheme(String requestScheme, int port) { * @param mappedValue the filter-specific config value mapped to this filter in the URL rules mappings * - ignored by this implementation. * @return {@code true} if the request is received on an expected SSL port and the - * {@code request.}{@link javax.servlet.ServletRequest#isSecure() isSecure()}, {@code false} otherwise. + * {@code request.}{@link jakarta.servlet.ServletRequest#isSecure() isSecure()}, {@code false} otherwise. * @throws Exception if the call to {@code super.isAccessAllowed} throws an exception. * @since 1.2 */ diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilter.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilter.java index 5c5d5991a3..267dbf8638 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilter.java @@ -34,9 +34,9 @@ import org.apache.shiro.web.filter.authz.SslFilter; import org.apache.shiro.web.filter.session.NoSessionCreationFilter; -import javax.servlet.Filter; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; import java.util.LinkedHashMap; import java.util.Map; diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilterChainManager.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilterChainManager.java index 59893db959..1e962b4044 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilterChainManager.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/DefaultFilterChainManager.java @@ -26,10 +26,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainManager.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainManager.java index 980235206b..ebaea24793 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainManager.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainManager.java @@ -21,8 +21,8 @@ import org.apache.shiro.config.ConfigurationException; import org.apache.shiro.util.AntPathMatcher; -import javax.servlet.Filter; -import javax.servlet.FilterChain; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; import java.util.List; import java.util.Map; import java.util.Set; @@ -85,7 +85,7 @@ public interface FilterChainManager { * {@link #addToChain(String, String, String) creating filter chains}. *

      * Calling this method is effectively the same as calling - * {@link #addFilter(String, javax.servlet.Filter, boolean) addFilter}(name, filter, false); + * {@link #addFilter(String, jakarta.servlet.Filter, boolean) addFilter}(name, filter, false); * * @param name the name to assign to the filter, used to reference the filter in chain definitions * @param filter the filter to initialize and then add to the pool of available filters that can be used @@ -99,7 +99,7 @@ public interface FilterChainManager { * @param name the name to assign to the filter, used to reference the filter in chain definitions * @param filter the filter to assign to the filter pool * @param init whether or not the {@code Filter} should be - * {@link Filter#init(javax.servlet.FilterConfig) initialized} first before being added to the pool. + * {@link Filter#init(jakarta.servlet.FilterConfig) initialized} first before being added to the pool. */ void addFilter(String name, Filter filter, boolean init); @@ -121,7 +121,7 @@ public interface FilterChainManager { * where *

        *
      1. {@code filterN} is the name of a filter previously - * {@link #addFilter(String, javax.servlet.Filter) registered} with the manager, and
      2. + * {@link #addFilter(String, jakarta.servlet.Filter) registered} with the manager, and *
      3. {@code [optional_configN]} is an optional bracketed string that has meaning for that particular filter for * this particular chain
      4. *
      @@ -182,7 +182,7 @@ public interface FilterChainManager { * * @param chainName the name of the chain where the filter will be appended. * @param filterName the name of the {@link #addFilter registered} filter to add to the chain. - * @throws IllegalArgumentException if there is not a {@link #addFilter(String, javax.servlet.Filter) registered} + * @throws IllegalArgumentException if there is not a {@link #addFilter(String, jakarta.servlet.Filter) registered} * filter under the given {@code filterName} */ void addToChain(String chainName, String filterName); @@ -199,7 +199,7 @@ public interface FilterChainManager { * @param filterName the name of the {@link #addFilter registered} filter to add to the chain. * @param chainSpecificFilterConfig the filter-specific configuration that should be applied for only the specified * filter chain. - * @throws IllegalArgumentException if there is not a {@link #addFilter(String, javax.servlet.Filter) registered} + * @throws IllegalArgumentException if there is not a {@link #addFilter(String, jakarta.servlet.Filter) registered} * filter under the given {@code filterName} * @throws ConfigurationException if the filter is not capable of accepting {@code chainSpecificFilterConfig} * (usually such filters implement the diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainResolver.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainResolver.java index b53e59c1f2..9b465418fe 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainResolver.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/FilterChainResolver.java @@ -18,9 +18,9 @@ */ package org.apache.shiro.web.filter.mgt; -import javax.servlet.FilterChain; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code FilterChainResolver} can resolve an appropriate {@link FilterChain} to execute during a @@ -40,7 +40,7 @@ public interface FilterChainResolver { * Returns the filter chain that should be executed for the given request, or {@code null} if the * original chain should be used. *

      - * This method allows a implementation to define arbitrary security {@link javax.servlet.Filter Filter} + * This method allows a implementation to define arbitrary security {@link jakarta.servlet.Filter Filter} * chains for any given request or URL pattern. * * @param request the incoming ServletRequest diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/NamedFilterList.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/NamedFilterList.java index e13096bb0a..3296fb52aa 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/NamedFilterList.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/NamedFilterList.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.filter.mgt; -import javax.servlet.Filter; -import javax.servlet.FilterChain; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; import java.util.List; /** diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolver.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolver.java index 052ccaa507..f3c95a0974 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolver.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolver.java @@ -25,10 +25,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code FilterChainResolver} that resolves {@link FilterChain}s based on url path @@ -158,7 +158,7 @@ protected boolean pathMatches(String pattern, String path) { /** * Merely returns - * WebUtils.{@link org.apache.shiro.web.util.WebUtils#getPathWithinApplication(javax.servlet.http.HttpServletRequest) + * WebUtils.{@link org.apache.shiro.web.util.WebUtils#getPathWithinApplication(jakarta.servlet.http.HttpServletRequest) * getPathWithinApplication(request)} * and can be overridden by subclasses for custom request-to-application-path resolution behavior. * diff --git a/web/src/main/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterList.java b/web/src/main/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterList.java index 7592f96589..bcfb2e0636 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterList.java +++ b/web/src/main/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterList.java @@ -21,8 +21,8 @@ import org.apache.shiro.lang.util.StringUtils; import org.apache.shiro.web.servlet.ProxiedFilterChain; -import javax.servlet.Filter; -import javax.servlet.FilterChain; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; diff --git a/web/src/main/java/org/apache/shiro/web/filter/session/NoSessionCreationFilter.java b/web/src/main/java/org/apache/shiro/web/filter/session/NoSessionCreationFilter.java index 086804aa24..7d50190c8b 100644 --- a/web/src/main/java/org/apache/shiro/web/filter/session/NoSessionCreationFilter.java +++ b/web/src/main/java/org/apache/shiro/web/filter/session/NoSessionCreationFilter.java @@ -21,8 +21,8 @@ import org.apache.shiro.subject.support.DefaultSubjectContext; import org.apache.shiro.web.filter.PathMatchingFilter; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code PathMatchingFilter} that will disable creating new Sessions during the request. This is a useful diff --git a/web/src/main/java/org/apache/shiro/web/mgt/CookieRememberMeManager.java b/web/src/main/java/org/apache/shiro/web/mgt/CookieRememberMeManager.java index f44d1ae2cd..6695c89d56 100644 --- a/web/src/main/java/org/apache/shiro/web/mgt/CookieRememberMeManager.java +++ b/web/src/main/java/org/apache/shiro/web/mgt/CookieRememberMeManager.java @@ -33,9 +33,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; /** diff --git a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSecurityManager.java b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSecurityManager.java index 02b515c9a8..8ef1043409 100644 --- a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSecurityManager.java +++ b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSecurityManager.java @@ -42,8 +42,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.Serializable; import java.util.Collection; import java.util.function.Supplier; diff --git a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluator.java b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluator.java index 367179fb93..4be330900b 100644 --- a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluator.java +++ b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluator.java @@ -33,7 +33,7 @@ * This implementation usually works in conjunction with the * {@link org.apache.shiro.web.filter.session.NoSessionCreationFilter}: If the {@code NoSessionCreationFilter} * is configured in a filter chain, that filter will set a specific - * {@code ServletRequest} {@link javax.servlet.ServletRequest#setAttribute attribute} indicating that session creation + * {@code ServletRequest} {@link jakarta.servlet.ServletRequest#setAttribute attribute} indicating that session creation * should be disabled. *

      * This {@code DefaultWebSessionStorageEvaluator} will then inspect this attribute, and if it has been set, will return diff --git a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSubjectFactory.java b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSubjectFactory.java index 3c8fc06e0b..a355c0030f 100644 --- a/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSubjectFactory.java +++ b/web/src/main/java/org/apache/shiro/web/mgt/DefaultWebSubjectFactory.java @@ -27,8 +27,8 @@ import org.apache.shiro.web.subject.WebSubjectContext; import org.apache.shiro.web.subject.support.WebDelegatingSubject; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import org.apache.shiro.web.subject.WebSubject; diff --git a/web/src/main/java/org/apache/shiro/web/servlet/AbstractFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/AbstractFilter.java index 77e9797007..9c0b5fa4a9 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/AbstractFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/AbstractFilter.java @@ -22,15 +22,15 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.Filter; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; /** * Base abstract Filter simplifying Filter initialization and {@link #getInitParam(String) access} to init parameters. * Subclass initialization logic should be performed by overriding the {@link #onFilterConfigSet()} template method. * FilterChain execution logic (the - * {@link #doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)} method + * {@link #doFilter(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, jakarta.servlet.FilterChain)} method * is left to subclasses. * * @since 1.0 @@ -46,7 +46,7 @@ public abstract class AbstractFilter extends ServletContextSupport implements Fi /** * Returns the servlet container specified {@code FilterConfig} instance provided at - * {@link #init(javax.servlet.FilterConfig) startup}. + * {@link #init(jakarta.servlet.FilterConfig) startup}. * * @return the servlet container specified {@code FilterConfig} instance provided at start-up. */ @@ -89,7 +89,7 @@ protected String getInitParam(String paramName) { * {@link #onFilterConfigSet() onFilterConfigSet()} to trigger any processing a subclass might wish to perform. * * @param filterConfig the servlet container supplied FilterConfig instance. - * @throws javax.servlet.ServletException if {@link #onFilterConfigSet() onFilterConfigSet()} throws an Exception. + * @throws jakarta.servlet.ServletException if {@link #onFilterConfigSet() onFilterConfigSet()} throws an Exception. */ public final void init(FilterConfig filterConfig) throws ServletException { setFilterConfig(filterConfig); diff --git a/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java index 0b1304347c..272175e90e 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/AbstractShiroFilter.java @@ -30,12 +30,12 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.concurrent.Callable; @@ -230,7 +230,7 @@ protected ServletRequest wrapServletRequest(HttpServletRequest orig) { * processing. *

      * If the {@code ServletRequest} is an instance of {@link HttpServletRequest}, the value returned from this method - * is obtained by calling {@link #wrapServletRequest(javax.servlet.http.HttpServletRequest)} to allow Shiro-specific + * is obtained by calling {@link #wrapServletRequest(jakarta.servlet.http.HttpServletRequest)} to allow Shiro-specific * HTTP behavior, otherwise the original {@code ServletRequest} argument is returned. * * @param request the incoming ServletRequest @@ -267,7 +267,7 @@ protected ServletResponse wrapServletResponse(HttpServletResponse orig, ShiroHtt * Prepares the {@code ServletResponse} instance that will be passed to the {@code FilterChain} for request * processing. *

      - * This implementation delegates to {@link #wrapServletRequest(javax.servlet.http.HttpServletRequest)} + * This implementation delegates to {@link #wrapServletRequest(jakarta.servlet.http.HttpServletRequest)} * only if Shiro-based sessions are enabled (that is, !{@link #isHttpSessions()}) and the request instance is a * {@link ShiroHttpServletRequest}. This ensures that any URL rewriting that occurs is handled correctly using the * Shiro-managed Session's sessionId and not a servlet container session ID. @@ -345,11 +345,11 @@ protected void updateSessionLastAccessTime(ServletRequest request, ServletRespon * the incoming {@code ServletRequest} for use during Shiro's processing *

    • {@link #prepareServletResponse(ServletRequest, ServletResponse, FilterChain) Prepares} * the outgoing {@code ServletResponse} for use during Shiro's processing
    • - *
    • {@link #createSubject(javax.servlet.ServletRequest, javax.servlet.ServletResponse) Creates} a + *
    • {@link #createSubject(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) Creates} a * {@link Subject} instance based on the specified request/response pair.
    • *
    • Finally {@link Subject#execute(Runnable) executes} the - * {@link #updateSessionLastAccessTime(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} and - * {@link #executeChain(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)} + * {@link #updateSessionLastAccessTime(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} and + * {@link #executeChain(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, jakarta.servlet.FilterChain)} * methods
    • * *

      @@ -360,7 +360,7 @@ protected void updateSessionLastAccessTime(ServletRequest request, ServletRespon * @param servletResponse the outgoing {@code ServletResponse} * @param chain the container-provided {@code FilterChain} to execute * @throws IOException if an IO error occurs - * @throws javax.servlet.ServletException if a Throwable other than an IOException + * @throws jakarta.servlet.ServletException if a Throwable other than an IOException */ protected void doFilterInternal(ServletRequest servletRequest, ServletResponse servletResponse, final FilterChain chain) throws ServletException, IOException { @@ -440,11 +440,10 @@ protected FilterChain getExecutionChain(ServletRequest request, ServletResponse * Executes a {@link FilterChain} for the given request. *

      * This implementation first delegates to - * {@link #getExecutionChain(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain) - * getExecutionChain} - * to allow the application's Shiro configuration to determine exactly how the chain should execute. The resulting - * value from that call is then executed directly by calling the returned {@code FilterChain}'s - * {@link FilterChain#doFilter doFilter} method. That is: + * {@link #getExecutionChain(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, + * jakarta.servlet.FilterChain) getExecutionChain} to allow the application's Shiro configuration to determine exactly + * how the chain should execute. The resulting value from that call is then executed directly by calling the returned + * {@code FilterChain}'s {@link FilterChain#doFilter doFilter} method. That is: *

            * FilterChain chain = {@link #getExecutionChain}(request, response, origChain);
            * chain.{@link FilterChain#doFilter doFilter}(request,response);
      diff --git a/web/src/main/java/org/apache/shiro/web/servlet/AdviceFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/AdviceFilter.java index 0f7e6b509f..1d00d73dda 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/AdviceFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/AdviceFilter.java @@ -21,17 +21,17 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; /** * A Servlet Filter that enables AOP-style "around" advice for a ServletRequest via - * {@link #preHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse) preHandle}, - * {@link #postHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse) postHandle}, - * and {@link #afterCompletion(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Exception) afterCompletion} + * {@link #preHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) preHandle}, + * {@link #postHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) postHandle}, + * and {@link #afterCompletion(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Exception) afterCompletion} * hooks. * * @since 0.9 @@ -62,7 +62,7 @@ protected boolean preHandle(ServletRequest request, ServletResponse response) th * Allows 'post' advice logic to be called, but only if no exception occurs during filter chain execution. That * is, if {@link #executeChain executeChain} throws an exception, this method will never be called. Be aware of * this when implementing logic. Most resource 'cleanup' behavior is often done in the - * {@link #afterCompletion(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Exception) + * {@link #afterCompletion(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Exception) * afterCompletion(request,response,exception)} * implementation, which is guaranteed to be called for every request, even when the chain processing throws * an Exception. @@ -111,9 +111,9 @@ protected void executeChain(ServletRequest request, ServletResponse response, Fi /** * Actually implements the chain execution logic, utilizing - * {@link #preHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse) pre}, - * {@link #postHandle(javax.servlet.ServletRequest, javax.servlet.ServletResponse) post}, and - * {@link #afterCompletion(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Exception) after} + * {@link #preHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) pre}, + * {@link #postHandle(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) post}, and + * {@link #afterCompletion(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Exception) after} * advice hooks. * * @param request the incoming ServletRequest @@ -152,12 +152,12 @@ public void doFilterInternal(ServletRequest request, ServletResponse response, F /** * Executes cleanup logic in the {@code finally} code block in the - * {@link #doFilterInternal(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain) + * {@link #doFilterInternal(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, jakarta.servlet.FilterChain) * doFilterInternal(request, response, filterChain)} * implementation. *

      * This implementation specifically calls - * {@link #afterCompletion(javax.servlet.ServletRequest, javax.servlet.ServletResponse, Exception) afterCompletion} + * {@link #afterCompletion(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, Exception) afterCompletion} * as well as handles any exceptions properly. * * @param request the incoming {@code ServletRequest} diff --git a/web/src/main/java/org/apache/shiro/web/servlet/Cookie.java b/web/src/main/java/org/apache/shiro/web/servlet/Cookie.java index 8a333e3562..17c710e424 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/Cookie.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/Cookie.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.servlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; /** * Interface representing HTTP cookie operations, supporting pojo-style getters and setters for all diff --git a/web/src/main/java/org/apache/shiro/web/servlet/HttpSessionContext.java b/web/src/main/java/org/apache/shiro/web/servlet/HttpSessionContext.java deleted file mode 100644 index 6942b7a28e..0000000000 --- a/web/src/main/java/org/apache/shiro/web/servlet/HttpSessionContext.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.shiro.web.servlet; - -/** - * Shim for interface that no longer exists in Jakarta EE, - * but still exists in Java EE - */ -@Deprecated -public interface HttpSessionContext { - -} diff --git a/web/src/main/java/org/apache/shiro/web/servlet/IniShiroFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/IniShiroFilter.java index 83bd90e179..98082b244c 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/IniShiroFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/IniShiroFilter.java @@ -74,7 +74,7 @@ * </filter> * * Unqualified (schemeless or 'non-prefixed') paths are assumed to be {@code ServletContext} resource paths, resolvable - * via {@link javax.servlet.ServletContext#getResourceAsStream(String) ServletContext#getResourceAsStream}. + * via {@link jakarta.servlet.ServletContext#getResourceAsStream(String) ServletContext#getResourceAsStream}. *

      * Non-ServletContext resources may be loaded from qualified locations by specifying prefixes indicating the source, * e.g. {@code file:}, {@code url:}, and {@code classpath:}. See the @@ -337,7 +337,7 @@ protected Ini getServletContextIniResource(String servletContextPath) { *

      * If the path does not have a resource prefix as defined by {@link ResourceUtils#hasResourcePrefix(String)}, the * path is expected to be resolvable by the {@code ServletContext} via - * {@link javax.servlet.ServletContext#getResourceAsStream(String)}. + * {@link jakarta.servlet.ServletContext#getResourceAsStream(String)}. * * @param path the path of the INI resource to load into an INI instance. * @return an INI instance populated based on the given INI resource path. diff --git a/web/src/main/java/org/apache/shiro/web/servlet/NameableFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/NameableFilter.java index c8d503c2e1..daa5548db3 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/NameableFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/NameableFilter.java @@ -20,13 +20,13 @@ import org.apache.shiro.lang.util.Nameable; -import javax.servlet.FilterConfig; +import jakarta.servlet.FilterConfig; /** * Allows a filter to be named via JavaBeans-compatible * {@link #getName()}/{@link #setName(String)} methods. If no name is specified, the name of the filter will * default to the name given to it in {@code web.xml} (the {@code FilterConfig}'s - * {@link javax.servlet.FilterConfig#getFilterName() filterName}). + * {@link jakarta.servlet.FilterConfig#getFilterName() filterName}). * * @since 1.0 */ @@ -46,8 +46,8 @@ public abstract class NameableFilter extends AbstractFilter implements Nameable * this.name = {@link #getFilterConfig() getFilterConfig()}.{@link FilterConfig#getFilterName() getName()}; * * @return the filter name, or {@code null} if none available - * @see javax.servlet.GenericServlet#getServletName() - * @see javax.servlet.FilterConfig#getFilterName() + * @see jakarta.servlet.GenericServlet#getServletName() + * @see jakarta.servlet.FilterConfig#getFilterName() */ protected String getName() { if (this.name == null) { @@ -67,7 +67,7 @@ protected String getName() { * servlet container at start-up: *

            * this.name = {@link #getFilterConfig() getFilterConfig()}.
      -     *     {@link javax.servlet.FilterConfig#getFilterName() getName()};
      + * {@link jakarta.servlet.FilterConfig#getFilterName() getName()}; * * @param name the name of the filter. */ diff --git a/web/src/main/java/org/apache/shiro/web/servlet/OncePerRequestFilter.java b/web/src/main/java/org/apache/shiro/web/servlet/OncePerRequestFilter.java index fadfb4d532..59291f31ee 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/OncePerRequestFilter.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/OncePerRequestFilter.java @@ -21,10 +21,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; /** @@ -36,7 +36,7 @@ * to identify that a request is already filtered. The default implementation * is based on the configured name of the concrete filter instance. *

      Controlling filter execution

      - * 1.2 introduced the {@link #isEnabled(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} method and + * 1.2 introduced the {@link #isEnabled(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} method and * {@link #isEnabled()} property to allow explicit control over whether the filter executes (or allows passthrough) * for any given request. *

      @@ -68,7 +68,7 @@ public abstract class OncePerRequestFilter extends NameableFilter { /** * Determines if the filter's once per request functionality is enabled, defaults to false. It is recommended - * to leave this disabled if you are using a {@link javax.servlet.RequestDispatcher RequestDispatcher} to forward + * to leave this disabled if you are using a {@link jakarta.servlet.RequestDispatcher RequestDispatcher} to forward * or include request (JSP tags, programmatically, or via a framework). */ private boolean filterOncePerRequest; @@ -81,7 +81,7 @@ public abstract class OncePerRequestFilter extends NameableFilter { *

      * * This configuration property is for general configuration for any request that comes through * the filter. The - * {@link #isEnabled(javax.servlet.ServletRequest, javax.servlet.ServletResponse) isEnabled(request,response)} + * {@link #isEnabled(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse) isEnabled(request,response)} * method actually determines whether or not if the filter is enabled based on the current request. * * @return {@code true} if this filter should generally execute, {@code false} if it should let the @@ -116,7 +116,7 @@ public boolean isFilterOncePerRequest() { /** * Sets whether this filter executes once per request or for every invocation of the filter. It is recommended - * to leave this disabled if you are using a {@link javax.servlet.RequestDispatcher RequestDispatcher} to forward + * to leave this disabled if you are using a {@link jakarta.servlet.RequestDispatcher RequestDispatcher} to forward * or include request (JSP tags, programmatically, or via a framework). * * @param filterOncePerRequest Whether this filter executes once per request. @@ -214,7 +214,7 @@ protected String getAlreadyFilteredAttributeName() { * @param request current HTTP request * @return whether the given request should not be filtered * @throws ServletException in case of errors - * @deprecated in favor of overriding {@link #isEnabled(javax.servlet.ServletRequest, javax.servlet.ServletResponse)} + * @deprecated in favor of overriding {@link #isEnabled(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)} * for custom behavior. This method will be removed in Shiro 2.0. */ @Deprecated @@ -226,7 +226,7 @@ protected boolean shouldNotFilter(ServletRequest request) throws ServletExceptio /** * Same contract as for - * {@link #doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)}, + * {@link #doFilter(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, jakarta.servlet.FilterChain)}, * but guaranteed to be invoked only once per request. * * @param request incoming {@code ServletRequest} diff --git a/web/src/main/java/org/apache/shiro/web/servlet/ProxiedFilterChain.java b/web/src/main/java/org/apache/shiro/web/servlet/ProxiedFilterChain.java index 15590ee943..237c731d01 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/ProxiedFilterChain.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/ProxiedFilterChain.java @@ -21,11 +21,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; import java.util.List; diff --git a/web/src/main/java/org/apache/shiro/web/servlet/ServletContextSupport.java b/web/src/main/java/org/apache/shiro/web/servlet/ServletContextSupport.java index 652620b98c..e6f09eeaed 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/ServletContextSupport.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/ServletContextSupport.java @@ -18,7 +18,7 @@ */ package org.apache.shiro.web.servlet; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; /** * Base implementation for any components that need to access the web application's {@link ServletContext ServletContext}. diff --git a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletRequest.java b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletRequest.java index 664014f576..9239a91c00 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletRequest.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletRequest.java @@ -24,10 +24,10 @@ import org.apache.shiro.subject.support.DisabledSessionException; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; -import javax.servlet.http.HttpSession; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.http.HttpSession; import java.security.Principal; diff --git a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletResponse.java b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletResponse.java index 9b16b51a72..e645f7b360 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletResponse.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpServletResponse.java @@ -18,11 +18,11 @@ */ package org.apache.shiro.web.servlet; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpServletResponseWrapper; -import javax.servlet.http.HttpSession; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; +import jakarta.servlet.http.HttpSession; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; diff --git a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpSession.java b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpSession.java index 3223eb4b0b..8e068357cc 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpSession.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/ShiroHttpSession.java @@ -22,11 +22,11 @@ import org.apache.shiro.session.Session; import org.apache.shiro.web.session.HttpServletSession; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; -import javax.servlet.http.HttpSessionBindingEvent; -import javax.servlet.http.HttpSessionBindingListener; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpSession; +import jakarta.servlet.http.HttpSessionBindingEvent; +import jakarta.servlet.http.HttpSessionBindingListener; import java.util.Collection; import java.util.Enumeration; import java.util.HashSet; @@ -49,28 +49,6 @@ public class ShiroHttpSession implements HttpSession { */ public static final String DEFAULT_SESSION_ID_NAME = "JSESSIONID"; - private static final Enumeration EMPTY_ENUMERATION = new Enumeration<>() { - public boolean hasMoreElements() { - return false; - } - - public String nextElement() { - return null; - } - }; - - @SuppressWarnings({"deprecation"}) - private static final javax.servlet.http.HttpSessionContext HTTP_SESSION_CONTEXT = - new javax.servlet.http.HttpSessionContext() { - public HttpSession getSession(String s) { - return null; - } - - public Enumeration getIds() { - return EMPTY_ENUMERATION; - } - }; - protected ServletContext servletContext; protected HttpServletRequest currentRequest; //'real' Shiro Session @@ -127,11 +105,6 @@ public int getMaxInactiveInterval() { } } - @SuppressWarnings({"deprecation"}) - public javax.servlet.http.HttpSessionContext getSessionContext() { - return HTTP_SESSION_CONTEXT; - } - public Object getAttribute(String s) { try { return getSession().getAttribute(s); @@ -140,12 +113,6 @@ public Object getAttribute(String s) { } } - @Deprecated - @Override - public Object getValue(String s) { - return getAttribute(s); - } - protected Set getKeyNames() { Collection keySet; try { diff --git a/web/src/main/java/org/apache/shiro/web/servlet/SimpleCookie.java b/web/src/main/java/org/apache/shiro/web/servlet/SimpleCookie.java index 2004c41096..fa663e772a 100644 --- a/web/src/main/java/org/apache/shiro/web/servlet/SimpleCookie.java +++ b/web/src/main/java/org/apache/shiro/web/servlet/SimpleCookie.java @@ -23,8 +23,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -35,7 +35,7 @@ /** * Default {@link Cookie Cookie} implementation. 'HttpOnly' is supported out of the box, even on * Servlet {@code 2.4} and {@code 2.5} container implementations, using raw header writing logic and not - * {@link javax.servlet.http.Cookie javax.servlet.http.Cookie} objects (which only has 'HttpOnly' support in Servlet + * {@link jakarta.servlet.http.Cookie javax.servlet.http.Cookie} objects (which only has 'HttpOnly' support in Servlet * {@code 2.6} specifications and above). * * @since 1.0 @@ -219,8 +219,8 @@ public void setSameSite(SameSiteOptions sameSite) { } /** - * Returns the Cookie's calculated path setting. If the {@link javax.servlet.http.Cookie#getPath() path} is {@code null}, - * then the {@code request}'s {@link javax.servlet.http.HttpServletRequest#getContextPath() context path} + * Returns the Cookie's calculated path setting. If the {@link jakarta.servlet.http.Cookie#getPath() path} is {@code null}, + * then the {@code request}'s {@link jakarta.servlet.http.HttpServletRequest#getContextPath() context path} * will be returned. If getContextPath() is the empty string or null then the ROOT_PATH constant is returned. * * @param request the incoming HttpServletRequest @@ -445,7 +445,7 @@ public void removeFrom(HttpServletRequest request, HttpServletResponse response) public String readValue(HttpServletRequest request, HttpServletResponse ignored) { String name = getName(); String value = null; - javax.servlet.http.Cookie cookie = getCookie(request, name); + jakarta.servlet.http.Cookie cookie = getCookie(request, name); if (cookie != null) { // Validate that the cookie is used at the correct place. String path = StringUtils.clean(getPath()); @@ -472,10 +472,10 @@ public String readValue(HttpServletRequest request, HttpServletResponse ignored) * @return the cookie with the given name from the request or {@code null} if no cookie * with that name could be found. */ - private static javax.servlet.http.Cookie getCookie(HttpServletRequest request, String cookieName) { - javax.servlet.http.Cookie[] cookies = request.getCookies(); + private static jakarta.servlet.http.Cookie getCookie(HttpServletRequest request, String cookieName) { + jakarta.servlet.http.Cookie[] cookies = request.getCookies(); if (cookies != null) { - for (javax.servlet.http.Cookie cookie : cookies) { + for (jakarta.servlet.http.Cookie cookie : cookies) { if (cookie.getName().equals(cookieName)) { return cookie; } diff --git a/web/src/main/java/org/apache/shiro/web/session/HttpServletSession.java b/web/src/main/java/org/apache/shiro/web/session/HttpServletSession.java index 7ddf98c09d..8c90031079 100644 --- a/web/src/main/java/org/apache/shiro/web/session/HttpServletSession.java +++ b/web/src/main/java/org/apache/shiro/web/session/HttpServletSession.java @@ -23,7 +23,7 @@ import org.apache.shiro.lang.util.StringUtils; import org.apache.shiro.web.servlet.ShiroHttpSession; -import javax.servlet.http.HttpSession; +import jakarta.servlet.http.HttpSession; import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; diff --git a/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionContext.java b/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionContext.java index 263c60ea02..3051d9d19b 100644 --- a/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionContext.java +++ b/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionContext.java @@ -20,8 +20,8 @@ import org.apache.shiro.session.mgt.DefaultSessionContext; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.util.Map; /** diff --git a/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionManager.java b/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionManager.java index 709c158622..a19df5f007 100644 --- a/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionManager.java +++ b/web/src/main/java/org/apache/shiro/web/session/mgt/DefaultWebSessionManager.java @@ -33,10 +33,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.Serializable; diff --git a/web/src/main/java/org/apache/shiro/web/session/mgt/ServletContainerSessionManager.java b/web/src/main/java/org/apache/shiro/web/session/mgt/ServletContainerSessionManager.java index b20eb5f3e0..1977e3477d 100644 --- a/web/src/main/java/org/apache/shiro/web/session/mgt/ServletContainerSessionManager.java +++ b/web/src/main/java/org/apache/shiro/web/session/mgt/ServletContainerSessionManager.java @@ -26,9 +26,9 @@ import org.apache.shiro.web.session.HttpServletSession; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpSession; /** diff --git a/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionContext.java b/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionContext.java index 84fd1e1805..55771256ec 100644 --- a/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionContext.java +++ b/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionContext.java @@ -21,8 +21,8 @@ import org.apache.shiro.session.mgt.SessionContext; import org.apache.shiro.web.util.RequestPairSource; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code WebSubjectContext} is a {@link SessionContext} that additionally provides for type-safe diff --git a/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionKey.java b/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionKey.java index 436cd14f9e..02cded524e 100644 --- a/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionKey.java +++ b/web/src/main/java/org/apache/shiro/web/session/mgt/WebSessionKey.java @@ -18,8 +18,8 @@ import org.apache.shiro.session.mgt.DefaultSessionKey; import org.apache.shiro.web.util.RequestPairSource; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.Serializable; /** diff --git a/web/src/main/java/org/apache/shiro/web/subject/WebSubject.java b/web/src/main/java/org/apache/shiro/web/subject/WebSubject.java index 5f8b66bbe2..72c53c515d 100644 --- a/web/src/main/java/org/apache/shiro/web/subject/WebSubject.java +++ b/web/src/main/java/org/apache/shiro/web/subject/WebSubject.java @@ -25,8 +25,8 @@ import org.apache.shiro.web.subject.support.DefaultWebSubjectContext; import org.apache.shiro.web.util.RequestPairSource; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code WebSubject} represents a Subject instance that was acquired as a result of an incoming diff --git a/web/src/main/java/org/apache/shiro/web/subject/WebSubjectContext.java b/web/src/main/java/org/apache/shiro/web/subject/WebSubjectContext.java index d7de2cd5a6..c5757578bf 100644 --- a/web/src/main/java/org/apache/shiro/web/subject/WebSubjectContext.java +++ b/web/src/main/java/org/apache/shiro/web/subject/WebSubjectContext.java @@ -21,8 +21,8 @@ import org.apache.shiro.subject.SubjectContext; import org.apache.shiro.web.util.RequestPairSource; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code WebSubjectContext} is a {@link SubjectContext} that additionally provides for type-safe diff --git a/web/src/main/java/org/apache/shiro/web/subject/support/DefaultWebSubjectContext.java b/web/src/main/java/org/apache/shiro/web/subject/support/DefaultWebSubjectContext.java index 2f0eddff7d..ee6beb6753 100644 --- a/web/src/main/java/org/apache/shiro/web/subject/support/DefaultWebSubjectContext.java +++ b/web/src/main/java/org/apache/shiro/web/subject/support/DefaultWebSubjectContext.java @@ -23,8 +23,8 @@ import org.apache.shiro.web.subject.WebSubject; import org.apache.shiro.web.subject.WebSubjectContext; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * Default {@code WebSubjectContext} implementation that provides for additional storage and retrieval of diff --git a/web/src/main/java/org/apache/shiro/web/subject/support/WebDelegatingSubject.java b/web/src/main/java/org/apache/shiro/web/subject/support/WebDelegatingSubject.java index c3b04df753..cb9b76c57a 100644 --- a/web/src/main/java/org/apache/shiro/web/subject/support/WebDelegatingSubject.java +++ b/web/src/main/java/org/apache/shiro/web/subject/support/WebDelegatingSubject.java @@ -29,8 +29,8 @@ import org.apache.shiro.web.subject.WebSubject; import org.apache.shiro.web.util.WebUtils; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * Default {@link WebSubject WebSubject} implementation that additional ensures the ability to retain a diff --git a/web/src/main/java/org/apache/shiro/web/tags/AuthenticatedTag.java b/web/src/main/java/org/apache/shiro/web/tags/AuthenticatedTag.java index 77f711254b..524d51414e 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/AuthenticatedTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/AuthenticatedTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/web/src/main/java/org/apache/shiro/web/tags/GuestTag.java b/web/src/main/java/org/apache/shiro/web/tags/GuestTag.java index 0333e46d2d..662e9b4bd8 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/GuestTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/GuestTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/web/src/main/java/org/apache/shiro/web/tags/NotAuthenticatedTag.java b/web/src/main/java/org/apache/shiro/web/tags/NotAuthenticatedTag.java index c457afb05a..f94a4f9460 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/NotAuthenticatedTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/NotAuthenticatedTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/web/src/main/java/org/apache/shiro/web/tags/PermissionTag.java b/web/src/main/java/org/apache/shiro/web/tags/PermissionTag.java index c112341207..0db1bd8748 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/PermissionTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/PermissionTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; /** * @since 0.1 diff --git a/web/src/main/java/org/apache/shiro/web/tags/PrincipalTag.java b/web/src/main/java/org/apache/shiro/web/tags/PrincipalTag.java index eeb9c62558..632adcceb9 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/PrincipalTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/PrincipalTag.java @@ -21,8 +21,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.JspTagException; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.JspTagException; import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; diff --git a/web/src/main/java/org/apache/shiro/web/tags/RoleTag.java b/web/src/main/java/org/apache/shiro/web/tags/RoleTag.java index a296096224..7bbab26e0e 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/RoleTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/RoleTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; /** * @since 0.1 diff --git a/web/src/main/java/org/apache/shiro/web/tags/SecureTag.java b/web/src/main/java/org/apache/shiro/web/tags/SecureTag.java index 273fa85ec5..19ebdb1ed6 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/SecureTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/SecureTag.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/web/src/main/java/org/apache/shiro/web/tags/UserTag.java b/web/src/main/java/org/apache/shiro/web/tags/UserTag.java index 7adb0810bf..4e4a641514 100644 --- a/web/src/main/java/org/apache/shiro/web/tags/UserTag.java +++ b/web/src/main/java/org/apache/shiro/web/tags/UserTag.java @@ -18,7 +18,7 @@ */ package org.apache.shiro.web.tags; -import javax.servlet.jsp.JspException; +import jakarta.servlet.jsp.JspException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/web/src/main/java/org/apache/shiro/web/util/RedirectView.java b/web/src/main/java/org/apache/shiro/web/util/RedirectView.java index c1390ed179..9f0469e654 100644 --- a/web/src/main/java/org/apache/shiro/web/util/RedirectView.java +++ b/web/src/main/java/org/apache/shiro/web/util/RedirectView.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.util; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; @@ -57,7 +57,7 @@ * * @see #setContextRelative * @see #setHttp10Compatible - * @see javax.servlet.http.HttpServletResponse#sendRedirect + * @see jakarta.servlet.http.HttpServletResponse#sendRedirect * @since 0.2 */ public class RedirectView { @@ -143,7 +143,7 @@ public void setUrl(String url) { * @param contextRelative whether to interpret a given URL that starts with a slash ("/") * as relative to the current ServletContext, i.e. as relative to the * web application root. - * @see javax.servlet.http.HttpServletRequest#getContextPath + * @see jakarta.servlet.http.HttpServletRequest#getContextPath */ public void setContextRelative(boolean contextRelative) { this.contextRelative = contextRelative; @@ -160,7 +160,7 @@ public void setContextRelative(boolean contextRelative) { * after a POST request; turn this flag off in such a scenario. * * @param http10Compatible whether to stay compatible with HTTP 1.0 clients. - * @see javax.servlet.http.HttpServletResponse#sendRedirect + * @see jakarta.servlet.http.HttpServletResponse#sendRedirect */ public void setHttp10Compatible(boolean http10Compatible) { this.http10Compatible = http10Compatible; diff --git a/web/src/main/java/org/apache/shiro/web/util/RequestPairSource.java b/web/src/main/java/org/apache/shiro/web/util/RequestPairSource.java index d280ae9cba..137dfb3924 100644 --- a/web/src/main/java/org/apache/shiro/web/util/RequestPairSource.java +++ b/web/src/main/java/org/apache/shiro/web/util/RequestPairSource.java @@ -15,8 +15,8 @@ */ package org.apache.shiro.web.util; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; /** * A {@code RequestPairSource} is a component that can supply a {@link ServletRequest ServletRequest} and diff --git a/web/src/main/java/org/apache/shiro/web/util/SavedRequest.java b/web/src/main/java/org/apache/shiro/web/util/SavedRequest.java index d52a10c154..4c28800720 100644 --- a/web/src/main/java/org/apache/shiro/web/util/SavedRequest.java +++ b/web/src/main/java/org/apache/shiro/web/util/SavedRequest.java @@ -18,7 +18,7 @@ */ package org.apache.shiro.web.util; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.io.Serializable; /** diff --git a/web/src/main/java/org/apache/shiro/web/util/WebUtils.java b/web/src/main/java/org/apache/shiro/web/util/WebUtils.java index 99717f2429..8960e5c1ab 100644 --- a/web/src/main/java/org/apache/shiro/web/util/WebUtils.java +++ b/web/src/main/java/org/apache/shiro/web/util/WebUtils.java @@ -30,11 +30,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletContext; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; @@ -89,7 +89,7 @@ public final class WebUtils { * Default character encoding to use when request.getCharacterEncoding * returns null, according to the Servlet spec. * - * @see javax.servlet.ServletRequest#getCharacterEncoding + * @see jakarta.servlet.ServletRequest#getCharacterEncoding */ public static final String DEFAULT_CHARACTER_ENCODING = "ISO-8859-1"; @@ -366,7 +366,7 @@ public static WebEnvironment getWebEnvironment(ServletContext sc, String attrNam * @param source the String to decode * @return the decoded String * @see #DEFAULT_CHARACTER_ENCODING - * @see javax.servlet.ServletRequest#getCharacterEncoding + * @see jakarta.servlet.ServletRequest#getCharacterEncoding * @see java.net.URLDecoder#decode(String, String) * @see java.net.URLDecoder#decode(String) */ @@ -394,7 +394,7 @@ public static String decodeRequestString(HttpServletRequest request, String sour * * @param request current HTTP request * @return the encoding for the request (never null) - * @see javax.servlet.ServletRequest#getCharacterEncoding() + * @see jakarta.servlet.ServletRequest#getCharacterEncoding() */ protected static String determineEncoding(HttpServletRequest request) { String enc = request.getCharacterEncoding(); @@ -671,13 +671,13 @@ public static SavedRequest getSavedRequest(ServletRequest request) { /** * Redirects the to the request url from a previously - * {@link #saveRequest(javax.servlet.ServletRequest) saved} request, or if there is no saved request, redirects the + * {@link #saveRequest(jakarta.servlet.ServletRequest) saved} request, or if there is no saved request, redirects the * end user to the specified {@code fallbackUrl}. If there is no saved request or fallback url, this method * throws an {@link IllegalStateException}. *

      * This method is primarily used to support a common login scenario - if an unauthenticated user accesses a * page that requires authentication, it is expected that request is - * {@link #saveRequest(javax.servlet.ServletRequest) saved} first and then redirected to the login page. Then, + * {@link #saveRequest(jakarta.servlet.ServletRequest) saved} first and then redirected to the login page. Then, * after a successful login, this method can be called to redirect them back to their originally requested URL, a * nice usability feature. * diff --git a/web/src/test/groovy/org/apache/shiro/web/config/IniFilterChainResolverFactoryTest.groovy b/web/src/test/groovy/org/apache/shiro/web/config/IniFilterChainResolverFactoryTest.groovy index 0600b718a0..aee0880d7e 100644 --- a/web/src/test/groovy/org/apache/shiro/web/config/IniFilterChainResolverFactoryTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/config/IniFilterChainResolverFactoryTest.groovy @@ -24,9 +24,9 @@ import org.hamcrest.Matchers import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.parallel.Isolated -import javax.servlet.Filter -import javax.servlet.FilterConfig -import javax.servlet.ServletContext +import jakarta.servlet.Filter +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletContext import org.apache.shiro.config.Ini import org.apache.shiro.web.filter.authc.FormAuthenticationFilter import org.apache.shiro.web.filter.authz.SslFilter diff --git a/web/src/test/groovy/org/apache/shiro/web/env/EnvironmentLoaderTest.groovy b/web/src/test/groovy/org/apache/shiro/web/env/EnvironmentLoaderTest.groovy index 22cd0fc44b..cbbf29eacb 100644 --- a/web/src/test/groovy/org/apache/shiro/web/env/EnvironmentLoaderTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/env/EnvironmentLoaderTest.groovy @@ -27,7 +27,7 @@ import static org.easymock.EasyMock.*; import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.Test -import javax.servlet.ServletContext +import jakarta.servlet.ServletContext /** * Unit tests for the {@link EnvironmentLoaderTest} implementation. diff --git a/web/src/test/groovy/org/apache/shiro/web/env/MockWebEnvironment.groovy b/web/src/test/groovy/org/apache/shiro/web/env/MockWebEnvironment.groovy index 2bb9a297d8..4cb90cfd0b 100644 --- a/web/src/test/groovy/org/apache/shiro/web/env/MockWebEnvironment.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/env/MockWebEnvironment.groovy @@ -23,7 +23,7 @@ import org.apache.shiro.web.config.ShiroFilterConfiguration import org.apache.shiro.web.filter.mgt.FilterChainResolver import org.apache.shiro.web.mgt.WebSecurityManager -import javax.servlet.ServletContext +import jakarta.servlet.ServletContext /** * Mock WebEnvironment, replaces IniWebEnvironment in EnvironmentLoader tests, to avoid extra dependencies. diff --git a/web/src/test/groovy/org/apache/shiro/web/filter/InvalidRequestFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/filter/InvalidRequestFilterTest.groovy index a046670d36..ac5942186e 100644 --- a/web/src/test/groovy/org/apache/shiro/web/filter/InvalidRequestFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/filter/InvalidRequestFilterTest.groovy @@ -23,7 +23,7 @@ import org.apache.shiro.web.RestoreSystemProperties import org.junit.jupiter.api.Test import org.junit.jupiter.api.parallel.Isolated -import javax.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletRequest import static org.easymock.EasyMock.expect import static org.easymock.EasyMock.mock diff --git a/web/src/test/groovy/org/apache/shiro/web/filter/authc/BearerHttpFilterAuthenticationTest.groovy b/web/src/test/groovy/org/apache/shiro/web/filter/authc/BearerHttpFilterAuthenticationTest.groovy index 25e51dcf65..544a34af98 100644 --- a/web/src/test/groovy/org/apache/shiro/web/filter/authc/BearerHttpFilterAuthenticationTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/filter/authc/BearerHttpFilterAuthenticationTest.groovy @@ -25,8 +25,8 @@ import org.hamcrest.CoreMatchers import org.hamcrest.Matchers import org.junit.jupiter.api.Test -import javax.servlet.http.HttpServletRequest -import javax.servlet.http.HttpServletResponse +import jakarta.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletResponse import static org.easymock.EasyMock.* import static org.hamcrest.MatcherAssert.assertThat diff --git a/web/src/test/groovy/org/apache/shiro/web/filter/authc/LogoutFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/filter/authc/LogoutFilterTest.groovy index e666fac454..32c210889b 100644 --- a/web/src/test/groovy/org/apache/shiro/web/filter/authc/LogoutFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/filter/authc/LogoutFilterTest.groovy @@ -21,10 +21,10 @@ package org.apache.shiro.web.filter.authc import org.apache.shiro.subject.Subject import org.junit.jupiter.api.Test -import javax.servlet.ServletRequest -import javax.servlet.ServletResponse -import javax.servlet.http.HttpServletRequest -import javax.servlet.http.HttpServletResponse +import jakarta.servlet.ServletRequest +import jakarta.servlet.ServletResponse +import jakarta.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletResponse import static org.easymock.EasyMock.* import static org.junit.jupiter.api.Assertions.* diff --git a/web/src/test/groovy/org/apache/shiro/web/filter/mgt/DefaultFilterChainManagerTest.groovy b/web/src/test/groovy/org/apache/shiro/web/filter/mgt/DefaultFilterChainManagerTest.groovy index 06b811b0d7..6e2e55ee42 100644 --- a/web/src/test/groovy/org/apache/shiro/web/filter/mgt/DefaultFilterChainManagerTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/filter/mgt/DefaultFilterChainManagerTest.groovy @@ -24,10 +24,10 @@ import org.apache.shiro.web.servlet.ShiroFilter import org.hamcrest.Matchers import org.junit.jupiter.api.BeforeEach -import javax.servlet.Filter -import javax.servlet.FilterChain -import javax.servlet.FilterConfig -import javax.servlet.ServletContext +import jakarta.servlet.Filter +import jakarta.servlet.FilterChain +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletContext import org.junit.jupiter.api.Test import static org.easymock.EasyMock.* diff --git a/web/src/test/groovy/org/apache/shiro/web/filter/session/NoSessionCreationFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/filter/session/NoSessionCreationFilterTest.groovy index 0b13cd3076..9ecfcd0583 100644 --- a/web/src/test/groovy/org/apache/shiro/web/filter/session/NoSessionCreationFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/filter/session/NoSessionCreationFilterTest.groovy @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.filter.session -import javax.servlet.ServletRequest -import javax.servlet.ServletResponse +import jakarta.servlet.ServletRequest +import jakarta.servlet.ServletResponse import org.apache.shiro.subject.support.DefaultSubjectContext import org.junit.jupiter.api.Test diff --git a/web/src/test/groovy/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluatorTest.groovy b/web/src/test/groovy/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluatorTest.groovy index 648e892e45..dab4120acb 100644 --- a/web/src/test/groovy/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluatorTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/mgt/DefaultWebSessionStorageEvaluatorTest.groovy @@ -18,8 +18,8 @@ */ package org.apache.shiro.web.mgt -import javax.servlet.ServletRequest -import javax.servlet.ServletResponse +import jakarta.servlet.ServletRequest +import jakarta.servlet.ServletResponse import org.apache.shiro.session.Session import org.apache.shiro.subject.Subject import org.apache.shiro.subject.support.DefaultSubjectContext diff --git a/web/src/test/groovy/org/apache/shiro/web/servlet/AbstractShiroFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/servlet/AbstractShiroFilterTest.groovy index 11dc47826b..e38a6cd714 100644 --- a/web/src/test/groovy/org/apache/shiro/web/servlet/AbstractShiroFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/servlet/AbstractShiroFilterTest.groovy @@ -20,8 +20,8 @@ package org.apache.shiro.web.servlet import org.junit.jupiter.api.parallel.Isolated -import javax.servlet.FilterConfig -import javax.servlet.ServletContext +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletContext import org.apache.shiro.SecurityUtils import org.apache.shiro.UnavailableSecurityManagerException import org.apache.shiro.web.mgt.WebSecurityManager diff --git a/web/src/test/groovy/org/apache/shiro/web/servlet/IniShiroFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/servlet/IniShiroFilterTest.groovy index c2e68ee844..ca07f14917 100644 --- a/web/src/test/groovy/org/apache/shiro/web/servlet/IniShiroFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/servlet/IniShiroFilterTest.groovy @@ -18,9 +18,9 @@ */ package org.apache.shiro.web.servlet -import javax.servlet.FilterConfig -import javax.servlet.ServletContext -import javax.servlet.ServletException +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletContext +import jakarta.servlet.ServletException import org.apache.shiro.lang.io.ResourceUtils import org.junit.jupiter.api.Test diff --git a/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroFilterTest.groovy b/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroFilterTest.groovy index d85995e4d3..858f24c77b 100644 --- a/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroFilterTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroFilterTest.groovy @@ -25,8 +25,8 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver import org.apache.shiro.web.mgt.WebSecurityManager import org.junit.jupiter.api.Test -import javax.servlet.FilterConfig -import javax.servlet.ServletContext +import jakarta.servlet.FilterConfig +import jakarta.servlet.ServletContext import static org.hamcrest.MatcherAssert.assertThat import static org.hamcrest.Matchers.sameInstance diff --git a/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroHttpServletResponseTest.groovy b/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroHttpServletResponseTest.groovy index f916e7ca5f..31aae75bd0 100644 --- a/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroHttpServletResponseTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/servlet/ShiroHttpServletResponseTest.groovy @@ -20,9 +20,9 @@ package org.apache.shiro.web.servlet import org.junit.jupiter.api.Test -import javax.servlet.ServletContext -import javax.servlet.http.HttpServletResponse -import javax.servlet.http.HttpSession +import jakarta.servlet.ServletContext +import jakarta.servlet.http.HttpServletResponse +import jakarta.servlet.http.HttpSession import static org.junit.jupiter.api.Assertions.assertEquals import static org.mockito.Mockito.* diff --git a/web/src/test/groovy/org/apache/shiro/web/session/mgt/DefaultWebSessionManagerTest.groovy b/web/src/test/groovy/org/apache/shiro/web/session/mgt/DefaultWebSessionManagerTest.groovy index 4b0895c7c8..0a5d2a88cf 100644 --- a/web/src/test/groovy/org/apache/shiro/web/session/mgt/DefaultWebSessionManagerTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/session/mgt/DefaultWebSessionManagerTest.groovy @@ -28,9 +28,9 @@ import org.junit.jupiter.api.AfterEach import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test -import javax.servlet.ServletRequest -import javax.servlet.http.HttpServletRequest -import javax.servlet.http.HttpServletResponse +import jakarta.servlet.ServletRequest +import jakarta.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletResponse import static org.easymock.EasyMock.* import static org.junit.jupiter.api.Assertions.assertEquals diff --git a/web/src/test/groovy/org/apache/shiro/web/session/mgt/ServletContainerSessionManagerTest.groovy b/web/src/test/groovy/org/apache/shiro/web/session/mgt/ServletContainerSessionManagerTest.groovy index ed58e21105..f1bb4a8895 100644 --- a/web/src/test/groovy/org/apache/shiro/web/session/mgt/ServletContainerSessionManagerTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/session/mgt/ServletContainerSessionManagerTest.groovy @@ -18,9 +18,9 @@ */ package org.apache.shiro.web.session.mgt -import javax.servlet.http.HttpServletRequest -import javax.servlet.http.HttpServletResponse -import javax.servlet.http.HttpSession +import jakarta.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletResponse +import jakarta.servlet.http.HttpSession import org.apache.shiro.session.mgt.SessionContext import org.apache.shiro.session.mgt.SessionKey import org.apache.shiro.web.session.HttpServletSession diff --git a/web/src/test/groovy/org/apache/shiro/web/util/SavedRequestTest.groovy b/web/src/test/groovy/org/apache/shiro/web/util/SavedRequestTest.groovy index 45d775bd9c..95bac6d765 100644 --- a/web/src/test/groovy/org/apache/shiro/web/util/SavedRequestTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/util/SavedRequestTest.groovy @@ -20,7 +20,7 @@ package org.apache.shiro.web.util import org.junit.jupiter.api.Test -import javax.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletRequest import static org.hamcrest.MatcherAssert.assertThat import static org.hamcrest.Matchers.equalTo import static org.easymock.EasyMock.niceMock diff --git a/web/src/test/groovy/org/apache/shiro/web/util/WebUtilsTest.groovy b/web/src/test/groovy/org/apache/shiro/web/util/WebUtilsTest.groovy index 5bd61e6ba1..53b8e3c0ff 100644 --- a/web/src/test/groovy/org/apache/shiro/web/util/WebUtilsTest.groovy +++ b/web/src/test/groovy/org/apache/shiro/web/util/WebUtilsTest.groovy @@ -22,7 +22,7 @@ import org.apache.shiro.web.RestoreSystemProperties import org.junit.jupiter.api.Test import org.junit.jupiter.api.parallel.Isolated -import javax.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletRequest import static org.easymock.EasyMock.* import static org.hamcrest.MatcherAssert.* diff --git a/web/src/test/java/org/apache/shiro/web/WebTest.java b/web/src/test/java/org/apache/shiro/web/WebTest.java index 25ced2f685..5a109028f9 100644 --- a/web/src/test/java/org/apache/shiro/web/WebTest.java +++ b/web/src/test/java/org/apache/shiro/web/WebTest.java @@ -18,8 +18,8 @@ */ package org.apache.shiro.web; -import javax.servlet.FilterConfig; -import javax.servlet.ServletContext; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletContext; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; diff --git a/web/src/test/java/org/apache/shiro/web/config/WebIniSecurityManagerFactoryTest.java b/web/src/test/java/org/apache/shiro/web/config/WebIniSecurityManagerFactoryTest.java index 3258f50841..5bd8d331ea 100644 --- a/web/src/test/java/org/apache/shiro/web/config/WebIniSecurityManagerFactoryTest.java +++ b/web/src/test/java/org/apache/shiro/web/config/WebIniSecurityManagerFactoryTest.java @@ -24,7 +24,7 @@ import org.apache.shiro.web.mgt.DefaultWebSecurityManager; import org.junit.jupiter.api.Test; -import javax.servlet.Filter; +import jakarta.servlet.Filter; import java.util.Map; import static org.assertj.core.api.Assertions.assertThat; diff --git a/web/src/test/java/org/apache/shiro/web/env/EnvironmentLoaderServiceTest.java b/web/src/test/java/org/apache/shiro/web/env/EnvironmentLoaderServiceTest.java index f9bc7abfa7..5e4fce4ac3 100644 --- a/web/src/test/java/org/apache/shiro/web/env/EnvironmentLoaderServiceTest.java +++ b/web/src/test/java/org/apache/shiro/web/env/EnvironmentLoaderServiceTest.java @@ -22,7 +22,7 @@ import org.easymock.EasyMock; import org.junit.jupiter.api.Test; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import java.util.Arrays; import java.util.List; diff --git a/web/src/test/java/org/apache/shiro/web/env/FilterStub.java b/web/src/test/java/org/apache/shiro/web/env/FilterStub.java index 1341fb323c..9335938115 100644 --- a/web/src/test/java/org/apache/shiro/web/env/FilterStub.java +++ b/web/src/test/java/org/apache/shiro/web/env/FilterStub.java @@ -18,12 +18,12 @@ */ package org.apache.shiro.web.env; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; public class FilterStub implements Filter { diff --git a/web/src/test/java/org/apache/shiro/web/env/WebEnvironmentStub.java b/web/src/test/java/org/apache/shiro/web/env/WebEnvironmentStub.java index 7dc7f7ca4a..79e1732052 100644 --- a/web/src/test/java/org/apache/shiro/web/env/WebEnvironmentStub.java +++ b/web/src/test/java/org/apache/shiro/web/env/WebEnvironmentStub.java @@ -23,7 +23,7 @@ import org.apache.shiro.web.filter.mgt.FilterChainResolver; import org.apache.shiro.web.mgt.WebSecurityManager; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; public class WebEnvironmentStub implements WebEnvironment, MutableWebEnvironment { diff --git a/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterParameterizedTest.java b/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterParameterizedTest.java index 7547e7c465..3933dbdaba 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterParameterizedTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterParameterizedTest.java @@ -24,9 +24,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import java.util.stream.Stream; diff --git a/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterTest.java b/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterTest.java index e5b1084fc4..2735168d04 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/PathMatchingFilterTest.java @@ -21,9 +21,9 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; import static org.assertj.core.api.Assertions.assertThat; import static org.easymock.EasyMock.createNiceMock; diff --git a/web/src/test/java/org/apache/shiro/web/filter/authc/BasicHttpFilterAuthenticationTest.java b/web/src/test/java/org/apache/shiro/web/filter/authc/BasicHttpFilterAuthenticationTest.java index ad6c106323..a8ab55c980 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/authc/BasicHttpFilterAuthenticationTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/authc/BasicHttpFilterAuthenticationTest.java @@ -24,8 +24,8 @@ import org.apache.shiro.test.SecurityManagerTestSupport; import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; diff --git a/web/src/test/java/org/apache/shiro/web/filter/authz/AuthorizationFilterTest.java b/web/src/test/java/org/apache/shiro/web/filter/authz/AuthorizationFilterTest.java index 8e436e62c7..fbdaee5885 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/authz/AuthorizationFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/authz/AuthorizationFilterTest.java @@ -22,10 +22,10 @@ import org.apache.shiro.test.SecurityManagerTestSupport; import org.junit.jupiter.api.Test; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.mock; diff --git a/web/src/test/java/org/apache/shiro/web/filter/authz/IpFilterTest.java b/web/src/test/java/org/apache/shiro/web/filter/authz/IpFilterTest.java index c0076a407d..b0d5ca76c6 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/authz/IpFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/authz/IpFilterTest.java @@ -20,7 +20,7 @@ import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequest; import java.util.Collection; import java.util.Collections; diff --git a/web/src/test/java/org/apache/shiro/web/filter/authz/PortFilterTest.java b/web/src/test/java/org/apache/shiro/web/filter/authz/PortFilterTest.java index 8103b309f9..70cae5d19b 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/authz/PortFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/authz/PortFilterTest.java @@ -20,8 +20,8 @@ import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import static org.assertj.core.api.Assertions.assertThat; import static org.easymock.EasyMock.createNiceMock; diff --git a/web/src/test/java/org/apache/shiro/web/filter/authz/SslFilterTest.java b/web/src/test/java/org/apache/shiro/web/filter/authz/SslFilterTest.java index 605a323aff..01c57a5329 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/authz/SslFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/authz/SslFilterTest.java @@ -23,8 +23,8 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.HashMap; import java.util.Map; diff --git a/web/src/test/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolverTest.java b/web/src/test/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolverTest.java index 5d236a328a..f05f3d9490 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolverTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/mgt/PathMatchingFilterChainResolverTest.java @@ -23,12 +23,12 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; diff --git a/web/src/test/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterListTest.java b/web/src/test/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterListTest.java index 3a4bb668f4..0c5ca3f8f2 100644 --- a/web/src/test/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterListTest.java +++ b/web/src/test/java/org/apache/shiro/web/filter/mgt/SimpleNamedFilterListTest.java @@ -26,8 +26,8 @@ import org.apache.shiro.web.filter.authz.SslFilter; import org.junit.jupiter.api.Test; -import javax.servlet.Filter; -import javax.servlet.FilterChain; +import jakarta.servlet.Filter; +import jakarta.servlet.FilterChain; import java.util.ArrayList; import java.util.Iterator; import java.util.List; diff --git a/web/src/test/java/org/apache/shiro/web/mgt/CookieRememberMeManagerTest.java b/web/src/test/java/org/apache/shiro/web/mgt/CookieRememberMeManagerTest.java index c61b817484..e28d6037a9 100644 --- a/web/src/test/java/org/apache/shiro/web/mgt/CookieRememberMeManagerTest.java +++ b/web/src/test/java/org/apache/shiro/web/mgt/CookieRememberMeManagerTest.java @@ -31,9 +31,9 @@ import org.apache.shiro.web.subject.support.DefaultWebSubjectContext; import org.junit.jupiter.api.Test; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.UUID; diff --git a/web/src/test/java/org/apache/shiro/web/mgt/DefaultWebSecurityManagerTest.java b/web/src/test/java/org/apache/shiro/web/mgt/DefaultWebSecurityManagerTest.java index cf6374aacb..6083f6b6a7 100644 --- a/web/src/test/java/org/apache/shiro/web/mgt/DefaultWebSecurityManagerTest.java +++ b/web/src/test/java/org/apache/shiro/web/mgt/DefaultWebSecurityManagerTest.java @@ -36,11 +36,11 @@ import org.junit.jupiter.api.Test; import org.junit.jupiter.api.parallel.Isolated; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.Cookie; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.Cookie; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.io.Serializable; import static org.assertj.core.api.Assertions.assertThat; diff --git a/web/src/test/java/org/apache/shiro/web/servlet/OncePerRequestFilterTest.java b/web/src/test/java/org/apache/shiro/web/servlet/OncePerRequestFilterTest.java index 297abadeb0..f18c10626e 100644 --- a/web/src/test/java/org/apache/shiro/web/servlet/OncePerRequestFilterTest.java +++ b/web/src/test/java/org/apache/shiro/web/servlet/OncePerRequestFilterTest.java @@ -21,10 +21,10 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; import java.io.IOException; import static org.assertj.core.api.Assertions.assertThat; diff --git a/web/src/test/java/org/apache/shiro/web/servlet/ShiroHttpServletRequestTest.java b/web/src/test/java/org/apache/shiro/web/servlet/ShiroHttpServletRequestTest.java index aa3b59e495..d0593129e5 100644 --- a/web/src/test/java/org/apache/shiro/web/servlet/ShiroHttpServletRequestTest.java +++ b/web/src/test/java/org/apache/shiro/web/servlet/ShiroHttpServletRequestTest.java @@ -24,8 +24,8 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; +import jakarta.servlet.ServletContext; +import jakarta.servlet.http.HttpServletRequest; import java.util.concurrent.atomic.AtomicInteger; import static org.assertj.core.api.Assertions.assertThat; diff --git a/web/src/test/java/org/apache/shiro/web/servlet/SimpleCookieTest.java b/web/src/test/java/org/apache/shiro/web/servlet/SimpleCookieTest.java index 4d89b107ab..71bb97241c 100644 --- a/web/src/test/java/org/apache/shiro/web/servlet/SimpleCookieTest.java +++ b/web/src/test/java/org/apache/shiro/web/servlet/SimpleCookieTest.java @@ -21,8 +21,8 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import java.util.Locale; import static org.easymock.EasyMock.createMock; @@ -131,7 +131,7 @@ public void testNullContextPath() throws Exception { public void testReadValueInvalidPath() throws Exception { expect(mockRequest.getRequestURI()).andStubReturn("/foo/index.jsp"); expect(mockRequest.getCookies()).andStubReturn( - new javax.servlet.http.Cookie[] {new javax.servlet.http.Cookie(this.cookie.getName(), "value")}); + new jakarta.servlet.http.Cookie[] {new jakarta.servlet.http.Cookie(this.cookie.getName(), "value")}); replay(mockRequest); replay(mockResponse); @@ -143,7 +143,7 @@ public void testReadValueInvalidPath() throws Exception { public void testReadValuePrefixPath() throws Exception { expect(mockRequest.getRequestURI()).andStubReturn("/bar/index.jsp"); expect(mockRequest.getCookies()).andStubReturn( - new javax.servlet.http.Cookie[] {new javax.servlet.http.Cookie(this.cookie.getName(), "value")}); + new jakarta.servlet.http.Cookie[] {new jakarta.servlet.http.Cookie(this.cookie.getName(), "value")}); replay(mockRequest); replay(mockResponse); @@ -155,7 +155,7 @@ public void testReadValuePrefixPath() throws Exception { public void testReadValueInvalidPrefixPath() throws Exception { expect(mockRequest.getRequestURI()).andStubReturn("/foobar/index.jsp"); expect(mockRequest.getCookies()).andStubReturn( - new javax.servlet.http.Cookie[] {new javax.servlet.http.Cookie(this.cookie.getName(), "value")}); + new jakarta.servlet.http.Cookie[] {new jakarta.servlet.http.Cookie(this.cookie.getName(), "value")}); replay(mockRequest); replay(mockResponse); diff --git a/web/src/test/java/org/apache/shiro/web/session/HttpServletSessionTest.java b/web/src/test/java/org/apache/shiro/web/session/HttpServletSessionTest.java index 2950584a29..a7b5af17a7 100644 --- a/web/src/test/java/org/apache/shiro/web/session/HttpServletSessionTest.java +++ b/web/src/test/java/org/apache/shiro/web/session/HttpServletSessionTest.java @@ -22,7 +22,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import javax.servlet.http.HttpSession; +import jakarta.servlet.http.HttpSession; import static org.assertj.core.api.Assertions.assertThat; import static org.easymock.EasyMock.captureInt;