This is an automated email from the ASF dual-hosted git repository.
markt-asf pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/11.0.x by this push:
new ec60030f13 Switch to using String.strip() rather than String.trim() as
appropriate
ec60030f13 is described below
commit ec60030f13ed6e136d550d3a1487805edb85dd7a
Author: Mark Thomas <[email protected]>
AuthorDate: Wed Oct 28 10:59:44 2026 +0000
Switch to using String.strip() rather than String.trim() as appropriate
---
java/jakarta/el/ELProcessor.java | 16 ++++++++--------
java/jakarta/el/ExpressionFactory.java | 8 ++++----
.../catalina/authenticator/AuthenticatorBase.java | 4 ++--
.../apache/catalina/authenticator/SingleSignOn.java | 2 +-
java/org/apache/catalina/core/StandardContext.java | 2 +-
java/org/apache/catalina/core/StandardHost.java | 4 ++--
java/org/apache/catalina/filters/CorsFilter.java | 4 ++--
.../apache/catalina/filters/CsrfPreventionFilter.java | 8 ++++----
java/org/apache/catalina/filters/ExpiresFilter.java | 4 ++--
java/org/apache/catalina/filters/RateLimitFilter.java | 2 +-
.../catalina/filters/RestCsrfPreventionFilter.java | 2 +-
java/org/apache/catalina/ha/backend/TcpSender.java | 2 +-
.../apache/catalina/manager/HTMLManagerServlet.java | 2 +-
java/org/apache/catalina/realm/DataSourceRealm.java | 4 ++--
java/org/apache/catalina/realm/JNDIRealm.java | 6 +++---
java/org/apache/catalina/realm/MemoryRealm.java | 2 +-
java/org/apache/catalina/realm/RealmBase.java | 4 ++--
.../org/apache/catalina/security/SecurityListener.java | 2 +-
java/org/apache/catalina/servlets/CGIServlet.java | 4 ++--
java/org/apache/catalina/servlets/DefaultServlet.java | 4 ++--
java/org/apache/catalina/session/DataSourceStore.java | 2 +-
java/org/apache/catalina/ssi/ExpressionTokenizer.java | 2 +-
java/org/apache/catalina/ssi/SSIProcessor.java | 2 +-
java/org/apache/catalina/startup/Bootstrap.java | 4 ++--
.../apache/catalina/startup/WebappServiceLoader.java | 2 +-
.../catalina/storeconfig/XMLFormatPreserver.java | 10 +++++-----
.../tribes/group/interceptors/EncryptInterceptor.java | 2 +-
.../apache/catalina/users/DataSourceUserDatabase.java | 2 +-
java/org/apache/catalina/users/MemoryUserDatabase.java | 12 ++++++------
.../apache/catalina/valves/ParameterLimitValve.java | 6 +++---
.../valves/rewrite/RandomizedTextRewriteMap.java | 4 ++--
.../apache/catalina/valves/rewrite/ResolverImpl.java | 4 ++--
java/org/apache/coyote/CompressionConfig.java | 6 +++---
java/org/apache/jasper/compiler/ELParser.java | 2 +-
java/org/apache/jasper/compiler/Generator.java | 4 ++--
java/org/apache/jasper/compiler/JavacErrorDetail.java | 2 +-
java/org/apache/jasper/compiler/Node.java | 18 +++++++++---------
java/org/apache/jasper/compiler/SmapUtil.java | 2 +-
java/org/apache/jasper/compiler/Validator.java | 6 +++---
java/org/apache/jasper/tagplugins/jstl/Util.java | 4 ++--
java/org/apache/juli/ClassLoaderLogManager.java | 6 +++---
java/org/apache/juli/FileHandler.java | 2 +-
java/org/apache/tomcat/buildutil/translate/Import.java | 2 +-
.../apache/tomcat/util/buf/EncodedSolidusHandling.java | 2 +-
java/org/apache/tomcat/util/buf/StringUtils.java | 2 +-
.../apache/tomcat/util/descriptor/tld/TldRuleSet.java | 2 +-
.../tomcat/util/descriptor/web/SecurityConstraint.java | 8 ++++----
.../apache/tomcat/util/descriptor/web/WebRuleSet.java | 4 ++--
.../apache/tomcat/util/digester/CallMethodRule.java | 2 +-
.../org/apache/tomcat/util/digester/CallParamRule.java | 2 +-
java/org/apache/tomcat/util/digester/Digester.java | 2 +-
.../apache/tomcat/util/http/CookiesWithoutEquals.java | 2 +-
java/org/apache/tomcat/util/net/SSLHostConfig.java | 16 ++++++++--------
.../apache/tomcat/util/scan/StandardJarScanFilter.java | 2 +-
.../apache/tomcat/util/scan/StandardJarScanner.java | 2 +-
.../webbeans/web/tomcat/TomcatSecurityService.java | 2 +-
.../catalina/core/TestApplicationDispatcher.java | 4 ++--
.../apache/catalina/tribes/demos/CoordinationDemo.java | 6 +++---
.../catalina/valves/TestExtendedAccessLogValve.java | 4 ++--
test/org/apache/el/TesterFunctions.java | 2 +-
.../apache/jasper/compiler/TestEncodingDetector.java | 2 +-
test/org/apache/jasper/compiler/TestJspUtil.java | 2 +-
test/org/apache/juli/TestPerWebappJuliIntegration.java | 4 ++--
test/org/apache/naming/TestEnvEntry.java | 4 ++--
.../tomcat/util/net/openssl/ciphers/TesterOpenSSL.java | 4 ++--
webapps/docs/changelog.xml | 8 ++++++++
66 files changed, 144 insertions(+), 136 deletions(-)
diff --git a/java/jakarta/el/ELProcessor.java b/java/jakarta/el/ELProcessor.java
index 0b3795116e..fd0ba80c84 100644
--- a/java/jakarta/el/ELProcessor.java
+++ b/java/jakarta/el/ELProcessor.java
@@ -283,10 +283,10 @@ public class ELProcessor {
int paramIndex = methodName.indexOf('(');
if (paramIndex == -1) {
- name = methodName.trim();
+ name = methodName.strip();
parameterTypeNames = null;
} else {
- String returnTypeAndName = methodName.substring(0,
paramIndex).trim();
+ String returnTypeAndName = methodName.substring(0,
paramIndex).strip();
// Assume that the return type and the name are separated by
// whitespace. Given the use of trim() above, there should only
// be one sequence of whitespace characters.
@@ -300,27 +300,27 @@ public class ELProcessor {
if (wsPos == -1) {
throw new NoSuchMethodException();
}
- name = returnTypeAndName.substring(wsPos).trim();
+ name = returnTypeAndName.substring(wsPos).strip();
- String paramString = methodName.substring(paramIndex).trim();
+ String paramString = methodName.substring(paramIndex).strip();
// We know the params start with '(', check they end with ')'
if (!paramString.endsWith(")")) {
throw new NoSuchMethodException(Util.message(context,
"elProcessor.defineFunctionInvalidParameterList",
paramString, methodName, className));
}
// Trim '(' and ')'
- paramString = paramString.substring(1, paramString.length() -
1).trim();
+ paramString = paramString.substring(1, paramString.length() -
1).strip();
if (paramString.isEmpty()) {
parameterTypeNames = EMPTY_STRING_ARRAY;
} else {
parameterTypeNames = paramString.split(",");
ImportHandler importHandler = context.getImportHandler();
for (int i = 0; i < parameterTypeNames.length; i++) {
- String parameterTypeName =
parameterTypeNames[i].trim();
+ String parameterTypeName =
parameterTypeNames[i].strip();
int dimension = 0;
int bracketPos = parameterTypeName.indexOf('[');
if (bracketPos > -1) {
- String parameterTypeNameOnly =
parameterTypeName.substring(0, bracketPos).trim();
+ String parameterTypeNameOnly =
parameterTypeName.substring(0, bracketPos).strip();
while (bracketPos > -1) {
dimension++;
bracketPos = parameterTypeName.indexOf('[',
bracketPos + 1);
@@ -331,7 +331,7 @@ public class ELProcessor {
if (parameterTypeName.endsWith("...")) {
varArgs = true;
dimension = 1;
- parameterTypeName = parameterTypeName.substring(0,
parameterTypeName.length() - 3).trim();
+ parameterTypeName = parameterTypeName.substring(0,
parameterTypeName.length() - 3).strip();
}
boolean isPrimitive =
PRIMITIVES.contains(parameterTypeName);
if (isPrimitive && dimension > 0) {
diff --git a/java/jakarta/el/ExpressionFactory.java
b/java/jakarta/el/ExpressionFactory.java
index 65fe056ad6..68f3a52ae7 100644
--- a/java/jakarta/el/ExpressionFactory.java
+++ b/java/jakarta/el/ExpressionFactory.java
@@ -360,8 +360,8 @@ public abstract class ExpressionFactory {
Properties props = new Properties();
props.load(is);
String value = props.getProperty(PROPERTY_NAME);
- if (value != null && !value.trim().isEmpty()) {
- return value.trim();
+ if (value != null && !value.strip().isEmpty()) {
+ return value.strip();
}
} catch (FileNotFoundException e) {
// Should not happen - ignore it if it does
@@ -374,8 +374,8 @@ public abstract class ExpressionFactory {
private static String getClassNameSysProp() {
String value = System.getProperty(PROPERTY_NAME);
- if (value != null && !value.trim().isEmpty()) {
- return value.trim();
+ if (value != null && !value.strip().isEmpty()) {
+ return value.strip();
}
return null;
}
diff --git a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
index 026a376d4b..2cb7d73e00 100644
--- a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
+++ b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
@@ -262,7 +262,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
*/
public void setSsoReauthenticationMode(String ssoReauthenticationMode) {
this.ssoReauthenticationMode =
-
SsoReauthenticationMode.valueOf(ssoReauthenticationMode.trim().toUpperCase(Locale.ENGLISH));
+
SsoReauthenticationMode.valueOf(ssoReauthenticationMode.strip().toUpperCase(Locale.ENGLISH));
}
/**
@@ -280,7 +280,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
* @param allowCorsPreflight the CORS preflight handling mode
*/
public void setAllowCorsPreflight(String allowCorsPreflight) {
- this.allowCorsPreflight =
AllowCorsPreflight.valueOf(allowCorsPreflight.trim().toUpperCase(Locale.ENGLISH));
+ this.allowCorsPreflight =
AllowCorsPreflight.valueOf(allowCorsPreflight.strip().toUpperCase(Locale.ENGLISH));
}
/**
diff --git a/java/org/apache/catalina/authenticator/SingleSignOn.java
b/java/org/apache/catalina/authenticator/SingleSignOn.java
index cb5c66acaa..b4c828c81d 100644
--- a/java/org/apache/catalina/authenticator/SingleSignOn.java
+++ b/java/org/apache/catalina/authenticator/SingleSignOn.java
@@ -141,7 +141,7 @@ public class SingleSignOn extends ValveBase {
* @param cookieDomain cookie domain name
*/
public void setCookieDomain(String cookieDomain) {
- if (cookieDomain != null && cookieDomain.trim().isEmpty()) {
+ if (cookieDomain != null && cookieDomain.strip().isEmpty()) {
this.cookieDomain = null;
} else {
this.cookieDomain = cookieDomain;
diff --git a/java/org/apache/catalina/core/StandardContext.java
b/java/org/apache/catalina/core/StandardContext.java
index 8051d58a96..8dae4f484a 100644
--- a/java/org/apache/catalina/core/StandardContext.java
+++ b/java/org/apache/catalina/core/StandardContext.java
@@ -1221,7 +1221,7 @@ public class StandardContext extends ContainerBase
implements Context, Notificat
return;
}
for (String servletName : resourceOnlyServlets.split(",")) {
- servletName = servletName.trim();
+ servletName = servletName.strip();
if (!servletName.isEmpty()) {
this.resourceOnlyServlets.add(servletName);
}
diff --git a/java/org/apache/catalina/core/StandardHost.java
b/java/org/apache/catalina/core/StandardHost.java
index 06f215c58e..20f26a22d1 100644
--- a/java/org/apache/catalina/core/StandardHost.java
+++ b/java/org/apache/catalina/core/StandardHost.java
@@ -248,7 +248,7 @@ public class StandardHost extends ContainerBase implements
Host {
@Override
public void setAppBase(String appBase) {
- if (appBase.trim().isEmpty()) {
+ if (appBase.strip().isEmpty()) {
log.warn(sm.getString("standardHost.problematicAppBase",
getName()));
}
String oldAppBase = this.appBase;
@@ -297,7 +297,7 @@ public class StandardHost extends ContainerBase implements
Host {
@Override
public void setLegacyAppBase(String legacyAppBase) {
- if (legacyAppBase.trim().isEmpty()) {
+ if (legacyAppBase.strip().isEmpty()) {
log.warn(sm.getString("standardHost.problematicLegacyAppBase",
getName()));
}
String oldLegacyAppBase = this.legacyAppBase;
diff --git a/java/org/apache/catalina/filters/CorsFilter.java
b/java/org/apache/catalina/filters/CorsFilter.java
index d42e07c252..dfbf9109c9 100644
--- a/java/org/apache/catalina/filters/CorsFilter.java
+++ b/java/org/apache/catalina/filters/CorsFilter.java
@@ -618,7 +618,7 @@ public class CorsFilter extends GenericFilter {
final String allowedHttpHeaders, final String exposedHeaders,
final String supportsCredentials,
final String preflightMaxAge, final String decorateRequest) throws
ServletException {
- if (allowedOrigins.trim().equals("*")) {
+ if (allowedOrigins.strip().equals("*")) {
this.anyOriginAllowed = true;
} else {
this.anyOriginAllowed = false;
@@ -683,7 +683,7 @@ public class CorsFilter extends GenericFilter {
Set<String> set = new HashSet<>();
for (String split : splits) {
- set.add(split.trim());
+ set.add(split.strip());
}
return set;
diff --git a/java/org/apache/catalina/filters/CsrfPreventionFilter.java
b/java/org/apache/catalina/filters/CsrfPreventionFilter.java
index 35aef63c5b..5f2543f015 100644
--- a/java/org/apache/catalina/filters/CsrfPreventionFilter.java
+++ b/java/org/apache/catalina/filters/CsrfPreventionFilter.java
@@ -118,7 +118,7 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
public void setEntryPoints(String entryPoints) {
String[] values = entryPoints.split(",");
for (String value : values) {
- this.entryPoints.add(value.trim());
+ this.entryPoints.add(value.strip());
}
}
@@ -189,7 +189,7 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
* @return A collection of predicates representing the URL patterns.
*/
protected static Collection<Predicate<String>>
createNoNoncePredicates(ServletContext context, String patterns) {
- if (null == patterns || patterns.trim().isEmpty()) {
+ if (null == patterns || patterns.strip().isEmpty()) {
return null;
}
@@ -201,7 +201,7 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
ArrayList<Predicate<String>> matchers = new ArrayList<>(values.length);
for (String value : values) {
- Predicate<String> p = createNoNoncePredicate(context,
value.trim());
+ Predicate<String> p = createNoNoncePredicate(context,
value.strip());
if (null != p) {
matchers.add(p);
@@ -222,7 +222,7 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
* @return A Predicate which can match the specified pattern, or
<code>null</code> if the pattern is null or blank.
*/
protected static Predicate<String> createNoNoncePredicate(ServletContext
context, String pattern) {
- if (null == pattern || pattern.trim().isEmpty()) {
+ if (null == pattern || pattern.strip().isEmpty()) {
return null;
}
if (pattern.startsWith("mime:")) {
diff --git a/java/org/apache/catalina/filters/ExpiresFilter.java
b/java/org/apache/catalina/filters/ExpiresFilter.java
index 2d1a5fa4c1..0745274170 100644
--- a/java/org/apache/catalina/filters/ExpiresFilter.java
+++ b/java/org/apache/catalina/filters/ExpiresFilter.java
@@ -1440,7 +1440,7 @@ public class ExpiresFilter extends FilterBase {
try {
if (name.startsWith(PARAMETER_EXPIRES_BY_TYPE)) {
String contentType =
-
name.substring(PARAMETER_EXPIRES_BY_TYPE.length()).trim().toLowerCase(Locale.ENGLISH);
+
name.substring(PARAMETER_EXPIRES_BY_TYPE.length()).strip().toLowerCase(Locale.ENGLISH);
ExpiresConfiguration expiresConfiguration =
parseExpiresConfiguration(value);
this.expiresConfigurationByContentType.put(contentType,
expiresConfiguration);
} else if (name.equalsIgnoreCase(PARAMETER_EXPIRES_DEFAULT)) {
@@ -1572,7 +1572,7 @@ public class ExpiresFilter extends FilterBase {
* @return the parsed expires
*/
protected ExpiresConfiguration parseExpiresConfiguration(String inputLine)
{
- String line = inputLine.trim();
+ String line = inputLine.strip();
StringTokenizer tokenizer = new StringTokenizer(line, " ");
diff --git a/java/org/apache/catalina/filters/RateLimitFilter.java
b/java/org/apache/catalina/filters/RateLimitFilter.java
index c8d47b55ba..db3ec68a39 100644
--- a/java/org/apache/catalina/filters/RateLimitFilter.java
+++ b/java/org/apache/catalina/filters/RateLimitFilter.java
@@ -264,7 +264,7 @@ public class RateLimitFilter extends FilterBase {
rateLimiter.setFilterConfig(filterConfig);
if (policyName != null) {
- String trimmedName = policyName.trim();
+ String trimmedName = policyName.strip();
if (!trimmedName.isEmpty()) {
rateLimiter.setPolicyName(trimmedName);
}
diff --git a/java/org/apache/catalina/filters/RestCsrfPreventionFilter.java
b/java/org/apache/catalina/filters/RestCsrfPreventionFilter.java
index d56d8683af..d12d033a96 100644
--- a/java/org/apache/catalina/filters/RestCsrfPreventionFilter.java
+++ b/java/org/apache/catalina/filters/RestCsrfPreventionFilter.java
@@ -248,7 +248,7 @@ public class RestCsrfPreventionFilter extends
CsrfPreventionFilterBase {
*/
public void setPathsAcceptingParams(String pathsList) {
if (Objects.nonNull(pathsList)) {
- Arrays.asList(pathsList.split(pathsDelimiter)).forEach(e ->
pathsAcceptingParams.add(e.trim()));
+ Arrays.asList(pathsList.split(pathsDelimiter)).forEach(e ->
pathsAcceptingParams.add(e.strip()));
}
}
diff --git a/java/org/apache/catalina/ha/backend/TcpSender.java
b/java/org/apache/catalina/ha/backend/TcpSender.java
index 1597090e18..d430b86b7b 100644
--- a/java/org/apache/catalina/ha/backend/TcpSender.java
+++ b/java/org/apache/catalina/ha/backend/TcpSender.java
@@ -108,7 +108,7 @@ public class TcpSender implements Sender {
proxies = new Proxy[tok.countTokens()];
int i = 0;
while (tok.hasMoreTokens()) {
- String token = tok.nextToken().trim();
+ String token = tok.nextToken().strip();
int pos = token.indexOf(':');
if (pos <= 0) {
throw new
Exception(sm.getString("tcpSender.invalidProxyList"));
diff --git a/java/org/apache/catalina/manager/HTMLManagerServlet.java
b/java/org/apache/catalina/manager/HTMLManagerServlet.java
index a132afb407..09541400c5 100644
--- a/java/org/apache/catalina/manager/HTMLManagerServlet.java
+++ b/java/org/apache/catalina/manager/HTMLManagerServlet.java
@@ -953,7 +953,7 @@ public class HTMLManagerServlet extends ManagerServlet {
List<Session> sessions = getSessionsForName(cn, smClient);
String sortBy = req.getParameter("sort");
String orderBy = null;
- if (null != sortBy && !sortBy.trim().isEmpty()) {
+ if (null != sortBy && !sortBy.strip().isEmpty()) {
Comparator<Session> comparator = getComparator(sortBy);
if (comparator != null) {
orderBy = req.getParameter("order");
diff --git a/java/org/apache/catalina/realm/DataSourceRealm.java
b/java/org/apache/catalina/realm/DataSourceRealm.java
index 28e7b2cfdc..8ca3d5ffcf 100644
--- a/java/org/apache/catalina/realm/DataSourceRealm.java
+++ b/java/org/apache/catalina/realm/DataSourceRealm.java
@@ -447,7 +447,7 @@ public class DataSourceRealm extends RealmBase {
dbCredentials = rs.getString(1);
}
- return (dbCredentials != null) ? dbCredentials.trim() : null;
+ return (dbCredentials != null) ? dbCredentials.strip() : null;
}
} catch (SQLException e) {
containerLog.error(sm.getString("dataSourceRealm.getPassword.exception",
username), e);
@@ -551,7 +551,7 @@ public class DataSourceRealm extends RealmBase {
while (rs.next()) {
String role = rs.getString(1);
if (role != null) {
- list.add(role.trim());
+ list.add(role.strip());
}
}
return list;
diff --git a/java/org/apache/catalina/realm/JNDIRealm.java
b/java/org/apache/catalina/realm/JNDIRealm.java
index fc27e6750a..dd2b96d966 100644
--- a/java/org/apache/catalina/realm/JNDIRealm.java
+++ b/java/org/apache/catalina/realm/JNDIRealm.java
@@ -1089,7 +1089,7 @@ public class JNDIRealm extends RealmBase {
if (cipherSuites == null || cipherSuitesArray != null) {
return cipherSuitesArray;
}
- this.cipherSuites = this.cipherSuites.trim();
+ this.cipherSuites = this.cipherSuites.strip();
if (this.cipherSuites.isEmpty()) {
containerLog.warn(sm.getString("jndiRealm.emptyCipherSuites"));
this.cipherSuitesArray = null;
@@ -1156,7 +1156,7 @@ public class JNDIRealm extends RealmBase {
*/
public void setHostnameVerifierClassName(String verifierClassName) {
if (verifierClassName != null) {
- this.hostNameVerifierClassName = verifierClassName.trim();
+ this.hostNameVerifierClassName = verifierClassName.strip();
} else {
this.hostNameVerifierClassName = null;
}
@@ -2732,7 +2732,7 @@ public class JNDIRealm extends RealmBase {
return sslSocketFactory;
}
final SSLSocketFactory result;
- if (this.sslSocketFactoryClassName != null &&
!sslSocketFactoryClassName.trim().isEmpty()) {
+ if (this.sslSocketFactoryClassName != null &&
!sslSocketFactoryClassName.strip().isEmpty()) {
result =
createSSLSocketFactoryFromClassName(this.sslSocketFactoryClassName);
} else {
result = createSSLContextFactoryFromProtocol(sslProtocol);
diff --git a/java/org/apache/catalina/realm/MemoryRealm.java
b/java/org/apache/catalina/realm/MemoryRealm.java
index c9cc537fc9..98a02f8e46 100644
--- a/java/org/apache/catalina/realm/MemoryRealm.java
+++ b/java/org/apache/catalina/realm/MemoryRealm.java
@@ -173,7 +173,7 @@ public class MemoryRealm extends RealmBase {
if (comma < 0) {
break;
}
- String role = roles.substring(0, comma).trim();
+ String role = roles.substring(0, comma).strip();
if (!role.isEmpty()) {
list.add(role);
}
diff --git a/java/org/apache/catalina/realm/RealmBase.java
b/java/org/apache/catalina/realm/RealmBase.java
index 4866ddc40f..d63cd39f3c 100644
--- a/java/org/apache/catalina/realm/RealmBase.java
+++ b/java/org/apache/catalina/realm/RealmBase.java
@@ -945,7 +945,7 @@ public abstract class RealmBase extends LifecycleMBeanBase
implements Realm {
}
List<String> attrs = new ArrayList<>();
for (String name : userAttributes.split(USER_ATTRIBUTES_DELIMITER)) {
- name = name.trim();
+ name = name.strip();
if (name.isEmpty()) {
continue;
}
@@ -1611,7 +1611,7 @@ public abstract class RealmBase extends
LifecycleMBeanBase implements Realm {
}
private static X509UsernameRetriever createUsernameRetriever(String
className) throws LifecycleException {
- if (null == className || className.trim().isEmpty()) {
+ if (null == className || className.strip().isEmpty()) {
return new X509SubjectDnRetriever();
}
diff --git a/java/org/apache/catalina/security/SecurityListener.java
b/java/org/apache/catalina/security/SecurityListener.java
index c14405bad7..6f10bc4034 100644
--- a/java/org/apache/catalina/security/SecurityListener.java
+++ b/java/org/apache/catalina/security/SecurityListener.java
@@ -101,7 +101,7 @@ public class SecurityListener implements LifecycleListener {
} else {
String[] userNames = userNameList.split(",");
for (String userName : userNames) {
- userName = userName.trim();
+ userName = userName.strip();
if (!userName.isEmpty()) {
checkedOsUsers.add(userName.toLowerCase(Locale.getDefault()));
}
diff --git a/java/org/apache/catalina/servlets/CGIServlet.java
b/java/org/apache/catalina/servlets/CGIServlet.java
index 8211c0a041..2cff78b75e 100644
--- a/java/org/apache/catalina/servlets/CGIServlet.java
+++ b/java/org/apache/catalina/servlets/CGIServlet.java
@@ -359,13 +359,13 @@ public final class CGIServlet extends HttpServlet {
if (getServletConfig().getInitParameter("cgiMethods") != null) {
String paramValue =
getServletConfig().getInitParameter("cgiMethods");
- paramValue = paramValue.trim();
+ paramValue = paramValue.strip();
if ("*".equals(paramValue)) {
cgiMethodsAll = true;
} else {
String[] methods = paramValue.split(",");
for (String method : methods) {
- String trimmedMethod = method.trim();
+ String trimmedMethod = method.strip();
cgiMethods.add(trimmedMethod);
}
}
diff --git a/java/org/apache/catalina/servlets/DefaultServlet.java
b/java/org/apache/catalina/servlets/DefaultServlet.java
index 8d1b2b4580..b4241189ad 100644
--- a/java/org/apache/catalina/servlets/DefaultServlet.java
+++ b/java/org/apache/catalina/servlets/DefaultServlet.java
@@ -3068,7 +3068,7 @@ public class DefaultServlet extends HttpServlet {
* @return An Order specifying the column and ascending/descending to
be applied to resources.
*/
public Order getOrder(String order) {
- if (null == order || order.trim().isEmpty()) {
+ if (null == order || order.strip().isEmpty()) {
return Order.DEFAULT;
}
@@ -3082,7 +3082,7 @@ public class DefaultServlet extends HttpServlet {
boolean ascending = false;
for (String option : options) {
- option = option.trim();
+ option = option.strip();
if (2 < option.length()) {
char opt = option.charAt(0);
diff --git a/java/org/apache/catalina/session/DataSourceStore.java
b/java/org/apache/catalina/session/DataSourceStore.java
index 8e87813977..b60ead741c 100644
--- a/java/org/apache/catalina/session/DataSourceStore.java
+++ b/java/org/apache/catalina/session/DataSourceStore.java
@@ -298,7 +298,7 @@ public class DataSourceStore extends StoreBase {
* @param dataSourceName The JNDI name of the DataSource-factory
*/
public void setDataSourceName(String dataSourceName) {
- if (dataSourceName == null || dataSourceName.trim().isEmpty()) {
+ if (dataSourceName == null || dataSourceName.strip().isEmpty()) {
manager.getContext().getLogger().warn(sm.getString(getStoreName()
+ ".missingDataSourceName"));
return;
}
diff --git a/java/org/apache/catalina/ssi/ExpressionTokenizer.java
b/java/org/apache/catalina/ssi/ExpressionTokenizer.java
index 981a85fe4b..f48b563155 100644
--- a/java/org/apache/catalina/ssi/ExpressionTokenizer.java
+++ b/java/org/apache/catalina/ssi/ExpressionTokenizer.java
@@ -62,7 +62,7 @@ public class ExpressionTokenizer {
* @param expr The expression
*/
public ExpressionTokenizer(String expr) {
- this.expr = expr.trim().toCharArray();
+ this.expr = expr.strip().toCharArray();
this.length = this.expr.length;
}
diff --git a/java/org/apache/catalina/ssi/SSIProcessor.java
b/java/org/apache/catalina/ssi/SSIProcessor.java
index ca0a4aa41d..6441bf5612 100644
--- a/java/org/apache/catalina/ssi/SSIProcessor.java
+++ b/java/org/apache/catalina/ssi/SSIProcessor.java
@@ -252,7 +252,7 @@ public class SSIProcessor {
collectingName = false;
}
} else if (endQuote == 0 && c == '=') {
- retString[idx++] = nameBuf.toString().trim();
+ retString[idx++] = nameBuf.toString().strip();
nameBuf.setLength(0);
collectingName = false;
} else if (endQuote == 0) {
diff --git a/java/org/apache/catalina/startup/Bootstrap.java
b/java/org/apache/catalina/startup/Bootstrap.java
index 05e213f47a..b3162e9926 100644
--- a/java/org/apache/catalina/startup/Bootstrap.java
+++ b/java/org/apache/catalina/startup/Bootstrap.java
@@ -583,7 +583,7 @@ public final class Bootstrap {
while (matcher.find()) {
String path = value.substring(matcher.start(), matcher.end());
- path = path.trim();
+ path = path.strip();
if (path.isEmpty()) {
continue;
}
@@ -593,7 +593,7 @@ public final class Bootstrap {
if (first == '"' && last == '"' && path.length() > 1) {
path = path.substring(1, path.length() - 1);
- path = path.trim();
+ path = path.strip();
if (path.isEmpty()) {
continue;
}
diff --git a/java/org/apache/catalina/startup/WebappServiceLoader.java
b/java/org/apache/catalina/startup/WebappServiceLoader.java
index 95c68e7777..3c018a17d4 100644
--- a/java/org/apache/catalina/startup/WebappServiceLoader.java
+++ b/java/org/apache/catalina/startup/WebappServiceLoader.java
@@ -213,7 +213,7 @@ public class WebappServiceLoader<T> {
if (i >= 0) {
line = line.substring(0, i);
}
- line = line.trim();
+ line = line.strip();
if (line.isEmpty()) {
continue;
}
diff --git a/java/org/apache/catalina/storeconfig/XMLFormatPreserver.java
b/java/org/apache/catalina/storeconfig/XMLFormatPreserver.java
index efdc7cce7f..4850a0565a 100644
--- a/java/org/apache/catalina/storeconfig/XMLFormatPreserver.java
+++ b/java/org/apache/catalina/storeconfig/XMLFormatPreserver.java
@@ -285,8 +285,8 @@ public final class XMLFormatPreserver {
}
String freshText = fresh.getText();
String candidateText = candidate.getText();
- if (freshText != null && !freshText.trim().isEmpty()
- && Objects.equals(freshText.trim(), candidateText == null ?
null : candidateText.trim())) {
+ if (freshText != null && !freshText.strip().isEmpty()
+ && Objects.equals(freshText.strip(), candidateText == null ?
null : candidateText.strip())) {
score += 50;
}
return score;
@@ -346,7 +346,7 @@ public final class XMLFormatPreserver {
}
boolean hasChildren = !fresh.children.isEmpty();
String text = fresh.getText();
- boolean hasText = text != null && !text.trim().isEmpty();
+ boolean hasText = text != null && !text.strip().isEmpty();
// Reproduce the attribute line wrapping of StoreAppender: the
position starts at the indentation level and
// the attributes are wrapped on a new line once the position exceeds
60 characters
int position = indent;
@@ -483,8 +483,8 @@ public final class XMLFormatPreserver {
// Only the significant text is compared: whitespace between child
elements is layout, not content
String aText = a.getText();
String bText = b.getText();
- String aTrimmed = (aText == null || aText.trim().isEmpty()) ? null :
aText.trim();
- String bTrimmed = (bText == null || bText.trim().isEmpty()) ? null :
bText.trim();
+ String aTrimmed = (aText == null || aText.strip().isEmpty()) ? null :
aText.strip();
+ String bTrimmed = (bText == null || bText.strip().isEmpty()) ? null :
bText.strip();
if (!Objects.equals(aTrimmed, bTrimmed)) {
return false;
}
diff --git
a/java/org/apache/catalina/tribes/group/interceptors/EncryptInterceptor.java
b/java/org/apache/catalina/tribes/group/interceptors/EncryptInterceptor.java
index d3e206635c..f073442657 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/EncryptInterceptor.java
+++ b/java/org/apache/catalina/tribes/group/interceptors/EncryptInterceptor.java
@@ -248,7 +248,7 @@ public class EncryptInterceptor extends
ChannelInterceptorBase implements Encryp
if (null == keyBytes) {
setEncryptionKey((byte[]) null);
} else {
- setEncryptionKey(fromHexString(keyBytes.trim()));
+ setEncryptionKey(fromHexString(keyBytes.strip()));
}
}
diff --git a/java/org/apache/catalina/users/DataSourceUserDatabase.java
b/java/org/apache/catalina/users/DataSourceUserDatabase.java
index 9b3867b38f..7e11e5b1a4 100644
--- a/java/org/apache/catalina/users/DataSourceUserDatabase.java
+++ b/java/org/apache/catalina/users/DataSourceUserDatabase.java
@@ -943,7 +943,7 @@ public class DataSourceUserDatabase extends
SparseUserDatabase {
return null;
}
- dbCredentials = (dbCredentials != null) ? dbCredentials.trim()
: null;
+ dbCredentials = (dbCredentials != null) ?
dbCredentials.strip() : null;
}
} catch (SQLException e) {
log.error(sm.getString("dataSourceUserDatabase.exception"), e);
diff --git a/java/org/apache/catalina/users/MemoryUserDatabase.java
b/java/org/apache/catalina/users/MemoryUserDatabase.java
index 22294dc729..1ededac7b1 100644
--- a/java/org/apache/catalina/users/MemoryUserDatabase.java
+++ b/java/org/apache/catalina/users/MemoryUserDatabase.java
@@ -700,10 +700,10 @@ class MemoryGroupCreationFactory extends
AbstractObjectCreationFactory {
String rolename;
int comma = roles.indexOf(',');
if (comma >= 0) {
- rolename = roles.substring(0, comma).trim();
+ rolename = roles.substring(0, comma).strip();
roles = roles.substring(comma + 1);
} else {
- rolename = roles.trim();
+ rolename = roles.strip();
roles = "";
}
if (!rolename.isEmpty()) {
@@ -789,10 +789,10 @@ class MemoryUserCreationFactory extends
AbstractObjectCreationFactory {
String groupname;
int comma = groups.indexOf(',');
if (comma >= 0) {
- groupname = groups.substring(0, comma).trim();
+ groupname = groups.substring(0, comma).strip();
groups = groups.substring(comma + 1);
} else {
- groupname = groups.trim();
+ groupname = groups.strip();
groups = "";
}
if (!groupname.isEmpty()) {
@@ -809,10 +809,10 @@ class MemoryUserCreationFactory extends
AbstractObjectCreationFactory {
String rolename;
int comma = roles.indexOf(',');
if (comma >= 0) {
- rolename = roles.substring(0, comma).trim();
+ rolename = roles.substring(0, comma).strip();
roles = roles.substring(comma + 1);
} else {
- rolename = roles.trim();
+ rolename = roles.strip();
roles = "";
}
if (!rolename.isEmpty()) {
diff --git a/java/org/apache/catalina/valves/ParameterLimitValve.java
b/java/org/apache/catalina/valves/ParameterLimitValve.java
index c0b44d85f5..71b57a87dd 100644
--- a/java/org/apache/catalina/valves/ParameterLimitValve.java
+++ b/java/org/apache/catalina/valves/ParameterLimitValve.java
@@ -248,7 +248,7 @@ public class ParameterLimitValve extends ValveBase {
String line;
while ((line = reader.readLine()) != null) {
// Trim whitespace from the line
- line = line.trim();
+ line = line.strip();
if (line.isEmpty() || line.startsWith("#")) {
// Skip empty lines or comments
continue;
@@ -259,8 +259,8 @@ public class ParameterLimitValve extends ValveBase {
throw new
IllegalArgumentException(sm.getString("parameterLimitValve.invalidLine", line));
}
- String patternString = line.substring(0,
lastEqualsIndex).trim();
- String limitsString = line.substring(lastEqualsIndex +
1).trim();
+ String patternString = line.substring(0,
lastEqualsIndex).strip();
+ String limitsString = line.substring(lastEqualsIndex +
1).strip();
Pattern pattern =
Pattern.compile(UDecoder.URLDecode(patternString, StandardCharsets.UTF_8));
String[] limits = limitsString.split(",");
diff --git
a/java/org/apache/catalina/valves/rewrite/RandomizedTextRewriteMap.java
b/java/org/apache/catalina/valves/rewrite/RandomizedTextRewriteMap.java
index d809a77f9a..b25c0b04e8 100644
--- a/java/org/apache/catalina/valves/rewrite/RandomizedTextRewriteMap.java
+++ b/java/org/apache/catalina/valves/rewrite/RandomizedTextRewriteMap.java
@@ -52,13 +52,13 @@ public class RandomizedTextRewriteMap implements RewriteMap
{
try (Resource txtResource =
ConfigFileLoader.getSource().getResource(txtFilePath);
BufferedReader reader = new BufferedReader(new
InputStreamReader(txtResource.getInputStream()))) {
while ((line = reader.readLine()) != null) {
- line = line.trim();
+ line = line.strip();
if (line.startsWith("#") || line.isEmpty()) {
// Ignore comment line or empty lines
continue;
} else if (line.indexOf('#') > 0) {
// Ignore comment characters after '#'
- line = line.substring(0, line.indexOf('#')).trim();
+ line = line.substring(0, line.indexOf('#')).strip();
}
// Like mod_rewrite, any whitespace separates the key from the
// value. The value may itself contain whitespace.
diff --git a/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
b/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
index 840d832bdc..b91811db64 100644
--- a/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
+++ b/java/org/apache/catalina/valves/rewrite/ResolverImpl.java
@@ -331,7 +331,7 @@ public class ResolverImpl extends Resolver {
break;
}
- String key = unescape(fullDN.substring(start, eqPos)).trim();
+ String key = unescape(fullDN.substring(start, eqPos)).strip();
int valStart = eqPos + 1;
// Find the unescaped ',' that ends this RDN, or end of string
@@ -346,7 +346,7 @@ public class ResolverImpl extends Resolver {
}
}
- String value = unescape(fullDN.substring(valStart,
commaPos)).trim();
+ String value = unescape(fullDN.substring(valStart,
commaPos)).strip();
if (!key.isEmpty()) {
components.put(key, value);
}
diff --git a/java/org/apache/coyote/CompressionConfig.java
b/java/org/apache/coyote/CompressionConfig.java
index 4a3d939bf0..6860c8caea 100644
--- a/java/org/apache/coyote/CompressionConfig.java
+++ b/java/org/apache/coyote/CompressionConfig.java
@@ -84,7 +84,7 @@ public class CompressionConfig {
if (encodings != null && !encodings.isEmpty()) {
StringTokenizer tokens = new StringTokenizer(encodings, ",");
while (tokens.hasMoreTokens()) {
- String token = tokens.nextToken().trim();
+ String token = tokens.nextToken().strip();
if (!token.isEmpty()) {
newEncodings.add(token);
}
@@ -104,7 +104,7 @@ public class CompressionConfig {
public void setCompression(String compression) {
// Trim the value so that surrounding whitespace in the configuration
// does not silently disable compression
- String value = compression == null ? "" : compression.trim();
+ String value = compression == null ? "" : compression.strip();
switch (value) {
case "on" -> this.compressionLevel = 1;
case "force" -> this.compressionLevel = 2;
@@ -226,7 +226,7 @@ public class CompressionConfig {
List<String> values = new ArrayList<>();
StringTokenizer tokens = new StringTokenizer(compressibleMimeType,
",");
while (tokens.hasMoreTokens()) {
- String token = tokens.nextToken().trim();
+ String token = tokens.nextToken().strip();
if (!token.isEmpty()) {
values.add(token);
}
diff --git a/java/org/apache/jasper/compiler/ELParser.java
b/java/org/apache/jasper/compiler/ELParser.java
index 3571a8fdd5..fc4823b97b 100644
--- a/java/org/apache/jasper/compiler/ELParser.java
+++ b/java/org/apache/jasper/compiler/ELParser.java
@@ -269,7 +269,7 @@ public class ELParser {
int end = len;
// Look to see if the value is quoted
- String trimmed = input.trim();
+ String trimmed = input.strip();
int trimmedLen = trimmed.length();
if (trimmedLen > 1) {
// Might be quoted
diff --git a/java/org/apache/jasper/compiler/Generator.java
b/java/org/apache/jasper/compiler/Generator.java
index bfd2b376ae..a9127bf29f 100644
--- a/java/org/apache/jasper/compiler/Generator.java
+++ b/java/org/apache/jasper/compiler/Generator.java
@@ -574,7 +574,7 @@ class Generator {
Set<String> packages = new LinkedHashSet<>();
Set<String> classes = new LinkedHashSet<>();
for (String importName : imports) {
- String trimmed = importName.trim();
+ String trimmed = importName.strip();
if (trimmed.endsWith(".*")) {
packages.add(trimmed.substring(0, trimmed.length() - 2));
} else {
@@ -1813,7 +1813,7 @@ class Generator {
String revisedText = matcher.replaceAll("\n");
// Leading and trailing whitespace can be trimmed so remove
// it here as the regex won't remove it.
- text = revisedText.trim();
+ text = revisedText.strip();
}
}
diff --git a/java/org/apache/jasper/compiler/JavacErrorDetail.java
b/java/org/apache/jasper/compiler/JavacErrorDetail.java
index 158425a4dc..037c882b5d 100644
--- a/java/org/apache/jasper/compiler/JavacErrorDetail.java
+++ b/java/org/apache/jasper/compiler/JavacErrorDetail.java
@@ -113,7 +113,7 @@ public class JavacErrorDetail {
// faulty. Scan forward to match the java line...
if (jspLines[jspBeginLineNum - 1].lastIndexOf("<%") >
jspLines[jspBeginLineNum - 1]
.lastIndexOf("%>")) {
- String javaLine = javaLines[javaLineNum - 1].trim();
+ String javaLine = javaLines[javaLineNum - 1].strip();
for (int i = jspBeginLineNum - 1; i < jspLines.length;
i++) {
if (jspLines[i].contains(javaLine)) {
diff --git a/java/org/apache/jasper/compiler/Node.java
b/java/org/apache/jasper/compiler/Node.java
index b09e82bd6b..0a42b8a607 100644
--- a/java/org/apache/jasper/compiler/Node.java
+++ b/java/org/apache/jasper/compiler/Node.java
@@ -745,7 +745,7 @@ public abstract class Node implements TagConstants {
if (importEntry.indexOf(';') > -1) {
throw new
IllegalArgumentException(Localizer.getMessage("jsp.error.page.invalid.import"));
}
- return importEntry.trim();
+ return importEntry.strip();
}
}
@@ -815,14 +815,14 @@ public abstract class Node implements TagConstants {
int start = 0;
int index;
while ((index = value.indexOf(',', start)) != -1) {
- imports.add(value.substring(start, index).trim());
+ imports.add(value.substring(start, index).strip());
start = index + 1;
}
if (start == 0) {
// No comma found
- imports.add(value.trim());
+ imports.add(value.strip());
} else {
- imports.add(value.substring(start).trim());
+ imports.add(value.substring(start).strip());
}
}
@@ -2628,9 +2628,9 @@ public abstract class Node implements TagConstants {
} else if (this.isDeferredMethodInput()) {
String m = this.tai.getMethodSignature();
if (m != null) {
- int rti = m.trim().indexOf(' ');
+ int rti = m.strip().indexOf(' ');
if (rti > 0) {
- return m.substring(0, rti).trim();
+ return m.substring(0, rti).strip();
}
}
}
@@ -2648,13 +2648,13 @@ public abstract class Node implements TagConstants {
if (this.isDeferredMethodInput()) {
String m = this.tai.getMethodSignature();
if (m != null) {
- m = m.trim();
+ m = m.strip();
m = m.substring(m.indexOf('(') + 1);
m = m.substring(0, m.length() - 1);
- if (!m.trim().isEmpty()) {
+ if (!m.strip().isEmpty()) {
String[] p = m.split(",");
for (int i = 0; i < p.length; i++) {
- p[i] = p[i].trim();
+ p[i] = p[i].strip();
}
return p;
}
diff --git a/java/org/apache/jasper/compiler/SmapUtil.java
b/java/org/apache/jasper/compiler/SmapUtil.java
index b300105e57..fb997ff06f 100644
--- a/java/org/apache/jasper/compiler/SmapUtil.java
+++ b/java/org/apache/jasper/compiler/SmapUtil.java
@@ -630,7 +630,7 @@ public class SmapUtil {
// beginning of the text.
while ((next = text.indexOf('\n', index)) > -1) {
if (beginning) {
- String line = text.substring(index, next).trim();
+ String line = text.substring(index, next).strip();
if (!slashStarSeen && line.startsWith("/*")) {
slashStarSeen = true;
}
diff --git a/java/org/apache/jasper/compiler/Validator.java
b/java/org/apache/jasper/compiler/Validator.java
index fd085cd208..4a3441e00f 100644
--- a/java/org/apache/jasper/compiler/Validator.java
+++ b/java/org/apache/jasper/compiler/Validator.java
@@ -996,10 +996,10 @@ class Validator {
// for the attribute
String m = tldAttr.getMethodSignature();
if (m != null) {
- m = m.trim();
+ m = m.strip();
int rti = m.indexOf(' ');
if (rti > 0) {
- expectedType = m.substring(0,
rti).trim();
+ expectedType = m.substring(0,
rti).strip();
}
} else {
expectedType = "java.lang.Object";
@@ -1444,7 +1444,7 @@ class Validator {
}
lastArg = true;
}
- String arg = signature.substring(start, p).trim();
+ String arg = signature.substring(start, p).strip();
if (!arg.isEmpty()) {
params.add(arg);
}
diff --git a/java/org/apache/jasper/tagplugins/jstl/Util.java
b/java/org/apache/jasper/tagplugins/jstl/Util.java
index f453c4a497..9c8f8054e4 100644
--- a/java/org/apache/jasper/tagplugins/jstl/Util.java
+++ b/java/org/apache/jasper/tagplugins/jstl/Util.java
@@ -139,7 +139,7 @@ public class Util {
return null;
}
index += 1; // positioned after the '='
- input = input.substring(index).trim();
+ input = input.substring(index).strip();
if (input.isEmpty()) {
// Empty or whitespace-only parameter value, e.g. a malformed
// "Content-Type: text/html;charset=" header from a remote server.
@@ -163,7 +163,7 @@ public class Util {
end = input.length();
}
}
- return input.substring(begin, end).trim();
+ return input.substring(begin, end).strip();
}
/**
diff --git a/java/org/apache/juli/ClassLoaderLogManager.java
b/java/org/apache/juli/ClassLoaderLogManager.java
index cfeac2caef..f659fcf8bd 100644
--- a/java/org/apache/juli/ClassLoaderLogManager.java
+++ b/java/org/apache/juli/ClassLoaderLogManager.java
@@ -147,7 +147,7 @@ public class ClassLoaderLogManager extends LogManager {
// Apply initial level for new logger
final String levelString = getProperty(loggerName + ".level");
if (levelString != null) {
- logger.setLevel(Level.parse(levelString.trim()));
+ logger.setLevel(Level.parse(levelString.strip()));
}
// Always instantiate parent loggers so that
@@ -178,7 +178,7 @@ public class ClassLoaderLogManager extends LogManager {
logger.setUseParentHandlers(false);
StringTokenizer tok = new StringTokenizer(handlers, ",");
while (tok.hasMoreTokens()) {
- String handlerName = (tok.nextToken().trim());
+ String handlerName = (tok.nextToken().strip());
Handler handler = null;
ClassLoader current = classLoader;
while (current != null) {
@@ -502,7 +502,7 @@ public class ClassLoaderLogManager extends LogManager {
if (handlers != null) {
StringTokenizer tok = new StringTokenizer(handlers, ",");
while (tok.hasMoreTokens()) {
- String handlerName = (tok.nextToken().trim());
+ String handlerName = (tok.nextToken().strip());
String handlerClassName = handlerName;
String prefix = "";
if (handlerClassName.isEmpty()) {
diff --git a/java/org/apache/juli/FileHandler.java
b/java/org/apache/juli/FileHandler.java
index 04fadbd9a3..2bc787e4d0 100644
--- a/java/org/apache/juli/FileHandler.java
+++ b/java/org/apache/juli/FileHandler.java
@@ -464,7 +464,7 @@ public class FileHandler extends Handler {
if (value == null) {
value = defaultValue;
} else {
- value = value.trim();
+ value = value.strip();
}
return value;
}
diff --git a/java/org/apache/tomcat/buildutil/translate/Import.java
b/java/org/apache/tomcat/buildutil/translate/Import.java
index 34136de39c..3d4e5365ce 100644
--- a/java/org/apache/tomcat/buildutil/translate/Import.java
+++ b/java/org/apache/tomcat/buildutil/translate/Import.java
@@ -72,7 +72,7 @@ public class Import {
String key = (String) objKey;
String value = props.getProperty(key);
// Skip untranslated values
- if (value.trim().isEmpty()) {
+ if (value.strip().isEmpty()) {
continue;
}
CompositeKey cKey = new CompositeKey(key);
diff --git a/java/org/apache/tomcat/util/buf/EncodedSolidusHandling.java
b/java/org/apache/tomcat/util/buf/EncodedSolidusHandling.java
index e9879c9139..6e03a78da1 100644
--- a/java/org/apache/tomcat/util/buf/EncodedSolidusHandling.java
+++ b/java/org/apache/tomcat/util/buf/EncodedSolidusHandling.java
@@ -67,7 +67,7 @@ public enum EncodedSolidusHandling {
* @throws IllegalStateException if the string does not match any known
strategy
*/
public static EncodedSolidusHandling fromString(String from) {
- String trimmedLower = from.trim().toLowerCase(Locale.ENGLISH);
+ String trimmedLower = from.strip().toLowerCase(Locale.ENGLISH);
for (EncodedSolidusHandling value : values()) {
if (value.getValue().equals(trimmedLower)) {
diff --git a/java/org/apache/tomcat/util/buf/StringUtils.java
b/java/org/apache/tomcat/util/buf/StringUtils.java
index 698b21875d..abe8758da2 100644
--- a/java/org/apache/tomcat/util/buf/StringUtils.java
+++ b/java/org/apache/tomcat/util/buf/StringUtils.java
@@ -177,7 +177,7 @@ public final class StringUtils {
String[] splits = s.split(",");
for (int i = 0; i < splits.length; ++i) {
- splits[i] = splits[i].trim();
+ splits[i] = splits[i].strip();
}
return splits;
diff --git a/java/org/apache/tomcat/util/descriptor/tld/TldRuleSet.java
b/java/org/apache/tomcat/util/descriptor/tld/TldRuleSet.java
index 93052df0dd..98c9ae5cc0 100644
--- a/java/org/apache/tomcat/util/descriptor/tld/TldRuleSet.java
+++ b/java/org/apache/tomcat/util/descriptor/tld/TldRuleSet.java
@@ -484,7 +484,7 @@ public class TldRuleSet implements RuleSet {
@Override
public void body(String namespace, String name, String text) throws
Exception {
if (null != text) {
- text = text.trim();
+ text = text.strip();
}
boolean value = "true".equalsIgnoreCase(text) ||
"yes".equalsIgnoreCase(text);
setter.invoke(digester.peek(), Boolean.valueOf(value));
diff --git a/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
b/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
index 77eda1d461..016737bbea 100644
--- a/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
+++ b/java/org/apache/tomcat/util/descriptor/web/SecurityConstraint.java
@@ -701,7 +701,7 @@ public class SecurityConstraint extends XmlEncodingBase
implements Serializable
msg.append(' ');
}
if (denyUncoveredHttpMethods) {
-
log.info(sm.getString("securityConstraint.uncoveredHttpMethodFix", pattern,
msg.toString().trim()));
+
log.info(sm.getString("securityConstraint.uncoveredHttpMethodFix", pattern,
msg.toString().strip()));
SecurityCollection collection = new SecurityCollection();
for (String method : methods) {
collection.addOmittedMethod(method);
@@ -713,7 +713,7 @@ public class SecurityConstraint extends XmlEncodingBase
implements Serializable
constraint.addCollection(collection);
newConstraints.add(constraint);
} else {
-
log.error(sm.getString("securityConstraint.uncoveredHttpMethod", pattern,
msg.toString().trim()));
+
log.error(sm.getString("securityConstraint.uncoveredHttpMethod", pattern,
msg.toString().strip()));
}
continue;
}
@@ -748,7 +748,7 @@ public class SecurityConstraint extends XmlEncodingBase
implements Serializable
}
if (denyUncoveredHttpMethods) {
log.info(sm.getString("securityConstraint.uncoveredHttpOmittedMethodFix",
pattern,
- msg.toString().trim()));
+ msg.toString().strip()));
SecurityCollection collection = new SecurityCollection();
for (String method : omittedMethods) {
collection.addMethod(method);
@@ -761,7 +761,7 @@ public class SecurityConstraint extends XmlEncodingBase
implements Serializable
newConstraints.add(constraint);
} else {
log.error(
-
sm.getString("securityConstraint.uncoveredHttpOmittedMethod", pattern,
msg.toString().trim()));
+
sm.getString("securityConstraint.uncoveredHttpOmittedMethod", pattern,
msg.toString().strip()));
}
}
}
diff --git a/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java
b/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java
index 3f5da0c700..16f141daec 100644
--- a/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java
+++ b/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java
@@ -1251,13 +1251,13 @@ final class MappedNameRule extends Rule {
@Override
public void body(String namespace, String name, String text) throws
Exception {
ResourceBase resourceBase = (ResourceBase) digester.peek();
- resourceBase.setProperty("mappedName", text.trim());
+ resourceBase.setProperty("mappedName", text.strip());
StringBuilder code = digester.getGeneratedCode();
if (code != null) {
code.append(System.lineSeparator());
code.append(digester.toVariableName(resourceBase));
- code.append(".setProperty(\"mappedName\",
\"").append(text.trim()).append("\");");
+ code.append(".setProperty(\"mappedName\",
\"").append(text.strip()).append("\");");
code.append(System.lineSeparator());
}
}
diff --git a/java/org/apache/tomcat/util/digester/CallMethodRule.java
b/java/org/apache/tomcat/util/digester/CallMethodRule.java
index 1f2cb4f37f..23d4aa7400 100644
--- a/java/org/apache/tomcat/util/digester/CallMethodRule.java
+++ b/java/org/apache/tomcat/util/digester/CallMethodRule.java
@@ -227,7 +227,7 @@ public class CallMethodRule extends Rule {
public void body(String namespace, String name, String bodyText) throws
Exception {
if (paramCount == 0) {
- this.bodyText = bodyText.trim();
+ this.bodyText = bodyText.strip();
}
}
diff --git a/java/org/apache/tomcat/util/digester/CallParamRule.java
b/java/org/apache/tomcat/util/digester/CallParamRule.java
index 962f02cde4..f58dc8de38 100644
--- a/java/org/apache/tomcat/util/digester/CallParamRule.java
+++ b/java/org/apache/tomcat/util/digester/CallParamRule.java
@@ -157,7 +157,7 @@ public class CallParamRule extends Rule {
if (bodyTextStack == null) {
bodyTextStack = new ArrayStack<>();
}
- bodyTextStack.push(bodyText.trim());
+ bodyTextStack.push(bodyText.strip());
}
}
diff --git a/java/org/apache/tomcat/util/digester/Digester.java
b/java/org/apache/tomcat/util/digester/Digester.java
index 75e6525586..413ee7fe1e 100644
--- a/java/org/apache/tomcat/util/digester/Digester.java
+++ b/java/org/apache/tomcat/util/digester/Digester.java
@@ -102,7 +102,7 @@ public class Digester extends DefaultHandler2 {
if (classNames != null) {
StringTokenizer classNamesTokenizer = new
StringTokenizer(classNames, ",");
while (classNamesTokenizer.hasMoreTokens()) {
- String className = classNamesTokenizer.nextToken().trim();
+ String className = classNamesTokenizer.nextToken().strip();
ClassLoader[] cls = new ClassLoader[] {
Digester.class.getClassLoader(),
Thread.currentThread().getContextClassLoader() };
for (ClassLoader cl : cls) {
diff --git a/java/org/apache/tomcat/util/http/CookiesWithoutEquals.java
b/java/org/apache/tomcat/util/http/CookiesWithoutEquals.java
index 4026872353..7229eb2d82 100644
--- a/java/org/apache/tomcat/util/http/CookiesWithoutEquals.java
+++ b/java/org/apache/tomcat/util/http/CookiesWithoutEquals.java
@@ -105,7 +105,7 @@ public enum CookiesWithoutEquals {
* @return The corresponding enum value
*/
public static CookiesWithoutEquals fromString(String from) {
- String trimmedLower = from.trim().toLowerCase(Locale.ENGLISH);
+ String trimmedLower = from.strip().toLowerCase(Locale.ENGLISH);
for (CookiesWithoutEquals value : values()) {
if (value.getValue().equals(trimmedLower)) {
diff --git a/java/org/apache/tomcat/util/net/SSLHostConfig.java
b/java/org/apache/tomcat/util/net/SSLHostConfig.java
index 612d4df9e5..bd458d1dd7 100644
--- a/java/org/apache/tomcat/util/net/SSLHostConfig.java
+++ b/java/org/apache/tomcat/util/net/SSLHostConfig.java
@@ -742,7 +742,7 @@ public class SSLHostConfig implements Serializable {
String[] components = ciphersList.split(":");
// Remove any TLS 1.3 cipher suites
for (String component : components) {
- String trimmed = component.trim();
+ String trimmed = component.strip();
if
(OpenSSLCipherConfigurationParser.isTls13Cipher(trimmed)) {
log.warn(sm.getString("sslHostConfig.handleTls13CiphersuiteInCiphers",
trimmed));
if (!sbCipherSuitesFromCiphers.isEmpty()) {
@@ -765,7 +765,7 @@ public class SSLHostConfig implements Serializable {
StringBuilder sbCipherSuitesFromCiphers = new StringBuilder();
String[] ciphers = ciphersList.split(",");
for (String cipher : ciphers) {
- String trimmed = cipher.trim();
+ String trimmed = cipher.strip();
if (!trimmed.isEmpty()) {
if
(OpenSSLCipherConfigurationParser.isTls13Cipher(trimmed)) {
log.warn(sm.getString("sslHostConfig.handleTls13CiphersuiteInCiphers",
trimmed));
@@ -866,7 +866,7 @@ public class SSLHostConfig implements Serializable {
values = cipherSuites.split(",");
}
for (String value : values) {
- String trimmed = value.trim();
+ String trimmed = value.strip();
if (!trimmed.isEmpty()) {
if (!OpenSSLCipherConfigurationParser.isTls13Cipher(trimmed)) {
log.warn(sm.getString("sslHostConfig.ignoreNonTls13Ciphersuite", trimmed));
@@ -1066,11 +1066,11 @@ public class SSLHostConfig implements Serializable {
// Split using a positive lookahead to keep the separator in
// the capture so we can check which case it is.
for (String value : input.split("(?=[-+,])")) {
- String trimmed = value.trim();
+ String trimmed = value.strip();
// Ignore token which only consists of prefix character
if (trimmed.length() > 1) {
if (trimmed.charAt(0) == '+') {
- trimmed = trimmed.substring(1).trim();
+ trimmed = trimmed.substring(1).strip();
if (trimmed.equalsIgnoreCase(Constants.SSL_PROTO_ALL)) {
protocols.addAll(SSL_PROTO_ALL_SET);
} else {
@@ -1078,7 +1078,7 @@ public class SSLHostConfig implements Serializable {
explicitlyRequestedProtocols.add(trimmed);
}
} else if (trimmed.charAt(0) == '-') {
- trimmed = trimmed.substring(1).trim();
+ trimmed = trimmed.substring(1).strip();
if (trimmed.equalsIgnoreCase(Constants.SSL_PROTO_ALL)) {
protocols.removeAll(SSL_PROTO_ALL_SET);
} else {
@@ -1087,7 +1087,7 @@ public class SSLHostConfig implements Serializable {
}
} else {
if (trimmed.charAt(0) == ',') {
- trimmed = trimmed.substring(1).trim();
+ trimmed = trimmed.substring(1).strip();
}
if (!protocols.isEmpty()) {
log.warn(sm.getString("sslHostConfig.prefix_missing",
trimmed, getHostName()));
@@ -1193,7 +1193,7 @@ public class SSLHostConfig implements Serializable {
String[] groupNames = groups.split(",");
for (String groupName : groupNames) {
try {
- Group group = Group.valueOf(groupName.trim());
+ Group group = Group.valueOf(groupName.strip());
groupList.add(group);
} catch (IllegalArgumentException e) {
log.warn(sm.getString("sslHostConfig.unknownGroup",
groupName));
diff --git a/java/org/apache/tomcat/util/scan/StandardJarScanFilter.java
b/java/org/apache/tomcat/util/scan/StandardJarScanFilter.java
index 6744cca901..6141930093 100644
--- a/java/org/apache/tomcat/util/scan/StandardJarScanFilter.java
+++ b/java/org/apache/tomcat/util/scan/StandardJarScanFilter.java
@@ -295,7 +295,7 @@ public class StandardJarScanFilter implements JarScanFilter
{
if (attribute != null) {
StringTokenizer tokenizer = new StringTokenizer(attribute, ",");
while (tokenizer.hasMoreElements()) {
- String token = tokenizer.nextToken().trim();
+ String token = tokenizer.nextToken().strip();
if (!token.isEmpty()) {
set.add(token);
}
diff --git a/java/org/apache/tomcat/util/scan/StandardJarScanner.java
b/java/org/apache/tomcat/util/scan/StandardJarScanner.java
index c0df03db83..846ac615e4 100644
--- a/java/org/apache/tomcat/util/scan/StandardJarScanner.java
+++ b/java/org/apache/tomcat/util/scan/StandardJarScanner.java
@@ -532,7 +532,7 @@ public class StandardJarScanner implements JarScanner {
}
String[] classPathEntries = classPathAttribute.split(" ");
for (String classPathEntry : classPathEntries) {
- classPathEntry = classPathEntry.trim();
+ classPathEntry = classPathEntry.strip();
if (classPathEntry.isEmpty()) {
continue;
}
diff --git
a/modules/owb/src/main/java/org/apache/webbeans/web/tomcat/TomcatSecurityService.java
b/modules/owb/src/main/java/org/apache/webbeans/web/tomcat/TomcatSecurityService.java
index 8f290d4cfd..22fe5662c2 100644
---
a/modules/owb/src/main/java/org/apache/webbeans/web/tomcat/TomcatSecurityService.java
+++
b/modules/owb/src/main/java/org/apache/webbeans/web/tomcat/TomcatSecurityService.java
@@ -50,7 +50,7 @@ public class TomcatSecurityService extends
SimpleSecurityService {
.filter(it -> !it.isEmpty())
.map(it -> {
try { // if MP JWT-Auth is available
- return loader.loadClass(it.trim());
+ return loader.loadClass(it.strip());
} catch (final NoClassDefFoundError |
ClassNotFoundException e) {
return null;
}
diff --git a/test/org/apache/catalina/core/TestApplicationDispatcher.java
b/test/org/apache/catalina/core/TestApplicationDispatcher.java
index 1933e4a01f..5d740e9cb7 100644
--- a/test/org/apache/catalina/core/TestApplicationDispatcher.java
+++ b/test/org/apache/catalina/core/TestApplicationDispatcher.java
@@ -76,7 +76,7 @@ public class TestApplicationDispatcher extends TomcatBaseTest
{
response, null);
Assert.assertEquals(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, rc);
- Assert.assertEquals("OK", response.toString().trim());
+ Assert.assertEquals("OK", response.toString().strip());
}
@@ -100,7 +100,7 @@ public class TestApplicationDispatcher extends
TomcatBaseTest {
response, null);
Assert.assertEquals(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, rc);
- Assert.assertEquals("OK", response.toString().trim());
+ Assert.assertEquals("OK", response.toString().strip());
}
diff --git a/test/org/apache/catalina/tribes/demos/CoordinationDemo.java
b/test/org/apache/catalina/tribes/demos/CoordinationDemo.java
index ad958a061f..02d23d5a14 100644
--- a/test/org/apache/catalina/tribes/demos/CoordinationDemo.java
+++ b/test/org/apache/catalina/tribes/demos/CoordinationDemo.java
@@ -288,13 +288,13 @@ public class CoordinationDemo {
public static String fill(String value, int length, String ch, boolean
left) {
StringBuilder buf = new StringBuilder();
if (!left) {
- buf.append(value.trim());
+ buf.append(value.strip());
}
- for (int i = value.trim().length(); i < length; i++) {
+ for (int i = value.strip().length(); i < length; i++) {
buf.append(ch);
}
if (left) {
- buf.append(value.trim());
+ buf.append(value.strip());
}
return buf.toString();
}
diff --git a/test/org/apache/catalina/valves/TestExtendedAccessLogValve.java
b/test/org/apache/catalina/valves/TestExtendedAccessLogValve.java
index 5be78b83c9..6f1bf84432 100644
--- a/test/org/apache/catalina/valves/TestExtendedAccessLogValve.java
+++ b/test/org/apache/catalina/valves/TestExtendedAccessLogValve.java
@@ -166,7 +166,7 @@ public class TestExtendedAccessLogValve extends
TomcatBaseTest {
int result = 0;
String[] lines = content.split("\\r?\\n");
for (String line : lines) {
- if (!line.startsWith("#") && !line.trim().isEmpty()) {
+ if (!line.startsWith("#") && !line.strip().isEmpty()) {
result++;
}
}
@@ -180,7 +180,7 @@ public class TestExtendedAccessLogValve extends
TomcatBaseTest {
List<String> dataLines = new ArrayList<>();
for (String line : lines) {
if (!line.startsWith("#")) { // Skip directives
- dataLines.add(line.trim());
+ dataLines.add(line.strip());
} else {
if (line.startsWith("#Fields: ")) {
Assert.assertEquals(line.substring("#Fields: ".length()),
logPattern);
diff --git a/test/org/apache/el/TesterFunctions.java
b/test/org/apache/el/TesterFunctions.java
index a00a7aa676..c41fcc8aba 100644
--- a/test/org/apache/el/TesterFunctions.java
+++ b/test/org/apache/el/TesterFunctions.java
@@ -22,7 +22,7 @@ import jakarta.el.FunctionMapper;
public class TesterFunctions {
public static String trim(String input) {
- return input.trim();
+ return input.strip();
}
public static String concat(String... inputs) {
diff --git a/test/org/apache/jasper/compiler/TestEncodingDetector.java
b/test/org/apache/jasper/compiler/TestEncodingDetector.java
index 6d4f07eef5..0bdd28fac7 100644
--- a/test/org/apache/jasper/compiler/TestEncodingDetector.java
+++ b/test/org/apache/jasper/compiler/TestEncodingDetector.java
@@ -83,7 +83,7 @@ public class TestEncodingDetector extends TomcatBaseTest {
if (expectedResponseCode == 200) {
// trim() to remove whitespace like new lines
- String bodyText = responseBody.toString().trim();
+ String bodyText = responseBody.toString().strip();
if (responseBodyOK.booleanValue()) {
Assert.assertEquals("OK", bodyText);
} else {
diff --git a/test/org/apache/jasper/compiler/TestJspUtil.java
b/test/org/apache/jasper/compiler/TestJspUtil.java
index 9516f0339e..f4269bf978 100644
--- a/test/org/apache/jasper/compiler/TestJspUtil.java
+++ b/test/org/apache/jasper/compiler/TestJspUtil.java
@@ -37,7 +37,7 @@ public class TestJspUtil extends TomcatBaseTest {
String[] lines = body.split("\n");
for (String line : lines) {
- line = line.trim();
+ line = line.strip();
if (line.startsWith("<p>")) {
line = line.substring(3, line.length() - 4);
String[] parts = line.split(":");
diff --git a/test/org/apache/juli/TestPerWebappJuliIntegration.java
b/test/org/apache/juli/TestPerWebappJuliIntegration.java
index a0ca1a30cd..4edc25bb6e 100644
--- a/test/org/apache/juli/TestPerWebappJuliIntegration.java
+++ b/test/org/apache/juli/TestPerWebappJuliIntegration.java
@@ -60,8 +60,8 @@ public class TestPerWebappJuliIntegration extends
TomcatBaseTest {
tomcat.start();
ByteChunk res = getUrl("http://localhost:" + getPort() + "/juli" +
APP_ID_A + "/log_level");
ByteChunk res2 = getUrl("http://localhost:" + getPort() + "/juli" +
APP_ID_B + "/log_level");
- Assert.assertEquals(Level.FINE.toString(), res.toString().trim());
- Assert.assertEquals(Level.INFO.toString(), res2.toString().trim());
+ Assert.assertEquals(Level.FINE.toString(), res.toString().strip());
+ Assert.assertEquals(Level.INFO.toString(), res2.toString().strip());
tomcat.stop();
}
@Test
diff --git a/test/org/apache/naming/TestEnvEntry.java
b/test/org/apache/naming/TestEnvEntry.java
index 045b1fd5b8..d4058e9524 100644
--- a/test/org/apache/naming/TestEnvEntry.java
+++ b/test/org/apache/naming/TestEnvEntry.java
@@ -106,7 +106,7 @@ public class TestEnvEntry extends TomcatBaseTest {
Assert.assertEquals(HttpServletResponse.SC_OK, rc);
// JSP has leading and trailing white-space
- String result = out.toString().trim();
+ String result = out.toString().strip();
Assert.assertEquals(expected, result);
}
@@ -130,7 +130,7 @@ public class TestEnvEntry extends TomcatBaseTest {
Assert.assertEquals(HttpServletResponse.SC_OK, rc);
// JSP has leading and trailing white-space
- String result = out.toString().trim();
+ String result = out.toString().strip();
Assert.assertEquals(expected, result);
}
}
diff --git a/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
b/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
index 88a6218b57..9102b65b85 100644
--- a/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
+++ b/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
@@ -250,7 +250,7 @@ public class TesterOpenSSL {
public static Set<String> getOpenSSLCiphersAsSet(String specification)
throws Exception {
- String[] ciphers = getOpenSSLCiphersAsExpression(specification,
true).trim().split(":");
+ String[] ciphers = getOpenSSLCiphersAsExpression(specification,
true).strip().split(":");
Set<String> result = new HashSet<>(Arrays.asList(ciphers));
return result;
}
@@ -390,7 +390,7 @@ public class TesterOpenSSL {
System.err.println(errorText);
}
- return stdout.getText().trim();
+ return stdout.getText().strip();
}
private static class InputStreamToText implements Runnable {
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 8d2b564a93..9c9a9fe8d9 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -108,6 +108,14 @@
issues do not "pop up" wrt. others).
-->
<section name="Tomcat 11.0.28 (markt)" rtext="in development">
+ <subsection name="General">
+ <changelog>
+ <scode>
+ Switch to using <code>String.strip()</code> rather than
+ <code>String.trim()</code> where appropriate. (markt)
+ </scode>
+ </changelog>
+ </subsection>
<subsection name="Catalina">
<changelog>
<fix>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]