diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 3358682c..57485784 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -8,7 +8,7 @@ on: env: # Default versions for canonical release build - DEFAULT_JAVA_VERSION: '11' + DEFAULT_JAVA_VERSION: '17' DEFAULT_JRUBY_VERSION: '9.4.13.0' # Should match pom.xml property (AND a version inside the test matrix) jobs: @@ -19,10 +19,8 @@ jobs: strategy: matrix: jruby_version: [ '9.4.13.0', '10.0.0.1' ] - java_version: [ '11', '17', '21' ] + java_version: [ '17', '21' ] exclude: - - jruby_version: '10.0.0.1' - java_version: '11' # JRuby 10 requires Java 21 - jruby_version: '10.0.0.1' java_version: '17' # JRuby 10 requires Java 21 fail-fast: false @@ -53,13 +51,11 @@ jobs: strategy: matrix: jruby_version: [ '9.4.13.0', '10.0.0.1' ] - java_version: [ '11', '17', '21' ] + java_version: [ '17', '21' ] appraisal: [ 'rails50', 'rails52', 'rails60', 'rails61', 'rails70', 'rails71', 'rails72', 'rails80' ] exclude: - jruby_version: '9.4.13.0' appraisal: 'rails80' # Requires Ruby 3.4 compatibility, which JRuby 9.4 does not support - - jruby_version: '10.0.0.1' - java_version: '11' # JRuby 10 requires Java 21 - jruby_version: '10.0.0.1' java_version: '17' # JRuby 10 requires Java 21 fail-fast: false diff --git a/README.md b/README.md index 07ab6efa..dfe5b7d1 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,10 @@ current stable 1.1.x releases.** ## Compatibility +JRuby-Rack 1.4.x +- aims to be compatible with JRuby 9.4 -> 10.0 and Java 17+ +- supports any container compatible with Jakarta Servlet 5.0 API (JEE 9) + JRuby-Rack 1.3.x - aims to be compatible with JRuby 9.4 -> 10.0 and Java 11+ - supports any container compatible with Java Servlet 4.0 API @@ -292,7 +296,7 @@ Or the equivalent of doing `bundle exec rackup ...` if you're using Bundler : ## Logging JRuby-Rack sets up a delegate logger for Rails that sends logging output to -`javax.servlet.ServletContext#log` by default. If you wish to use a different +`jakarta.servlet.ServletContext#log` by default. If you wish to use a different logging system, configure `jruby.rack.logging` as follows: - `servlet_context` (default): Sends log messages to the servlet context. diff --git a/pom.xml b/pom.xml index dcba07d3..2c91a128 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ 3.0.6 ${project.build.directory}/rubygems 2.0.17 - 5.3.39 + 6.2.9 @@ -101,13 +101,13 @@ jakarta.servlet jakarta.servlet-api - 4.0.4 + 6.1.0 provided jakarta.servlet.jsp jakarta.servlet.jsp-api - 2.3.6 + 4.0.0 provided @@ -143,7 +143,7 @@ jakarta.el jakarta.el-api - 3.0.3 + 6.0.1 test diff --git a/src/main/java/org/jruby/rack/AbstractFilter.java b/src/main/java/org/jruby/rack/AbstractFilter.java index 47c95de1..e1623fcd 100644 --- a/src/main/java/org/jruby/rack/AbstractFilter.java +++ b/src/main/java/org/jruby/rack/AbstractFilter.java @@ -9,13 +9,13 @@ import java.io.IOException; -import javax.servlet.Filter; -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.Filter; +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 org.jruby.rack.servlet.RequestCapture; import org.jruby.rack.servlet.ResponseCapture; diff --git a/src/main/java/org/jruby/rack/AbstractServlet.java b/src/main/java/org/jruby/rack/AbstractServlet.java index 79b575e7..838e0883 100644 --- a/src/main/java/org/jruby/rack/AbstractServlet.java +++ b/src/main/java/org/jruby/rack/AbstractServlet.java @@ -9,12 +9,12 @@ import java.io.IOException; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.servlet.http.HttpServlet; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import org.jruby.rack.servlet.ServletRackEnvironment; import org.jruby.rack.servlet.ServletRackResponseEnvironment; diff --git a/src/main/java/org/jruby/rack/RackDispatcher.java b/src/main/java/org/jruby/rack/RackDispatcher.java index 664855ed..9b793492 100644 --- a/src/main/java/org/jruby/rack/RackDispatcher.java +++ b/src/main/java/org/jruby/rack/RackDispatcher.java @@ -7,7 +7,7 @@ package org.jruby.rack; -import javax.servlet.ServletException; +import jakarta.servlet.ServletException; import java.io.IOException; /** diff --git a/src/main/java/org/jruby/rack/RackEnvironment.java b/src/main/java/org/jruby/rack/RackEnvironment.java index 9f910abc..3546bb71 100644 --- a/src/main/java/org/jruby/rack/RackEnvironment.java +++ b/src/main/java/org/jruby/rack/RackEnvironment.java @@ -14,7 +14,7 @@ /** * Represent a Rack environment (that will most likely by wrapping a - * {@link javax.servlet.http.HttpServletRequest}). + * {@link jakarta.servlet.http.HttpServletRequest}). * Allows Rack applications to be loaded outside of JEE servlet environments. * * @see org.jruby.rack.servlet.ServletRackEnvironment @@ -38,7 +38,7 @@ public interface RackEnvironment { // The following methods are specific to the rack environment /** - * @see javax.servlet.ServletRequest#getInputStream() + * @see jakarta.servlet.ServletRequest#getInputStream() * @return the input as a stream * @throws IOException if there's an IO exception */ @@ -54,107 +54,107 @@ public interface RackEnvironment { // The following methods are usually inherited from the servlet request /** - * @see javax.servlet.http.HttpServletRequest#getPathInfo() + * @see jakarta.servlet.http.HttpServletRequest#getPathInfo() * @return the request path info */ public String getPathInfo(); /** * Request URI should include the query string if available. - * @see javax.servlet.http.HttpServletRequest#getRequestURI() + * @see jakarta.servlet.http.HttpServletRequest#getRequestURI() * @return the request URI */ public String getRequestURI(); /** - * @see javax.servlet.http.HttpServletRequest#getAttributeNames() + * @see jakarta.servlet.http.HttpServletRequest#getAttributeNames() * @return an enumeration of all attribute names */ public Enumeration getAttributeNames(); /** - * @see javax.servlet.http.HttpServletRequest#getAttribute(String) + * @see jakarta.servlet.http.HttpServletRequest#getAttribute(String) * @param key the attribute key * @return the attribute value */ public Object getAttribute(String key); /** - * @see javax.servlet.http.HttpServletRequest#setAttribute(String, Object) + * @see jakarta.servlet.http.HttpServletRequest#setAttribute(String, Object) * @param key the key * @param value the value */ public void setAttribute(String key, Object value); /** - * @see javax.servlet.http.HttpServletRequest#getHeaderNames() + * @see jakarta.servlet.http.HttpServletRequest#getHeaderNames() * @return an enumeration of all header names */ public Enumeration getHeaderNames(); /** - * @see javax.servlet.http.HttpServletRequest#getHeader(String) + * @see jakarta.servlet.http.HttpServletRequest#getHeader(String) * @param name the header name * @return the header value */ public String getHeader(String name); /** - * @see javax.servlet.http.HttpServletRequest#getScheme() + * @see jakarta.servlet.http.HttpServletRequest#getScheme() * @return the request scheme */ public String getScheme(); /** - * @see javax.servlet.http.HttpServletRequest#getContentType() + * @see jakarta.servlet.http.HttpServletRequest#getContentType() * @return the content type */ public String getContentType(); /** - * @see javax.servlet.http.HttpServletRequest#getContentLength() + * @see jakarta.servlet.http.HttpServletRequest#getContentLength() * @return the content length */ public int getContentLength(); /** - * @see javax.servlet.http.HttpServletRequest#getMethod() + * @see jakarta.servlet.http.HttpServletRequest#getMethod() * @return the request method */ public String getMethod(); /** - * @see javax.servlet.http.HttpServletRequest#getQueryString() + * @see jakarta.servlet.http.HttpServletRequest#getQueryString() * @return the query string */ public String getQueryString(); /** - * @see javax.servlet.http.HttpServletRequest#getServerName() + * @see jakarta.servlet.http.HttpServletRequest#getServerName() * @return the server name */ public String getServerName(); /** - * @see javax.servlet.http.HttpServletRequest#getServerPort() + * @see jakarta.servlet.http.HttpServletRequest#getServerPort() * @return the server port */ public int getServerPort(); /** - * @see javax.servlet.ServletRequest#getRemoteHost() + * @see jakarta.servlet.ServletRequest#getRemoteHost() * @return the remote host */ public String getRemoteHost(); /** - * @see javax.servlet.ServletRequest#getRemoteAddr() + * @see jakarta.servlet.ServletRequest#getRemoteAddr() * @return the remote address */ public String getRemoteAddr(); /** - * @see javax.servlet.http.HttpServletRequest#getRemoteUser() + * @see jakarta.servlet.http.HttpServletRequest#getRemoteUser() * @return the remote user */ public String getRemoteUser(); diff --git a/src/main/java/org/jruby/rack/RackFilter.java b/src/main/java/org/jruby/rack/RackFilter.java index b4494cac..87981fd1 100644 --- a/src/main/java/org/jruby/rack/RackFilter.java +++ b/src/main/java/org/jruby/rack/RackFilter.java @@ -9,12 +9,12 @@ import java.io.IOException; import java.net.MalformedURLException; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; import org.jruby.rack.servlet.RequestCapture; import org.jruby.rack.servlet.ResponseCapture; diff --git a/src/main/java/org/jruby/rack/RackResponseEnvironment.java b/src/main/java/org/jruby/rack/RackResponseEnvironment.java index 48da1b58..57eb093a 100644 --- a/src/main/java/org/jruby/rack/RackResponseEnvironment.java +++ b/src/main/java/org/jruby/rack/RackResponseEnvironment.java @@ -16,8 +16,8 @@ * handle and return the Rack response) interface. * It is likely to be (only) implemented as a HTTP servlet response. * - * @see javax.servlet.ServletResponse - * @see javax.servlet.http.HttpServletResponse + * @see jakarta.servlet.ServletResponse + * @see jakarta.servlet.http.HttpServletResponse * @see RackResponse * * @author nicksieger @@ -26,30 +26,30 @@ public interface RackResponseEnvironment { /** * @return whether the underlying response has been committed. - * @see javax.servlet.ServletResponse#isCommitted() + * @see jakarta.servlet.ServletResponse#isCommitted() */ boolean isCommitted(); /** * Reset the response (buffer) so we can begin a new response. - * @see javax.servlet.ServletResponse#reset() + * @see jakarta.servlet.ServletResponse#reset() */ void reset(); /** - * @see javax.servlet.ServletResponse#setContentType(String) + * @see jakarta.servlet.ServletResponse#setContentType(String) * @param type the content type */ void setContentType(String type) ; /** - * @see javax.servlet.ServletResponse#setContentLength(int) + * @see jakarta.servlet.ServletResponse#setContentLength(int) * @param length the content length */ void setContentLength(int length) ; /** - * @see javax.servlet.ServletResponse#setCharacterEncoding(String) + * @see jakarta.servlet.ServletResponse#setCharacterEncoding(String) * @param charset the charset */ void setCharacterEncoding(String charset) ; @@ -107,14 +107,14 @@ public interface RackResponseEnvironment { void sendError(int code) throws IOException ; /** - * @see javax.servlet.ServletResponse#getOutputStream() + * @see jakarta.servlet.ServletResponse#getOutputStream() * @return the output stream * @throws IOException if there's an IO exception */ OutputStream getOutputStream() throws IOException ; /** - * @see javax.servlet.ServletResponse#getWriter() + * @see jakarta.servlet.ServletResponse#getWriter() * @return the writer * @throws IOException if there's an IO exception */ diff --git a/src/main/java/org/jruby/rack/RackServlet.java b/src/main/java/org/jruby/rack/RackServlet.java index e5bf4944..a67c78ff 100644 --- a/src/main/java/org/jruby/rack/RackServlet.java +++ b/src/main/java/org/jruby/rack/RackServlet.java @@ -7,7 +7,7 @@ package org.jruby.rack; -import javax.servlet.ServletConfig; +import jakarta.servlet.ServletConfig; @SuppressWarnings("serial") public class RackServlet extends AbstractServlet { diff --git a/src/main/java/org/jruby/rack/RackServletContextListener.java b/src/main/java/org/jruby/rack/RackServletContextListener.java index cf16d34d..789c67a9 100644 --- a/src/main/java/org/jruby/rack/RackServletContextListener.java +++ b/src/main/java/org/jruby/rack/RackServletContextListener.java @@ -7,9 +7,9 @@ package org.jruby.rack; -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 org.jruby.rack.servlet.DefaultServletRackContext; import org.jruby.rack.servlet.ServletRackConfig; diff --git a/src/main/java/org/jruby/rack/RackTag.java b/src/main/java/org/jruby/rack/RackTag.java index 7ce32754..8b269b70 100644 --- a/src/main/java/org/jruby/rack/RackTag.java +++ b/src/main/java/org/jruby/rack/RackTag.java @@ -9,11 +9,11 @@ import org.jruby.rack.servlet.ServletRackEnvironment; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.jsp.JspException; -import javax.servlet.jsp.tagext.TagSupport; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.jsp.JspException; +import jakarta.servlet.jsp.tagext.TagSupport; @SuppressWarnings("serial") public class RackTag extends TagSupport { diff --git a/src/main/java/org/jruby/rack/UnmappedRackFilter.java b/src/main/java/org/jruby/rack/UnmappedRackFilter.java index 96044f18..6be026f6 100644 --- a/src/main/java/org/jruby/rack/UnmappedRackFilter.java +++ b/src/main/java/org/jruby/rack/UnmappedRackFilter.java @@ -12,10 +12,10 @@ import java.util.Collections; import java.util.HashSet; import java.util.Set; -import javax.servlet.FilterChain; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; -import javax.servlet.ServletResponse; +import jakarta.servlet.FilterChain; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; +import jakarta.servlet.ServletResponse; import org.jruby.rack.servlet.RequestCapture; import org.jruby.rack.servlet.ResponseCapture; diff --git a/src/main/java/org/jruby/rack/embed/Filter.java b/src/main/java/org/jruby/rack/embed/Filter.java index 682e91d1..64ad9997 100644 --- a/src/main/java/org/jruby/rack/embed/Filter.java +++ b/src/main/java/org/jruby/rack/embed/Filter.java @@ -7,8 +7,8 @@ */ package org.jruby.rack.embed; -import javax.servlet.FilterConfig; -import javax.servlet.ServletException; +import jakarta.servlet.FilterConfig; +import jakarta.servlet.ServletException; import org.jruby.rack.AbstractFilter; import org.jruby.rack.RackContext; diff --git a/src/main/java/org/jruby/rack/embed/Servlet.java b/src/main/java/org/jruby/rack/embed/Servlet.java index 69974537..b8bddced 100644 --- a/src/main/java/org/jruby/rack/embed/Servlet.java +++ b/src/main/java/org/jruby/rack/embed/Servlet.java @@ -7,7 +7,7 @@ */ package org.jruby.rack.embed; -import javax.servlet.ServletConfig; +import jakarta.servlet.ServletConfig; import org.jruby.rack.AbstractServlet; import org.jruby.rack.RackContext; diff --git a/src/main/java/org/jruby/rack/ext/Logger.java b/src/main/java/org/jruby/rack/ext/Logger.java index d8c5b728..0d5f6d0a 100644 --- a/src/main/java/org/jruby/rack/ext/Logger.java +++ b/src/main/java/org/jruby/rack/ext/Logger.java @@ -23,7 +23,7 @@ */ package org.jruby.rack.ext; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import org.jruby.Ruby; import org.jruby.RubyClass; diff --git a/src/main/java/org/jruby/rack/logging/ServletContextLogger.java b/src/main/java/org/jruby/rack/logging/ServletContextLogger.java index 8054fb45..58eff1ea 100644 --- a/src/main/java/org/jruby/rack/logging/ServletContextLogger.java +++ b/src/main/java/org/jruby/rack/logging/ServletContextLogger.java @@ -9,7 +9,7 @@ import org.jruby.rack.RackLogger; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; public class ServletContextLogger extends RackLogger.Base { diff --git a/src/main/java/org/jruby/rack/servlet/DefaultServletRackContext.java b/src/main/java/org/jruby/rack/servlet/DefaultServletRackContext.java index ccf08fca..ecdf6df8 100644 --- a/src/main/java/org/jruby/rack/servlet/DefaultServletRackContext.java +++ b/src/main/java/org/jruby/rack/servlet/DefaultServletRackContext.java @@ -11,17 +11,17 @@ import org.jruby.rack.RackConfig; import org.jruby.rack.RackLogger; -import javax.servlet.Filter; -import javax.servlet.RequestDispatcher; -import javax.servlet.Servlet; -import javax.servlet.ServletContext; -import javax.servlet.ServletException; +import jakarta.servlet.Filter; +import jakarta.servlet.RequestDispatcher; +import jakarta.servlet.Servlet; +import jakarta.servlet.ServletContext; +import jakarta.servlet.ServletException; // 3.0 -import javax.servlet.FilterRegistration; -import javax.servlet.ServletRegistration; -import javax.servlet.SessionCookieConfig; -import javax.servlet.SessionTrackingMode; -import javax.servlet.descriptor.JspConfigDescriptor; +import jakarta.servlet.FilterRegistration; +import jakarta.servlet.ServletRegistration; +import jakarta.servlet.SessionCookieConfig; +import jakarta.servlet.SessionTrackingMode; +import jakarta.servlet.descriptor.JspConfigDescriptor; import java.io.InputStream; import java.net.MalformedURLException; @@ -150,21 +150,6 @@ public RequestDispatcher getNamedDispatcher(String name) { return context.getNamedDispatcher(name); } - @Override @Deprecated - public Servlet getServlet(String name) throws ServletException { - return context.getServlet(name); - } - - @Override @Deprecated - public Enumeration getServlets() { - return context.getServlets(); - } - - @Override @Deprecated - public Enumeration getServletNames() { - return context.getServletNames(); - } - @Override public String getServerInfo() { return context.getServerInfo(); @@ -200,11 +185,6 @@ public String getServletContextName() { return context.getServletContextName(); } - @Override @Deprecated - public void log(Exception e, String msg) { - logger.log(msg, e); - } - // RackLogger @Override diff --git a/src/main/java/org/jruby/rack/servlet/RequestCapture.java b/src/main/java/org/jruby/rack/servlet/RequestCapture.java index d776a3dd..f6198739 100644 --- a/src/main/java/org/jruby/rack/servlet/RequestCapture.java +++ b/src/main/java/org/jruby/rack/servlet/RequestCapture.java @@ -17,9 +17,9 @@ import java.util.Iterator; import java.util.Map; -import javax.servlet.ServletInputStream; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.ServletInputStream; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; import org.jruby.rack.RackConfig; diff --git a/src/main/java/org/jruby/rack/servlet/ResponseCapture.java b/src/main/java/org/jruby/rack/servlet/ResponseCapture.java index 6fba037b..cd82342f 100644 --- a/src/main/java/org/jruby/rack/servlet/ResponseCapture.java +++ b/src/main/java/org/jruby/rack/servlet/ResponseCapture.java @@ -18,11 +18,11 @@ import java.util.HashSet; import java.util.Set; -import javax.servlet.ServletOutputStream; -import javax.servlet.WriteListener; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpServletResponseWrapper; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.WriteListener; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; /** * Response wrapper passed to filter chain. @@ -86,13 +86,6 @@ public void setStatus(int status) { } } - @Override - public void setStatus(int status, String message) { - if ( handleStatus(status, false) ) { - super.setStatus(status, message); - } - } - @Override public void sendError(int status) throws IOException { if ( handleStatus(status, true) ) { diff --git a/src/main/java/org/jruby/rack/servlet/RewindableInputStream.java b/src/main/java/org/jruby/rack/servlet/RewindableInputStream.java index ac5dfbc7..6b962c9d 100644 --- a/src/main/java/org/jruby/rack/servlet/RewindableInputStream.java +++ b/src/main/java/org/jruby/rack/servlet/RewindableInputStream.java @@ -13,8 +13,8 @@ import java.io.RandomAccessFile; import java.nio.ByteBuffer; -import javax.servlet.ReadListener; -import javax.servlet.ServletInputStream; +import jakarta.servlet.ReadListener; +import jakarta.servlet.ServletInputStream; /** * Originally inspired by Kirk's RewindableInputStream ... diff --git a/src/main/java/org/jruby/rack/servlet/ServletRackConfig.java b/src/main/java/org/jruby/rack/servlet/ServletRackConfig.java index 06bf64dc..b5b9710f 100644 --- a/src/main/java/org/jruby/rack/servlet/ServletRackConfig.java +++ b/src/main/java/org/jruby/rack/servlet/ServletRackConfig.java @@ -11,7 +11,7 @@ import org.jruby.rack.RackLogger; import org.jruby.rack.logging.ServletContextLogger; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; /** * Servlet environment version of RackConfig. diff --git a/src/main/java/org/jruby/rack/servlet/ServletRackContext.java b/src/main/java/org/jruby/rack/servlet/ServletRackContext.java index bb67a335..72027e6f 100644 --- a/src/main/java/org/jruby/rack/servlet/ServletRackContext.java +++ b/src/main/java/org/jruby/rack/servlet/ServletRackContext.java @@ -7,7 +7,7 @@ package org.jruby.rack.servlet; -import javax.servlet.ServletContext; +import jakarta.servlet.ServletContext; import org.jruby.rack.RackApplicationFactory; import org.jruby.rack.RackContext; diff --git a/src/main/java/org/jruby/rack/servlet/ServletRackEnvironment.java b/src/main/java/org/jruby/rack/servlet/ServletRackEnvironment.java index 4cb7c313..c44eb62a 100644 --- a/src/main/java/org/jruby/rack/servlet/ServletRackEnvironment.java +++ b/src/main/java/org/jruby/rack/servlet/ServletRackEnvironment.java @@ -9,10 +9,10 @@ import java.io.IOException; -import javax.servlet.ServletInputStream; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletRequestWrapper; -import javax.servlet.http.HttpServletResponse; +import jakarta.servlet.ServletInputStream; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletRequestWrapper; +import jakarta.servlet.http.HttpServletResponse; import org.jruby.rack.RackContext; import org.jruby.rack.RackEnvironment; diff --git a/src/main/java/org/jruby/rack/servlet/ServletRackIncludedResponse.java b/src/main/java/org/jruby/rack/servlet/ServletRackIncludedResponse.java index c66bafeb..b53cc67c 100644 --- a/src/main/java/org/jruby/rack/servlet/ServletRackIncludedResponse.java +++ b/src/main/java/org/jruby/rack/servlet/ServletRackIncludedResponse.java @@ -14,11 +14,11 @@ import java.io.PrintWriter; import java.io.UnsupportedEncodingException; -import javax.servlet.ServletOutputStream; -import javax.servlet.ServletResponse; -import javax.servlet.WriteListener; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpServletResponseWrapper; +import jakarta.servlet.ServletOutputStream; +import jakarta.servlet.ServletResponse; +import jakarta.servlet.WriteListener; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; /** * Response wrapper used to buffer the output of a server-side include. diff --git a/src/main/java/org/jruby/rack/servlet/ServletRackResponseEnvironment.java b/src/main/java/org/jruby/rack/servlet/ServletRackResponseEnvironment.java index b3dbb215..ad9178a4 100644 --- a/src/main/java/org/jruby/rack/servlet/ServletRackResponseEnvironment.java +++ b/src/main/java/org/jruby/rack/servlet/ServletRackResponseEnvironment.java @@ -13,8 +13,8 @@ import java.io.IOException; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpServletResponseWrapper; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.servlet.http.HttpServletResponseWrapper; /** * The default (servlet) {@link RackResponseEnvironment} implementation. diff --git a/src/main/ruby/jruby/rack/servlet_ext.rb b/src/main/ruby/jruby/rack/servlet_ext.rb index 4df3b62e..bb1e2e41 100644 --- a/src/main/ruby/jruby/rack/servlet_ext.rb +++ b/src/main/ruby/jruby/rack/servlet_ext.rb @@ -9,7 +9,7 @@ # Ruby-friendly extensions to the Servlet API. -module Java::JavaxServlet::ServletContext +module Java::JakartaServlet::ServletContext # Fetch an attribute from the servlet context. def [](key) getAttribute(key.to_s) @@ -38,7 +38,7 @@ def each end end -module Java::JavaxServlet::ServletRequest +module Java::JakartaServlet::ServletRequest # Fetch an attribute from the servlet request. def [](key) getAttribute(key.to_s) @@ -67,7 +67,7 @@ def each end end -module Java::JavaxServletHttp::HttpSession +module Java::JakartaServletHttp::HttpSession # Fetch an attribute from the session. def [](key) getAttribute(key.to_s) diff --git a/src/main/ruby/rack/handler/servlet/default_env.rb b/src/main/ruby/rack/handler/servlet/default_env.rb index bf6786be..7141f544 100644 --- a/src/main/ruby/rack/handler/servlet/default_env.rb +++ b/src/main/ruby/rack/handler/servlet/default_env.rb @@ -279,7 +279,7 @@ def servlet_context @servlet_env.servlet_context # ServletRequest#getServletContext() else if @servlet_env.respond_to?(:context) && - @servlet_env.context.is_a?(javax.servlet.ServletContext) + @servlet_env.context.is_a?(jakarta.servlet.ServletContext) @servlet_env.context else JRuby::Rack.context || diff --git a/src/main/ruby/rack/handler/servlet/servlet_env.rb b/src/main/ruby/rack/handler/servlet/servlet_env.rb index efc469d4..06bf3a24 100644 --- a/src/main/ruby/rack/handler/servlet/servlet_env.rb +++ b/src/main/ruby/rack/handler/servlet/servlet_env.rb @@ -58,7 +58,7 @@ def load_env_key(env, key) end # Load parameters into the (Rack) env from the Servlet API. - # using javax.servlet.http.HttpServletRequest#getParameterMap + # using Java::JakartaServletHttp::HttpServletRequest#getParameterMap def load_parameters get_only = ! POST_PARAM_METHODS.include?( @servlet_env.getMethod ) # we only need to really do this for POSTs but we'll handle all @@ -153,7 +153,7 @@ def store_parameter(key, val, hash) COOKIE_HASH = "rack.request.cookie_hash".freeze # Load cookies into the (Rack) env from the Servlet API. - # using javax.servlet.http.HttpServletRequest#getCookies + # using Java::JakartaServletHttp::HttpServletRequest#getCookies def load_cookies cookie_hash = {} (@servlet_env.getCookies || []).each do |cookie| @@ -184,7 +184,7 @@ def query_values(key) end def parse_query_string - Java::JavaxServletHttp::HttpUtils.parseQueryString(query_string) + Java::JakartaServletHttp::HttpUtils.parseQueryString(query_string) end def mark_parameter_error(msg) diff --git a/src/spec/java/org/jruby/rack/fake/FakeJspWriter.java b/src/spec/java/org/jruby/rack/fake/FakeJspWriter.java index d35f9518..d0d41cdd 100644 --- a/src/spec/java/org/jruby/rack/fake/FakeJspWriter.java +++ b/src/spec/java/org/jruby/rack/fake/FakeJspWriter.java @@ -8,7 +8,7 @@ package org.jruby.rack.fake; import java.io.IOException; -import javax.servlet.jsp.JspWriter; +import jakarta.servlet.jsp.JspWriter; /** * Currently only used as a mock for testing. diff --git a/src/spec/java/org/jruby/rack/fake/FakePageContext.java b/src/spec/java/org/jruby/rack/fake/FakePageContext.java index 7ce7f02a..3fd106c4 100644 --- a/src/spec/java/org/jruby/rack/fake/FakePageContext.java +++ b/src/spec/java/org/jruby/rack/fake/FakePageContext.java @@ -10,20 +10,20 @@ import java.io.IOException; import java.util.Enumeration; -import javax.el.ELContext; -import javax.servlet.Servlet; -import javax.servlet.ServletConfig; -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 javax.servlet.http.HttpSession; -import javax.servlet.jsp.JspWriter; -import javax.servlet.jsp.PageContext; -import javax.servlet.jsp.el.ExpressionEvaluator; -import javax.servlet.jsp.el.VariableResolver; +import jakarta.el.ELContext; +import jakarta.servlet.Servlet; +import jakarta.servlet.ServletConfig; +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 jakarta.servlet.http.HttpSession; +import jakarta.servlet.jsp.JspWriter; +import jakarta.servlet.jsp.PageContext; +import jakarta.el.ExpressionFactory; +import jakarta.el.ELResolver; /** * Currently only used as a mock for testing. @@ -161,16 +161,6 @@ public void include(String arg0, boolean arg1) throws ServletException, IOExcept throw new UnsupportedOperationException("Not supported yet."); } - @Override - public ExpressionEvaluator getExpressionEvaluator() { - throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public VariableResolver getVariableResolver() { - throw new UnsupportedOperationException("Not supported yet."); - } - @Override public ELContext getELContext() { throw new UnsupportedOperationException("Not supported yet."); diff --git a/src/spec/java/org/jruby/rack/mock/RackLoggingMockServletContext.java b/src/spec/java/org/jruby/rack/mock/RackLoggingMockServletContext.java index 4e4d2438..e027d070 100644 --- a/src/spec/java/org/jruby/rack/mock/RackLoggingMockServletContext.java +++ b/src/spec/java/org/jruby/rack/mock/RackLoggingMockServletContext.java @@ -59,12 +59,6 @@ public void log(String message) { logger.log(message); } - @Override - @SuppressWarnings("deprecation") - public void log(Exception ex, String message) { - logger.log(message, ex); - } - @Override public void log(String message, Throwable ex) { logger.log(message, ex); diff --git a/src/spec/java/org/jruby/rack/mock/fail/FailingHttpServletResponse.java b/src/spec/java/org/jruby/rack/mock/fail/FailingHttpServletResponse.java index 1ac5b581..12a039fc 100644 --- a/src/spec/java/org/jruby/rack/mock/fail/FailingHttpServletResponse.java +++ b/src/spec/java/org/jruby/rack/mock/fail/FailingHttpServletResponse.java @@ -25,7 +25,7 @@ import org.springframework.mock.web.MockHttpServletResponse; -import javax.servlet.ServletOutputStream; +import jakarta.servlet.ServletOutputStream; import java.io.IOException; /** diff --git a/src/spec/ruby/jruby/rack/booter_spec.rb b/src/spec/ruby/jruby/rack/booter_spec.rb index 516210bd..ef030f07 100644 --- a/src/spec/ruby/jruby/rack/booter_spec.rb +++ b/src/spec/ruby/jruby/rack/booter_spec.rb @@ -230,7 +230,7 @@ before :each do # NOTE: this is obviously poor testing but it's easier to let the factory # setup the runtime for us than to hand copy/stub/mock all code involved - servlet_context = javax.servlet.ServletContext.impl do |name, *args| + servlet_context = Java::JakartaServlet::ServletContext.impl do |name, *args| case name.to_sym when :getRealPath then case args.first @@ -277,7 +277,7 @@ before :each do # NOTE: this is obviously poor testing but it's easier to let the factory # setup the runtime for us than to hand copy/stub/mock all code involved - servlet_context = javax.servlet.ServletContext.impl do |name, *args| + servlet_context = Java::JakartaServlet::ServletContext.impl do |name, *args| case name.to_sym when :getRealPath then case args.first diff --git a/src/spec/ruby/jruby/rack/integration_spec.rb b/src/spec/ruby/jruby/rack/integration_spec.rb index 9a94037f..7f11ba9d 100644 --- a/src/spec/ruby/jruby/rack/integration_spec.rb +++ b/src/spec/ruby/jruby/rack/integration_spec.rb @@ -28,7 +28,7 @@ ) listener = org.jruby.rack.RackServletContextListener.new - listener.contextInitialized javax.servlet.ServletContextEvent.new(@servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(@servlet_context) rack_factory = @servlet_context.getAttribute("rack.factory") rack_factory.should be_a(RackApplicationFactory) @@ -46,7 +46,7 @@ "run lambda { |env| [ 200, {'Via' => 'JRuby-Rack', 'Content-Type' => 'text/plain'}, 'OK' ] }" ) listener = org.jruby.rack.RackServletContextListener.new - listener.contextInitialized javax.servlet.ServletContextEvent.new(@servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(@servlet_context) @rack_context = @servlet_context.getAttribute("rack.context") @rack_factory = @servlet_context.getAttribute("rack.factory") end @@ -92,7 +92,7 @@ servlet_context.addInitParameter('jruby.max.runtimes', '2') listener = org.jruby.rack.rails.RailsServletContextListener.new - listener.contextInitialized javax.servlet.ServletContextEvent.new(servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(servlet_context) rack_factory = servlet_context.getAttribute("rack.factory") rack_factory.should be_a(RackApplicationFactory) @@ -107,7 +107,7 @@ it "initializes shared (thread-safe) by default" do listener = org.jruby.rack.rails.RailsServletContextListener.new - listener.contextInitialized javax.servlet.ServletContextEvent.new(servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(servlet_context) rack_factory = servlet_context.getAttribute("rack.factory") rack_factory.should be_a(RackApplicationFactory) @@ -121,7 +121,7 @@ servlet_context.addInitParameter('jruby.max.runtimes', '1') listener = org.jruby.rack.rails.RailsServletContextListener.new - listener.contextInitialized javax.servlet.ServletContextEvent.new(servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(servlet_context) rack_factory = servlet_context.getAttribute("rack.factory") rack_factory.should be_a(RackApplicationFactory) @@ -160,7 +160,7 @@ def initialize_rails(env = nil, servlet_context = @servlet_context) servlet_context.addInitParameter("jruby.runtime.env", the_env) yield(servlet_context, listener) if block_given? - listener.contextInitialized javax.servlet.ServletContextEvent.new(servlet_context) + listener.contextInitialized Java::JakartaServlet::ServletContextEvent.new(servlet_context) @rack_context = servlet_context.getAttribute("rack.context") @rack_factory = servlet_context.getAttribute("rack.factory") @servlet_context ||= servlet_context diff --git a/src/spec/ruby/jruby/rack/response_spec.rb b/src/spec/ruby/jruby/rack/response_spec.rb index 7de11aa0..13a83d02 100644 --- a/src/spec/ruby/jruby/rack/response_spec.rb +++ b/src/spec/ruby/jruby/rack/response_spec.rb @@ -16,7 +16,7 @@ JRuby::Rack::Response.new [ status, headers, body ] end - let(:servlet_response) { javax.servlet.http.HttpServletResponse.impl {} } + let(:servlet_response) { Java::JakartaServletHttp::HttpServletResponse.impl {} } let(:response_environment) { new_response_environment(servlet_response) } diff --git a/src/spec/ruby/jruby/rack/servlet_ext_spec.rb b/src/spec/ruby/jruby/rack/servlet_ext_spec.rb index 17dcae19..4fd213f8 100644 --- a/src/spec/ruby/jruby/rack/servlet_ext_spec.rb +++ b/src/spec/ruby/jruby/rack/servlet_ext_spec.rb @@ -80,11 +80,11 @@ end - describe Java::JavaxServlet::ServletContext do + describe Java::JakartaServlet::ServletContext do let(:subject) do context = org.springframework.mock.web.MockServletContext.new - context.removeAttribute("javax.servlet.context.tempdir") + context.removeAttribute("jakarta.servlet.context.tempdir") context end @@ -92,10 +92,10 @@ end - describe Java::JavaxServlet::ServletRequest do + describe Java::JakartaServlet::ServletRequest do before :each do - @request = Java::JavaxServlet::ServletRequest.impl {} + @request = Java::JakartaServlet::ServletRequest.impl {} end it "should allow #[] to access request attributes" do @@ -125,10 +125,10 @@ end - describe Java::JavaxServletHttp::HttpSession do + describe Java::JakartaServletHttp::HttpSession do before :each do - @session = Java::JavaxServletHttp::HttpSession.impl {} + @session = Java::JakartaServletHttp::HttpSession.impl {} end it "should allow #[] to access session attributes" do diff --git a/src/spec/ruby/rack/embed/filter_spec.rb b/src/spec/ruby/rack/embed/filter_spec.rb index e2f8b95d..97604430 100644 --- a/src/spec/ruby/rack/embed/filter_spec.rb +++ b/src/spec/ruby/rack/embed/filter_spec.rb @@ -10,11 +10,11 @@ let(:chain) { double "filter chain" } let(:request) do - javax.servlet.http.HttpServletRequest.impl {}.tap do |request| + Java::JakartaServletHttp::HttpServletRequest.impl {}.tap do |request| request.stub(:getInputStream).and_return(StubServletInputStream.new) end end - let(:response) { javax.servlet.http.HttpServletResponse.impl {} } + let(:response) { Java::JakartaServletHttp::HttpServletResponse.impl {} } it "serves all requests using the given rack application" do rack_response = double "rack response" diff --git a/src/spec/ruby/rack/filter_spec.rb b/src/spec/ruby/rack/filter_spec.rb index e5a99109..d2052b0e 100644 --- a/src/spec/ruby/rack/filter_spec.rb +++ b/src/spec/ruby/rack/filter_spec.rb @@ -14,7 +14,7 @@ let(:chain) { double "filter chain" } def stub_request(path_info) - @request = javax.servlet.http.HttpServletRequest.impl {} + @request = Java::JakartaServletHttp::HttpServletRequest.impl {} @request.stub(:setAttribute) if block_given? yield @request, path_info @@ -27,7 +27,7 @@ def stub_request(path_info) before :each do stub_request("/index") - @response = javax.servlet.http.HttpServletResponse.impl {} + @response = Java::JakartaServletHttp::HttpServletResponse.impl {} @rack_context.stub(:getResource).and_return nil @rack_config.stub(:getProperty) do |key, default| ( key || raise("missing key") ) && default @@ -337,7 +337,7 @@ def isHandled(arg); getStatus < 400; end end it "configures not handled statuses on init" do - servlet_context = javax.servlet.ServletContext.impl do |name, *args| + servlet_context = Java::JakartaServlet::ServletContext.impl do |name, *args| case name.to_sym when :getAttribute if args[0] == "rack.context" @@ -347,7 +347,7 @@ def isHandled(arg); getStatus < 400; end nil end end - config = javax.servlet.FilterConfig.impl do |name, *args| + config = Java::JakartaServlet::FilterConfig.impl do |name, *args| case name.to_sym when :getServletContext then servlet_context when :getInitParameter diff --git a/src/spec/ruby/rack/handler/servlet_spec.rb b/src/spec/ruby/rack/handler/servlet_spec.rb index fa4bd04c..d1bc477a 100644 --- a/src/spec/ruby/rack/handler/servlet_spec.rb +++ b/src/spec/ruby/rack/handler/servlet_spec.rb @@ -324,7 +324,7 @@ def _env; @_env end it "exposes the servlet context xxxx" do env = servlet.create_env @servlet_env - expect( env['java.servlet_context'] ).to be_a javax.servlet.ServletContext + expect( env['java.servlet_context'] ).to be_a Java::JakartaServlet::ServletContext # Failure/Error: env['java.servlet_context'].should == @servlet_context # NoMethodError: # private method `pretty_print' called for # @@ -1105,9 +1105,9 @@ def servlet.create_env(servlet_env) it "sets cookies from servlet requests" do cookies = [] - cookies << javax.servlet.http.Cookie.new('foo', 'bar') - cookies << javax.servlet.http.Cookie.new('bar', '142') - servlet_request.setCookies cookies.to_java :'javax.servlet.http.Cookie' + cookies << Java::JakartaServletHttp::Cookie.new('foo', 'bar') + cookies << Java::JakartaServletHttp::Cookie.new('bar', '142') + servlet_request.setCookies cookies.to_java :'jakarta.servlet.http.Cookie' env = servlet.create_env(servlet_env) rack_request = Rack::Request.new(env) rack_request.cookies.should == { 'foo' => 'bar', 'bar' => '142' } @@ -1119,7 +1119,7 @@ def servlet.create_env(servlet_env) rack_request = Rack::Request.new(env) rack_request.cookies.should == {} - servlet_request.setCookies [].to_java :'javax.servlet.http.Cookie' + servlet_request.setCookies [].to_java :'jakarta.servlet.http.Cookie' env = servlet.create_env(servlet_env) rack_request = Rack::Request.new(env) rack_request.cookies.should == {} @@ -1127,9 +1127,9 @@ def servlet.create_env(servlet_env) it "sets a single cookie from servlet requests" do cookies = [] - cookies << javax.servlet.http.Cookie.new('foo', 'bar') - cookies << javax.servlet.http.Cookie.new('foo', '142') - servlet_request.setCookies cookies.to_java :'javax.servlet.http.Cookie' + cookies << Java::JakartaServletHttp::Cookie.new('foo', 'bar') + cookies << Java::JakartaServletHttp::Cookie.new('foo', '142') + servlet_request.setCookies cookies.to_java :'jakarta.servlet.http.Cookie' env = servlet.create_env(servlet_env) rack_request = Rack::Request.new(env) rack_request.cookies.should == { 'foo' => 'bar' } diff --git a/src/spec/ruby/rack/servlet_context_listener_spec.rb b/src/spec/ruby/rack/servlet_context_listener_spec.rb index b2df1708..9374e053 100644 --- a/src/spec/ruby/rack/servlet_context_listener_spec.rb +++ b/src/spec/ruby/rack/servlet_context_listener_spec.rb @@ -16,7 +16,7 @@ end let(:servlet_context_event) do - javax.servlet.ServletContextEvent.new @servlet_context + Java::JakartaServlet::ServletContextEvent.new @servlet_context end describe "contextInitialized" do diff --git a/src/spec/ruby/rack/servlet_spec.rb b/src/spec/ruby/rack/servlet_spec.rb index 8b0f7cd3..9e15a92d 100644 --- a/src/spec/ruby/rack/servlet_spec.rb +++ b/src/spec/ruby/rack/servlet_spec.rb @@ -10,8 +10,8 @@ describe org.jruby.rack.RackServlet, "service" do it "should delegate to process" do - request = javax.servlet.http.HttpServletRequest.impl {} - response = javax.servlet.http.HttpServletResponse.impl {} + request = Java::JakartaServletHttp::HttpServletRequest.impl {} + response = Java::JakartaServletHttp::HttpServletResponse.impl {} dispatcher = double "dispatcher" dispatcher.should_receive(:process) servlet = org.jruby.rack.RackServlet.new dispatcher, @rack_context diff --git a/src/spec/ruby/rack/tag_spec.rb b/src/spec/ruby/rack/tag_spec.rb index 704a6303..97813fe7 100644 --- a/src/spec/ruby/rack/tag_spec.rb +++ b/src/spec/ruby/rack/tag_spec.rb @@ -58,7 +58,7 @@ def call(request) begin @tag.doEndTag - rescue Java::JavaxServletJsp::JspException + rescue Java::JakartaServletJsp::JspException #noop end end diff --git a/src/spec/ruby/spec_helper.rb b/src/spec/ruby/spec_helper.rb index a09660de..0209013a 100644 --- a/src/spec/ruby/spec_helper.rb +++ b/src/spec/ruby/spec_helper.rb @@ -10,8 +10,8 @@ puts "using JRuby #{JRUBY_VERSION} (#{RUBY_VERSION})" -java_import 'javax.servlet.http.HttpServletRequest' -java_import 'javax.servlet.http.HttpServletResponse' +java_import 'jakarta.servlet.http.HttpServletRequest' +java_import 'jakarta.servlet.http.HttpServletResponse' java_import 'org.jruby.rack.RackApplicationFactory' java_import 'org.jruby.rack.DefaultRackApplicationFactory' @@ -29,8 +29,8 @@ module SharedHelpers java_import 'org.jruby.rack.RackContext' java_import 'org.jruby.rack.RackConfig' java_import 'org.jruby.rack.servlet.ServletRackContext' - java_import 'javax.servlet.ServletContext' - java_import 'javax.servlet.ServletConfig' + java_import 'jakarta.servlet.ServletContext' + java_import 'jakarta.servlet.ServletConfig' def mock_servlet_context @servlet_context = ServletContext.impl {} @@ -61,7 +61,7 @@ def silence_warnings(&block) def servlet_30? return @@servlet_30 unless @@servlet_30.nil? - @@servlet_30 = !! ( Java::javax.servlet.AsyncContext rescue nil ) + @@servlet_30 = !! ( Java::jakarta.servlet.AsyncContext rescue nil ) end private :servlet_30? @@ -204,10 +204,10 @@ def should_not_eval_as_nil(code, runtime = @runtime) # alias end -java_import org.springframework.mock.web.MockServletConfig -java_import org.springframework.mock.web.MockServletContext -java_import org.springframework.mock.web.MockHttpServletRequest -java_import org.springframework.mock.web.MockHttpServletResponse +java_import 'org.springframework.mock.web.MockServletConfig' +java_import 'org.springframework.mock.web.MockServletContext' +java_import 'org.springframework.mock.web.MockHttpServletRequest' +java_import 'org.springframework.mock.web.MockHttpServletResponse' class StubInputStream < java.io.InputStream @@ -245,7 +245,7 @@ def flush; end end -class StubServletInputStream < javax.servlet.ServletInputStream +class StubServletInputStream < Java::JakartaServlet::ServletInputStream def initialize(val = "") @delegate = StubInputStream.new(val)