This is an automated email from the ASF dual-hosted git repository.
remm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new 8773b42935 Localization for debug strings
8773b42935 is described below
commit 8773b429355d6ff5d05064774492d8a05aac118f
Author: remm <[email protected]>
AuthorDate: Mon Feb 12 11:19:54 2024 +0100
Localization for debug strings
Since debug is now more significant.
---
.../catalina/authenticator/AuthenticatorBase.java | 33 +++++++++---------
.../catalina/authenticator/FormAuthenticator.java | 40 +++++++++++-----------
.../catalina/authenticator/LocalStrings.properties | 12 +++++++
.../authenticator/NonLoginAuthenticator.java | 4 +--
.../catalina/authenticator/SSLAuthenticator.java | 8 ++---
.../apache/catalina/connector/CoyoteAdapter.java | 4 +--
java/org/apache/catalina/core/ContainerBase.java | 2 +-
.../apache/catalina/core/LocalStrings.properties | 6 ++++
.../catalina/core/NamingContextListener.java | 16 +++++----
.../core/ThreadLocalLeakPreventionListener.java | 4 ++-
.../catalina/filters/CsrfPreventionFilter.java | 40 ++++++++++------------
.../catalina/filters/LocalStrings.properties | 4 +++
.../catalina/ha/session/ClusterManagerBase.java | 4 ++-
.../catalina/ha/session/LocalStrings.properties | 2 ++
.../apache/catalina/ha/tcp/LocalStrings.properties | 3 ++
.../apache/catalina/ha/tcp/SimpleTcpCluster.java | 8 ++---
.../mbeans/GlobalResourcesLifecycleListener.java | 2 +-
.../apache/catalina/mbeans/LocalStrings.properties | 1 +
.../catalina/realm/JAASMemoryLoginModule.java | 2 +-
java/org/apache/catalina/realm/JNDIRealm.java | 8 ++---
.../apache/catalina/realm/LocalStrings.properties | 2 ++
java/org/apache/catalina/realm/RealmBase.java | 2 +-
java/org/apache/catalina/session/FileStore.java | 2 +-
.../catalina/session/LocalStrings.properties | 3 ++
java/org/apache/catalina/session/ManagerBase.java | 8 ++---
.../apache/catalina/session/StandardManager.java | 4 +--
java/org/apache/catalina/startup/Catalina.java | 8 ++---
.../org/apache/catalina/startup/ContextConfig.java | 7 ++--
.../startup/CopyParentClassLoaderRule.java | 4 +--
java/org/apache/catalina/startup/HostConfig.java | 4 +--
.../catalina/startup/LocalStrings.properties | 8 +++++
.../group/interceptors/LocalStrings.properties | 1 +
.../group/interceptors/TcpFailureDetector.java | 2 +-
.../group/interceptors/TcpPingInterceptor.java | 4 +--
.../tribes/membership/LocalStrings.properties | 6 ++++
.../tribes/membership/McastServiceImpl.java | 18 ++++++----
.../tribes/tipis/AbstractReplicatedMap.java | 12 +++----
.../catalina/tribes/tipis/LocalStrings.properties | 6 +++-
.../catalina/tribes/tipis/ReplicatedMap.java | 2 +-
.../tribes/transport/LocalStrings.properties | 1 +
.../catalina/tribes/transport/ReceiverBase.java | 2 +-
.../tribes/transport/nio/LocalStrings.properties | 3 ++
.../catalina/tribes/transport/nio/NioReceiver.java | 10 +++---
.../tribes/transport/nio/NioReplicationTask.java | 2 +-
.../tribes/transport/nio/ParallelNioSender.java | 2 +-
.../catalina/users/DataSourceUserDatabase.java | 6 ++--
.../apache/catalina/users/LocalStrings.properties | 1 +
.../apache/catalina/valves/ErrorReportValve.java | 2 +-
.../catalina/valves/ExtendedAccessLogValve.java | 4 +--
.../catalina/valves/JsonErrorReportValve.java | 2 +-
.../catalina/valves/LoadBalancerDrainingValve.java | 5 ++-
.../apache/catalina/valves/LocalStrings.properties | 7 ++++
.../catalina/valves/ProxyErrorReportValve.java | 2 +-
.../catalina/valves/StuckThreadDetectionValve.java | 2 +-
.../valves/rewrite/LocalStrings.properties | 2 ++
.../catalina/valves/rewrite/RewriteValve.java | 9 ++---
java/org/apache/coyote/AbstractProcessor.java | 2 +-
java/org/apache/coyote/LocalStrings.properties | 1 +
java/org/apache/coyote/ajp/AjpProcessor.java | 4 +--
java/org/apache/coyote/ajp/LocalStrings.properties | 2 ++
.../coyote/http11/filters/GzipOutputFilter.java | 4 ++-
.../coyote/http11/filters/LocalStrings.properties | 2 ++
java/org/apache/jasper/JspC.java | 11 +++---
java/org/apache/jasper/compiler/AntCompiler.java | 3 +-
java/org/apache/jasper/compiler/Compiler.java | 3 +-
java/org/apache/jasper/compiler/JDTCompiler.java | 3 +-
java/org/apache/jasper/compiler/JspReader.java | 2 +-
.../optimizations/ELInterpreterTagSetters.java | 19 +++++-----
.../jasper/resources/LocalStrings.properties | 9 +++++
.../apache/tomcat/util/buf/LocalStrings.properties | 3 ++
java/org/apache/tomcat/util/buf/StringCache.java | 6 ++--
java/org/apache/tomcat/util/digester/Digester.java | 2 +-
.../tomcat/util/digester/FactoryCreateRule.java | 8 ++---
.../tomcat/util/digester/LocalStrings.properties | 1 +
.../tomcat/util/http/LocalStrings.properties | 1 +
.../tomcat/util/http/Rfc6265CookieProcessor.java | 2 +-
.../tomcat/util/modeler/LocalStrings.properties | 3 ++
java/org/apache/tomcat/util/modeler/Registry.java | 7 ++--
.../net/openssl/panama/LocalStrings.properties | 1 +
.../util/net/openssl/panama/OpenSSLEngine.java | 2 +-
.../tomcat/util/threads/LocalStrings.properties | 2 ++
.../org/apache/tomcat/util/threads/TaskThread.java | 4 ++-
82 files changed, 286 insertions(+), 189 deletions(-)
diff --git a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
index b6604d4b9e..e52fa2f109 100644
--- a/java/org/apache/catalina/authenticator/AuthenticatorBase.java
+++ b/java/org/apache/catalina/authenticator/AuthenticatorBase.java
@@ -441,8 +441,8 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
@Override
public void invoke(Request request, Response response) throws IOException,
ServletException {
- if (log.isDebugEnabled()) {
- log.debug("Security checking request " + request.getMethod() + " "
+ request.getRequestURI());
+ if (log.isTraceEnabled()) {
+ log.trace("Security checking request " + request.getMethod() + " "
+ request.getRequestURI());
}
// Have we got a cached authenticated Principal to record?
@@ -453,8 +453,8 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
if (session != null) {
principal = session.getPrincipal();
if (principal != null) {
- if (log.isDebugEnabled()) {
- log.debug("We have cached auth type " +
session.getAuthType() + " for principal " +
+ if (log.isTraceEnabled()) {
+ log.trace("We have cached auth type " +
session.getAuthType() + " for principal " +
principal);
}
request.setAuthType(session.getAuthType());
@@ -476,8 +476,8 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
if (constraints == null && !context.getPreemptiveAuthentication() &&
!authRequired) {
- if (log.isDebugEnabled()) {
- log.debug("Not subject to any constraint");
+ if (log.isTraceEnabled()) {
+ log.trace("Not subject to any constraint");
}
getNext().invoke(request, response);
return;
@@ -503,7 +503,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
if (!realm.hasUserDataPermission(request, response, constraints)) {
if (log.isDebugEnabled()) {
- log.debug("Failed hasUserDataPermission() test");
+
log.debug(sm.getString("authenticator.userDataPermissionFail"));
}
/*
* ASSERT: Authenticator already set the appropriate HTTP
status code, so we do not have to do anything
@@ -542,7 +542,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
if ((authRequired || constraints != null) &&
allowCorsPreflightBypass(request)) {
if (log.isDebugEnabled()) {
- log.debug("CORS Preflight request bypassing authentication");
+ log.debug(sm.getString("authenticator.corsBypass"));
}
getNext().invoke(request, response);
return;
@@ -563,7 +563,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
if (jaspicProvider == null && !doAuthenticate(request, response) ||
jaspicProvider != null && !authenticateJaspic(request,
response, jaspicState, false)) {
if (log.isDebugEnabled()) {
- log.debug("Failed authenticate() test");
+
log.debug(sm.getString("authenticator.authenticationFail"));
}
/*
* ASSERT: Authenticator already set the appropriate HTTP
status code, so we do not have to do anything
@@ -580,7 +580,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
if (!realm.hasResourcePermission(request, response, constraints,
this.context)) {
if (log.isDebugEnabled()) {
- log.debug("Failed accessControl() test");
+ log.debug(sm.getString("authenticator.userPermissionFail",
request.getUserPrincipal().getName()));
}
/*
* ASSERT: AccessControl method has already set the
appropriate HTTP status code, so we do not have to
@@ -813,8 +813,8 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
if (authStatus == AuthStatus.SUCCESS) {
GenericPrincipal principal = getPrincipal(client);
- if (log.isDebugEnabled()) {
- log.debug("Authenticated user: " + principal);
+ if (log.isTraceEnabled()) {
+ log.trace("Authenticated user: " + principal);
}
if (principal == null) {
request.setUserPrincipal(null);
@@ -975,8 +975,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
associate(ssoId, request.getSessionInternal(true));
if (log.isDebugEnabled()) {
- log.debug("Reauthenticated cached principal '" +
request.getUserPrincipal().getName() +
- "' with auth type '" + request.getAuthType() + "'");
+ log.debug(sm.getString("authenticator.reauthentication",
request.getUserPrincipal().getName(), request.getAuthType()));
}
}
@@ -1018,7 +1017,7 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
if (log.isDebugEnabled()) {
String name = (principal == null) ? "none" : principal.getName();
- log.debug("Authenticated '" + name + "' with type '" + authType +
"'");
+ log.debug(sm.getString("authenticator.authentication", name,
authType));
}
// Cache the authentication information in our request
@@ -1221,9 +1220,9 @@ public abstract class AuthenticatorBase extends ValveBase
implements Authenticat
}
if (log.isDebugEnabled()) {
if (sso != null) {
- log.debug("Found SingleSignOn Valve at " + sso);
+ log.debug(sm.getString("authenticator.sso", sso));
} else {
- log.debug("No SingleSignOn Valve is present");
+ log.trace("No SingleSignOn Valve is present");
}
}
diff --git a/java/org/apache/catalina/authenticator/FormAuthenticator.java
b/java/org/apache/catalina/authenticator/FormAuthenticator.java
index f9cdc52618..661d51d936 100644
--- a/java/org/apache/catalina/authenticator/FormAuthenticator.java
+++ b/java/org/apache/catalina/authenticator/FormAuthenticator.java
@@ -163,14 +163,14 @@ public class FormAuthenticator extends AuthenticatorBase {
// Have we authenticated this user before but have caching disabled?
if (!cache) {
session = request.getSessionInternal(true);
- if (log.isDebugEnabled()) {
- log.debug("Checking for reauthenticate in session " + session);
+ if (log.isTraceEnabled()) {
+ log.trace("Checking for reauthenticate in session " + session);
}
String username = (String)
session.getNote(Constants.SESS_USERNAME_NOTE);
String password = (String)
session.getNote(Constants.SESS_PASSWORD_NOTE);
if (username != null && password != null) {
- if (log.isDebugEnabled()) {
- log.debug("Reauthenticating username '" + username + "'");
+ if (log.isTraceEnabled()) {
+ log.trace("Reauthenticating username '" + username + "'");
}
principal = context.getRealm().authenticate(username,
password);
if (principal != null) {
@@ -180,7 +180,7 @@ public class FormAuthenticator extends AuthenticatorBase {
}
}
if (log.isDebugEnabled()) {
- log.debug("Reauthentication failed, proceed normally");
+ log.debug(sm.getString("formAuthenticator.reauthFailed"));
}
}
}
@@ -189,17 +189,17 @@ public class FormAuthenticator extends AuthenticatorBase {
// authentication? If so, forward the *original* request instead.
if (matchRequest(request)) {
session = request.getSessionInternal(true);
- if (log.isDebugEnabled()) {
- log.debug("Restore request from session '" +
session.getIdInternal() + "'");
+ if (log.isTraceEnabled()) {
+ log.trace("Restore request from session '" +
session.getIdInternal() + "'");
}
if (restoreRequest(request, session)) {
- if (log.isDebugEnabled()) {
- log.debug("Proceed to restored request");
+ if (log.isTraceEnabled()) {
+ log.trace("Proceed to restored request");
}
return true;
} else {
if (log.isDebugEnabled()) {
- log.debug("Restore of original request failed");
+ log.debug(sm.getString("formAuthenticator.restoreFailed"));
}
response.sendError(HttpServletResponse.SC_BAD_REQUEST);
return false;
@@ -238,13 +238,13 @@ public class FormAuthenticator extends AuthenticatorBase {
}
session = request.getSessionInternal(true);
- if (log.isDebugEnabled()) {
- log.debug("Save request in session '" +
session.getIdInternal() + "'");
+ if (log.isTraceEnabled()) {
+ log.trace("Save request in session '" +
session.getIdInternal() + "'");
}
try {
saveRequest(request, session);
} catch (IOException ioe) {
- log.debug("Request body too big to save during
authentication");
+ log.debug(sm.getString("authenticator.requestBodyTooBig"));
response.sendError(HttpServletResponse.SC_FORBIDDEN,
sm.getString("authenticator.requestBodyTooBig"));
return false;
}
@@ -261,8 +261,8 @@ public class FormAuthenticator extends AuthenticatorBase {
}
String username = request.getParameter(Constants.FORM_USERNAME);
String password = request.getParameter(Constants.FORM_PASSWORD);
- if (log.isDebugEnabled()) {
- log.debug("Authenticating username '" + username + "'");
+ if (log.isTraceEnabled()) {
+ log.trace("Authenticating username '" + username + "'");
}
principal = realm.authenticate(username, password);
if (principal == null) {
@@ -270,8 +270,8 @@ public class FormAuthenticator extends AuthenticatorBase {
return false;
}
- if (log.isDebugEnabled()) {
- log.debug("Authentication of '" + username + "' was successful");
+ if (log.isTraceEnabled()) {
+ log.trace("Authentication of '" + username + "' was successful");
}
if (session == null) {
@@ -290,7 +290,7 @@ public class FormAuthenticator extends AuthenticatorBase {
}
if (session == null) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug("User took so long to log on the session
expired");
+
containerLog.debug(sm.getString("formAuthenticator.sessionExpired"));
}
if (landingPage == null) {
response.sendError(HttpServletResponse.SC_REQUEST_TIMEOUT,
@@ -314,8 +314,8 @@ public class FormAuthenticator extends AuthenticatorBase {
// Redirect the user to the original request URI (which will cause
// the original request to be restored)
requestURI = savedRequestURL(session);
- if (log.isDebugEnabled()) {
- log.debug("Redirecting to original '" + requestURI + "'");
+ if (log.isTraceEnabled()) {
+ log.trace("Redirecting to original '" + requestURI + "'");
}
if (requestURI == null) {
if (landingPage == null) {
diff --git a/java/org/apache/catalina/authenticator/LocalStrings.properties
b/java/org/apache/catalina/authenticator/LocalStrings.properties
index d66d2f2492..4909ee1967 100644
--- a/java/org/apache/catalina/authenticator/LocalStrings.properties
+++ b/java/org/apache/catalina/authenticator/LocalStrings.properties
@@ -13,12 +13,15 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+authenticator.authentication=Authenticated principal [{0}] with authentication
type [{1}]
+authenticator.authenticationFail=User authentication failure
authenticator.certificates=No client certificate chain in this request
authenticator.changeSessionId=Session ID changed on authentication from [{0}]
to [{1}]
authenticator.check.authorize=User name [{0}] obtained from the Connector and
trusted to be valid. Obtaining roles for this user from the Tomcat Realm.
authenticator.check.authorizeFail=Realm did not recognise user [{0}]. Creating
a Principal with that name and no roles.
authenticator.check.found=Already authenticated [{0}]
authenticator.check.sso=Not authenticated but SSO session ID [{0}] found.
Attempting re-authentication.
+authenticator.corsBypass=CORS Preflight request bypassing authentication
authenticator.formlogin=Invalid direct reference to form login page
authenticator.jaspicCleanSubjectFail=Failed to clean JASPIC subject
authenticator.jaspicSecureResponseFail=Failed to secure response during JASPIC
processing
@@ -27,10 +30,14 @@ authenticator.loginFail=Login failed
authenticator.manager=Exception initializing trust managers
authenticator.noAuthHeader=No authorization header sent by client
authenticator.notContext=Configuration error: Must be attached to a Context
+authenticator.reauthentication=Reauthenticated cached principal [{0}] with
authentication type [{1}]
authenticator.requestBodyTooBig=The request body was too large to be cached
during the authentication process
authenticator.sessionExpired=The time allowed for the login process has been
exceeded. If you wish to continue you must either click back twice and re-click
the link you requested or close and re-open your browser
+authenticator.sso=Found SSO [{0}]
authenticator.tomcatPrincipalLogoutFail=Logout with TomcatPrincipal instance
has failed
authenticator.unauthorized=Cannot authenticate with the provided credentials
+authenticator.userDataPermissionFail=User data does not comply with the
constraints of the resource
+authenticator.userPermissionFail=User [{0}] does not have authorization to
access the resource
basicAuthenticator.invalidAuthorization=Invalid Authorization: [{0}]
basicAuthenticator.invalidCharset=The only permitted values are null, the
empty string or UTF-8
@@ -47,6 +54,9 @@ formAuthenticator.forwardLogin=Forwarding request for [{0}]
made with method [{1
formAuthenticator.forwardLoginFail=Unexpected error forwarding to login page
formAuthenticator.noErrorPage=No error page was defined for FORM
authentication in context [{0}]
formAuthenticator.noLoginPage=No login page was defined for FORM
authentication in context [{0}]
+formAuthenticator.reauthFailed=Reauthentication failed, proceeding with
regular authentication
+formAuthenticator.restoreFailed=Restoring the original request failed
+formAuthenticator.sessionExpired=Client inactivity caused the session to
expire during authentication
formAuthenticator.sessionIdMismatch=Current session ID is [{0}] but FORM
authenticator was expecting [{1}]
singleSignOn.debug.associate=SSO associating application session [{1}] with
SSO session [{0}]
@@ -79,4 +89,6 @@ spnegoAuthenticator.serviceLoginFail=Unable to login as the
service principal
spnegoAuthenticator.ticketValidateFail=Failed to validate client supplied
ticket
sslAuthenticatorValve.http2=The context [{0}] in virtual host [{1}] is
configured to use CLIENT-CERT authentication and [{2}] is configured to support
HTTP/2. Use of CLIENT-CERT authentication is not compatible with the use of
HTTP/2.
+sslAuthenticatorValve.noCertificates=No certificates are included with this
request
+sslAuthenticatorValve.authFailed=Authentication with the provided certificates
failed
sslAuthenticatorValve.tls13=The context [{0}] in virtual host [{1}] is
configured to use CLIENT-CERT authentication and [{2}] is configured to support
TLS 1.3 using JSSE. Use of CLIENT-CERT authentication is not compatible with
the use of TLS 1.3 and JSSE.
diff --git a/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
b/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
index ac786a347c..2cf878f867 100644
--- a/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
+++ b/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
@@ -90,8 +90,8 @@ public final class NonLoginAuthenticator extends
AuthenticatorBase {
// to say the user is now authenticated because access to
// protected resources will only be allowed with a matching role.
// i.e. SC_FORBIDDEN (403 status) will be generated later.
- if (containerLog.isDebugEnabled()) {
- containerLog.debug("User authenticated without any roles");
+ if (containerLog.isTraceEnabled()) {
+ containerLog.trace("User authenticated without any roles");
}
return true;
}
diff --git a/java/org/apache/catalina/authenticator/SSLAuthenticator.java
b/java/org/apache/catalina/authenticator/SSLAuthenticator.java
index 5b1c51910c..b3df81c9ed 100644
--- a/java/org/apache/catalina/authenticator/SSLAuthenticator.java
+++ b/java/org/apache/catalina/authenticator/SSLAuthenticator.java
@@ -73,15 +73,15 @@ public class SSLAuthenticator extends AuthenticatorBase {
}
// Retrieve the certificate chain for this client
- if (containerLog.isDebugEnabled()) {
- containerLog.debug(" Looking up certificates");
+ if (containerLog.isTraceEnabled()) {
+ containerLog.trace(" Looking up certificates");
}
X509Certificate certs[] = getRequestCertificates(request);
if ((certs == null) || (certs.length < 1)) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug(" No certificates included with this
request");
+
containerLog.debug(sm.getString("sslAuthenticatorValve.noCertificates"));
}
response.sendError(HttpServletResponse.SC_UNAUTHORIZED,
sm.getString("authenticator.certificates"));
return false;
@@ -91,7 +91,7 @@ public class SSLAuthenticator extends AuthenticatorBase {
Principal principal = context.getRealm().authenticate(certs);
if (principal == null) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug(" Realm.authenticate() returned false");
+
containerLog.debug(sm.getString("sslAuthenticatorValve.authFailed"));
}
response.sendError(HttpServletResponse.SC_UNAUTHORIZED,
sm.getString("authenticator.unauthorized"));
return false;
diff --git a/java/org/apache/catalina/connector/CoyoteAdapter.java
b/java/org/apache/catalina/connector/CoyoteAdapter.java
index cb329b10f0..5149e7e0db 100644
--- a/java/org/apache/catalina/connector/CoyoteAdapter.java
+++ b/java/org/apache/catalina/connector/CoyoteAdapter.java
@@ -1017,8 +1017,8 @@ public class CoyoteAdapter implements Adapter {
request.setRequestedSessionId(scookie.getValue().toString());
request.setRequestedSessionCookie(true);
request.setRequestedSessionURL(false);
- if (log.isDebugEnabled()) {
- log.debug(" Requested cookie session id is " +
request.getRequestedSessionId());
+ if (log.isTraceEnabled()) {
+ log.trace(" Requested cookie session id is " +
request.getRequestedSessionId());
}
} else {
if (!request.isRequestedSessionIdValid()) {
diff --git a/java/org/apache/catalina/core/ContainerBase.java
b/java/org/apache/catalina/core/ContainerBase.java
index 0026a90c0e..4edd4edf9d 100644
--- a/java/org/apache/catalina/core/ContainerBase.java
+++ b/java/org/apache/catalina/core/ContainerBase.java
@@ -629,7 +629,7 @@ public abstract class ContainerBase extends
LifecycleMBeanBase implements Contai
@Override
public void addChild(Container child) {
if (log.isDebugEnabled()) {
- log.debug("Add child " + child + " " + this);
+ log.debug(sm.getString("containerBase.child.add", child, this));
}
synchronized (children) {
diff --git a/java/org/apache/catalina/core/LocalStrings.properties
b/java/org/apache/catalina/core/LocalStrings.properties
index 17892d6c61..8704f4b5b4 100644
--- a/java/org/apache/catalina/core/LocalStrings.properties
+++ b/java/org/apache/catalina/core/LocalStrings.properties
@@ -111,6 +111,7 @@ containerBase.backgroundProcess.cluster=Exception
processing cluster [{0}] backg
containerBase.backgroundProcess.error=Exception processing background thread
containerBase.backgroundProcess.realm=Exception processing realm [{0}]
background process
containerBase.backgroundProcess.valve=Exception processing valve [{0}]
background process
+containerBase.child.add=Add container child [{0}] to container [{1}]
containerBase.child.destroy=Error destroying child
containerBase.child.notUnique=Child name [{0}] is not unique
containerBase.child.start=Error starting child
@@ -151,6 +152,11 @@ listener.notServer=This listener must only be nested
within Server elements, but
naming.addEnvEntry=Adding environment entry [{0}]
naming.addResourceEnvRef=Adding resource env ref [{0}]
+naming.addResourceLink=Adding resource link [{0}]
+naming.addResourceRef=Adding resource reference [{0}] at [{1}]
+naming.addService=Adding service reference [{0}] at [{1}]
+naming.addSlash=Changing service URL to [/{0}]
+naming.bind=Bind naming context to container [{0}]
naming.bindFailed=Failed to bind object: [{0}]
naming.invalidEnvEntryType=Environment entry [{0}] has an invalid type
naming.invalidEnvEntryValue=Environment entry [{0}] has an invalid value
diff --git a/java/org/apache/catalina/core/NamingContextListener.java
b/java/org/apache/catalina/core/NamingContextListener.java
index a81ff0a04c..95c69ea23b 100644
--- a/java/org/apache/catalina/core/NamingContextListener.java
+++ b/java/org/apache/catalina/core/NamingContextListener.java
@@ -228,7 +228,7 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
ContextAccessController.setSecurityToken(container, token);
ContextBindings.bindContext(container, namingContext, token);
if (log.isDebugEnabled()) {
- log.debug("Bound " + container);
+ log.debug(sm.getString("naming.bind", container));
}
// Configure write when read-only behaviour
@@ -825,7 +825,9 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
if (wsdlURL == null) {
try {
wsdlURL = ((Context)
container).getServletContext().getResource("/" + service.getWsdlfile());
- log.debug(" Changing service ref wsdl file for /" +
service.getWsdlfile());
+ if (log.isDebugEnabled()) {
+ log.debug(sm.getString("naming.addSlash",
service.getWsdlfile()));
+ }
} catch (MalformedURLException e) {
log.error(sm.getString("naming.wsdlFailed", e));
}
@@ -858,7 +860,9 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
try {
jaxrpcURL = ((Context) container).getServletContext()
.getResource("/" +
service.getJaxrpcmappingfile());
- log.debug(" Changing service ref jaxrpc file for /" +
service.getJaxrpcmappingfile());
+ if (log.isDebugEnabled()) {
+ log.debug(sm.getString("naming.addSlash",
service.getJaxrpcmappingfile()));
+ }
} catch (MalformedURLException e) {
log.error(sm.getString("naming.wsdlFailed", e));
}
@@ -916,7 +920,7 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
try {
if (log.isDebugEnabled()) {
- log.debug(" Adding service ref " + service.getName() + " " +
ref);
+ log.debug(sm.getString("naming.addService", ref,
service.getName()));
}
createSubcontexts(envCtx, service.getName());
envCtx.bind(service.getName(), ref);
@@ -951,7 +955,7 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
try {
if (log.isDebugEnabled()) {
- log.debug(" Adding resource ref " + resource.getName() + " "
+ ref);
+ log.debug(sm.getString("naming.addResourceRef", ref,
resource.getName()));
}
createSubcontexts(envCtx, resource.getName());
envCtx.bind(resource.getName(), ref);
@@ -1035,7 +1039,7 @@ public class NamingContextListener implements
LifecycleListener, PropertyChangeL
javax.naming.Context ctx =
"UserTransaction".equals(resourceLink.getName()) ? compCtx : envCtx;
try {
if (log.isDebugEnabled()) {
- log.debug(" Adding resource link " + resourceLink.getName());
+ log.debug(sm.getString("naming.addResourceLink",
resourceLink.getName()));
}
createSubcontexts(envCtx, resourceLink.getName());
ctx.bind(resourceLink.getName(), ref);
diff --git
a/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
b/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
index 77da9f4b9d..0389c3ae02 100644
--- a/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
+++ b/java/org/apache/catalina/core/ThreadLocalLeakPreventionListener.java
@@ -101,7 +101,9 @@ public class ThreadLocalLeakPreventionListener extends
FrameworkListener {
if (!(context instanceof StandardContext) ||
!((StandardContext)
context).getRenewThreadsWhenStoppingContext()) {
- log.debug("Not renewing threads when the context is stopping. " +
"It is not configured to do it.");
+ if (log.isTraceEnabled()) {
+ log.trace("Not renewing threads when the context is stopping.
It is not configured to do it.");
+ }
return;
}
diff --git a/java/org/apache/catalina/filters/CsrfPreventionFilter.java
b/java/org/apache/catalina/filters/CsrfPreventionFilter.java
index 9d4639c2bf..8a172702dc 100644
--- a/java/org/apache/catalina/filters/CsrfPreventionFilter.java
+++ b/java/org/apache/catalina/filters/CsrfPreventionFilter.java
@@ -354,17 +354,16 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
if (previousNonce == null) {
if (enforce(req, requestedPath)) {
if (log.isDebugEnabled()) {
- log.debug("Rejecting request for " +
getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) +
- " with no CSRF nonce found in request");
+
log.debug(sm.getString("csrfPrevention.rejectNoNonce", getRequestedPath(req),
+ (null == session ? "(null)" :
session.getId())));
}
res.sendError(getDenyStatus());
return;
} else {
- if (log.isDebugEnabled()) {
- log.debug("Would have rejected request for " +
getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) +
+ if (log.isTraceEnabled()) {
+ log.trace("Would have rejected request for " +
getRequestedPath(req) + ", session " +
+ (null == session ? "(null)" :
session.getId()) +
" with no CSRF nonce found in request");
}
}
@@ -373,32 +372,31 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
if (nonceCache == null) {
if (enforce(req, requestedPath)) {
if (log.isDebugEnabled()) {
- log.debug("Rejecting request for " +
getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) + " due to empty / missing nonce cache");
+
log.debug(sm.getString("csrfPrevention.rejectNoCache", getRequestedPath(req),
+ (null == session ? "(null)" :
session.getId())));
}
res.sendError(getDenyStatus());
return;
} else {
- if (log.isDebugEnabled()) {
- log.debug("Would have rejecting request for "
+ getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) + " due to empty / missing nonce cache");
+ if (log.isTraceEnabled()) {
+ log.trace("Would have rejecting request for "
+ getRequestedPath(req) + ", session " +
+ (null == session ? "(null)" :
session.getId()) + " due to empty / missing nonce cache");
}
}
} else if (!nonceCache.contains(previousNonce)) {
if (enforce(req, requestedPath)) {
if (log.isDebugEnabled()) {
- log.debug("Rejecting request for " +
getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) + " due to invalid nonce " +
- previousNonce);
+
log.debug(sm.getString("csrfPrevention.rejectInvalidNonce",
getRequestedPath(req),
+ (null == session ? "(null)" :
session.getId()), previousNonce));
}
res.sendError(getDenyStatus());
return;
} else {
- if (log.isDebugEnabled()) {
- log.debug("Would have rejecting request for "
+ getRequestedPath(req) + ", session " +
- (null == session ? "(none)" :
session.getId()) + " due to invalid nonce " +
+ if (log.isTraceEnabled()) {
+ log.trace("Would have rejecting request for "
+ getRequestedPath(req) + ", session " +
+ (null == session ? "(null)" :
session.getId()) + " due to invalid nonce " +
previousNonce);
}
}
@@ -418,13 +416,13 @@ public class CsrfPreventionFilter extends
CsrfPreventionFilterBase {
}
if (nonceCache == null) {
if (log.isDebugEnabled()) {
- log.debug("Creating new CSRF nonce cache with size=" +
nonceCacheSize + " for session " +
- (null == session ? "(will create)" :
session.getId()));
+ log.debug(sm.getString("csrfPrevention.createCache",
Integer.valueOf(nonceCacheSize),
+ (null == session ? "(null)" :
session.getId())));
}
if (session == null) {
- if (log.isDebugEnabled()) {
- log.debug("Creating new session to store CSRF
nonce cache");
+ if (log.isTraceEnabled()) {
+ log.trace("Creating new session to store CSRF
nonce cache");
}
session = req.getSession(true);
diff --git a/java/org/apache/catalina/filters/LocalStrings.properties
b/java/org/apache/catalina/filters/LocalStrings.properties
index 5c5da1559e..be56650ae2 100644
--- a/java/org/apache/catalina/filters/LocalStrings.properties
+++ b/java/org/apache/catalina/filters/LocalStrings.properties
@@ -23,7 +23,11 @@ corsFilter.onlyHttp=CORS doesn't support non-HTTP request or
response
corsFilter.wrongType1=Expects an HttpServletRequest object of type [{0}]
corsFilter.wrongType2=Expects an HttpServletRequest object of type [{0}] or
[{1}]
+csrfPrevention.createCache=Creating new CSRF nonce cache with size [{0}] for
session [{1}] (it will be created if null)
csrfPrevention.invalidRandomClass=Unable to create Random source using class
[{0}]
+csrfPrevention.rejectInvalidNonce=Rejecting request for [{0}] with session
[{1}] due to invalid nonce [{2}]
+csrfPrevention.rejectNoCache=Rejecting request for [{0}] with session [{1}]
due to empty or missing nonce cache
+csrfPrevention.rejectNoNonce=Rejecting request for [{0}] with session [{1}]
because no CSRF nonce was found
csrfPrevention.unsupportedPattern=Unsupported pattern [{0}]
expiresFilter.exceptionProcessingParameter=Exception processing configuration
parameter [{0}]:[{1}]
diff --git a/java/org/apache/catalina/ha/session/ClusterManagerBase.java
b/java/org/apache/catalina/ha/session/ClusterManagerBase.java
index 4169f81c7e..b642178f4b 100644
--- a/java/org/apache/catalina/ha/session/ClusterManagerBase.java
+++ b/java/org/apache/catalina/ha/session/ClusterManagerBase.java
@@ -33,9 +33,11 @@ import org.apache.catalina.tribes.io.ReplicationStream;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.apache.tomcat.util.collections.SynchronizedStack;
+import org.apache.tomcat.util.res.StringManager;
public abstract class ClusterManagerBase extends ManagerBase implements
ClusterManager {
+ protected static final StringManager sm =
StringManager.getManager(ClusterManagerBase.class);
private final Log log = LogFactory.getLog(ClusterManagerBase.class); //
must not be static
/**
@@ -191,7 +193,7 @@ public abstract class ClusterManagerBase extends
ManagerBase implements ClusterM
} // for
if (replicationValve == null && log.isDebugEnabled()) {
- log.debug("no ReplicationValve found for CrossContext
Support");
+ log.debug(sm.getString("clusterManager.noValve"));
} // endif
} // end if
} // endif
diff --git a/java/org/apache/catalina/ha/session/LocalStrings.properties
b/java/org/apache/catalina/ha/session/LocalStrings.properties
index d894dd3c64..0b6a7b39fb 100644
--- a/java/org/apache/catalina/ha/session/LocalStrings.properties
+++ b/java/org/apache/catalina/ha/session/LocalStrings.properties
@@ -18,6 +18,8 @@ backupManager.startFailed=Failed to start BackupManager: [{0}]
backupManager.startUnable=Unable to start BackupManager: [{0}]
backupManager.stopped=Manager [{0}] is stopping
+clusterManager.noValve=No ReplicationValve found for cross context support
+
clusterSessionListener.noManager=Context manager doesn''t exist:[{0}]
deltaManager.createMessage.access=Manager [{0}]: create session access message
for session [{1}]
diff --git a/java/org/apache/catalina/ha/tcp/LocalStrings.properties
b/java/org/apache/catalina/ha/tcp/LocalStrings.properties
index 2214450e08..e8525482bb 100644
--- a/java/org/apache/catalina/ha/tcp/LocalStrings.properties
+++ b/java/org/apache/catalina/ha/tcp/LocalStrings.properties
@@ -31,10 +31,13 @@ ReplicationValve.stats=Average request time=[{0}] ms with
cluster overhead time=
simpleTcpCluster.clustermanager.cloneFailed=Unable to clone cluster manager,
defaulting to org.apache.catalina.ha.session.DeltaManager
simpleTcpCluster.clustermanager.notImplement=Manager [{0}] does not implement
ClusterManager, addition to cluster has been aborted.
+simpleTcpCluster.createManager=Creating ClusterManager for context [{0}] using
class [{1}]
simpleTcpCluster.member.addFailed=Unable to connect to replication system.
simpleTcpCluster.member.added=Replication member added:[{0}]
simpleTcpCluster.member.disappeared=Received member disappeared:[{0}]
simpleTcpCluster.member.removeFailed=Unable remove cluster node from
replication system.
+simpleTcpCluster.noListener=Message [{0}] from type [{1}] transferred but no
listener registered
+simpleTcpCluster.noMembers=No members in cluster, ignoring message [{0}]
simpleTcpCluster.sendFailed=Unable to send message through cluster sender.
simpleTcpCluster.start=Cluster is about to start
simpleTcpCluster.startUnable=Unable to start cluster.
diff --git a/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
b/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
index 01774e46c0..c0d3cad81c 100644
--- a/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
+++ b/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
@@ -412,8 +412,7 @@ public class SimpleTcpCluster extends LifecycleMBeanBase
@Override
public synchronized Manager createManager(String name) {
if (log.isDebugEnabled()) {
- log.debug("Creating ClusterManager for context " + name + " using
class " +
- getManagerTemplate().getClass().getName());
+ log.debug(sm.getString("simpleTcpCluster.createManager", name,
getManagerTemplate().getClass().getName()));
}
ClusterManager manager = null;
try {
@@ -716,7 +715,7 @@ public class SimpleTcpCluster extends LifecycleMBeanBase
if (destmembers.length > 0) {
channel.send(destmembers, msg, sendOptions);
} else if (log.isDebugEnabled()) {
- log.debug("No members in cluster, ignoring message:" +
msg);
+ log.debug(sm.getString("simpleTcpCluster.noMembers", msg));
}
}
} catch (Exception x) {
@@ -815,8 +814,7 @@ public class SimpleTcpCluster extends LifecycleMBeanBase
// Notify our interested LifecycleListeners
fireLifecycleEvent(RECEIVE_MESSAGE_FAILURE_EVENT, new
SendMessageData(message, dest, null));
if (log.isDebugEnabled()) {
- log.debug("Message " + message.toString() + " from type "
+ message.getClass().getName() +
- " transferred but no listener registered");
+ log.debug(sm.getString("simpleTcpCluster.noListener",
message, message.getClass().getName()));
}
}
}
diff --git
a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
index feba89cf8e..94f0bf3255 100644
--- a/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
+++ b/java/org/apache/catalina/mbeans/GlobalResourcesLifecycleListener.java
@@ -121,7 +121,7 @@ public class GlobalResourcesLifecycleListener implements
LifecycleListener {
protected void createMBeans(String prefix, Context context) throws
NamingException {
if (log.isDebugEnabled()) {
- log.debug("Creating MBeans for Global JNDI Resources in Context '"
+ prefix + "'");
+ log.debug(sm.getString("globalResources.create", prefix));
}
try {
diff --git a/java/org/apache/catalina/mbeans/LocalStrings.properties
b/java/org/apache/catalina/mbeans/LocalStrings.properties
index 2d996c6f2c..138b3a36d1 100644
--- a/java/org/apache/catalina/mbeans/LocalStrings.properties
+++ b/java/org/apache/catalina/mbeans/LocalStrings.properties
@@ -13,6 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+globalResources.create=Creating MBeans for Global JNDI Resources in Context
[{0}]
globalResources.createError=Exception processing global JNDI Resources
globalResources.createError.operation=Operation not supported error creating
MBeans
globalResources.createError.runtime=Unexpected error creating MBeans
diff --git a/java/org/apache/catalina/realm/JAASMemoryLoginModule.java
b/java/org/apache/catalina/realm/JAASMemoryLoginModule.java
index 1cd386a420..6500f9754a 100644
--- a/java/org/apache/catalina/realm/JAASMemoryLoginModule.java
+++ b/java/org/apache/catalina/realm/JAASMemoryLoginModule.java
@@ -293,7 +293,7 @@ public class JAASMemoryLoginModule extends MemoryRealm
implements LoginModule {
}
if (log.isDebugEnabled()) {
- log.debug("login " + username + " " + principal);
+ log.debug(sm.getString("jaasMemoryLoginModule.login", username,
principal));
}
// Report results based on success or failure
diff --git a/java/org/apache/catalina/realm/JNDIRealm.java
b/java/org/apache/catalina/realm/JNDIRealm.java
index da92dffff2..c4da4e27cd 100644
--- a/java/org/apache/catalina/realm/JNDIRealm.java
+++ b/java/org/apache/catalina/realm/JNDIRealm.java
@@ -1201,8 +1201,8 @@ public class JNDIRealm extends RealmBase {
closePooledConnections();
// Return "not authenticated" for this request
- if (containerLog.isDebugEnabled()) {
- containerLog.debug("Returning null principal.");
+ if (containerLog.isTraceEnabled()) {
+ containerLog.trace("Returning null principal.");
}
return null;
} finally {
@@ -1229,8 +1229,8 @@ public class JNDIRealm extends RealmBase {
throws NamingException {
if (username == null || username.equals("") || credentials == null ||
credentials.equals("")) {
- if (containerLog.isDebugEnabled()) {
- containerLog.debug("username null or empty: returning null
principal.");
+ if (containerLog.isTraceEnabled()) {
+ containerLog.trace("username null or empty: returning null
principal.");
}
return null;
}
diff --git a/java/org/apache/catalina/realm/LocalStrings.properties
b/java/org/apache/catalina/realm/LocalStrings.properties
index bf4ab48fd0..c72c39ac2d 100644
--- a/java/org/apache/catalina/realm/LocalStrings.properties
+++ b/java/org/apache/catalina/realm/LocalStrings.properties
@@ -38,6 +38,7 @@ jaasCallback.username=Returned username [{0}]
jaasMemoryLoginModule.callbackHandlerError=Error invoking callback handler:
[{0}]
jaasMemoryLoginModule.invalidCredentials=User name or password is incorrect
+jaasMemoryLoginModule.login=Login for user [{0}] as principal [{1}]
jaasMemoryLoginModule.noCallbackHandler=No CallbackHandler specified
jaasMemoryLoginModule.noCatalinaBase=Unable to determine Catalina base to load
file [{0}]
jaasMemoryLoginModule.noConfig=Cannot load configuration file [{0}]
@@ -110,6 +111,7 @@ realmBase.hasRoleFailure=Username [{0}] does NOT have role
[{1}]
realmBase.hasRoleSuccess=Username [{0}] has role [{1}]
realmBase.invalidDigestEncoding=Invalid digest encoding [{0}]
realmBase.unknownAllRolesMode=Unknown mode [{0}], must be one of: strict,
authOnly, strictAuthOnly
+realmBase.validity=Error checking certificate validity
userDatabaseRealm.lookup=Exception looking up UserDatabase under key [{0}]
userDatabaseRealm.noDatabase=No UserDatabase component found under key [{0}]
diff --git a/java/org/apache/catalina/realm/RealmBase.java
b/java/org/apache/catalina/realm/RealmBase.java
index ce8f398698..c51726851c 100644
--- a/java/org/apache/catalina/realm/RealmBase.java
+++ b/java/org/apache/catalina/realm/RealmBase.java
@@ -443,7 +443,7 @@ public abstract class RealmBase extends LifecycleMBeanBase
implements Realm {
cert.checkValidity();
} catch (Exception e) {
if (log.isDebugEnabled()) {
- log.debug(" Validity exception", e);
+ log.debug(sm.getString("realmBase.validity"), e);
}
return null;
}
diff --git a/java/org/apache/catalina/session/FileStore.java
b/java/org/apache/catalina/session/FileStore.java
index dd43845339..0af263fee1 100644
--- a/java/org/apache/catalina/session/FileStore.java
+++ b/java/org/apache/catalina/session/FileStore.java
@@ -232,7 +232,7 @@ public final class FileStore extends StoreBase {
return session;
} catch (FileNotFoundException e) {
if (contextLog.isDebugEnabled()) {
- contextLog.debug("No persisted data file found");
+ contextLog.debug(sm.getString("fileStore.noFile", id,
file.getAbsolutePath()));
}
return null;
} finally {
diff --git a/java/org/apache/catalina/session/LocalStrings.properties
b/java/org/apache/catalina/session/LocalStrings.properties
index f2844effd1..0d2c42405f 100644
--- a/java/org/apache/catalina/session/LocalStrings.properties
+++ b/java/org/apache/catalina/session/LocalStrings.properties
@@ -31,6 +31,7 @@ fileStore.deleteFailed=Unable to delete file [{0}] which is
preventing the creat
fileStore.deleteSessionFailed=Unable to delete file [{0}] which is no longer
required
fileStore.invalid=Invalid persistence file [{0}] for session ID [{1}]
fileStore.loading=Loading Session [{0}] from file [{1}]
+fileStore.noFile=Persistence file [{1}] for session ID [{0}] was not found
fileStore.removing=Removing Session [{0}] at file [{1}]
fileStore.saving=Saving Session [{0}] to file [{1}]
@@ -64,10 +65,12 @@ persistentManager.tooManyActive=Too many active sessions,
[{0}], looking for idl
persistentManager.unloading=Saving [{0}] persisted sessions
standardManager.deletePersistedFileFail=Unable to delete [{0}] after reading
the persisted sessions. The continued presence of this file may cause future
attempts to persist sessions to fail.
+standardManager.expiringSessions=Expiring [{0}] persisted sessions
standardManager.loading=Loading persisted sessions from [{0}]
standardManager.loading.exception=Exception while loading persisted sessions
standardManager.managerLoad=Exception loading sessions from persistent storage
standardManager.managerUnload=Exception unloading sessions to persistent
storage
+standardManager.noFile=Persisted data file [{0}] was not found
standardManager.unloading=Saving persisted sessions to [{0}]
standardManager.unloading.debug=Unloading persisted sessions
standardManager.unloading.nosessions=No persisted sessions to unload
diff --git a/java/org/apache/catalina/session/ManagerBase.java
b/java/org/apache/catalina/session/ManagerBase.java
index 55776d3c41..a0e0d716a4 100644
--- a/java/org/apache/catalina/session/ManagerBase.java
+++ b/java/org/apache/catalina/session/ManagerBase.java
@@ -635,12 +635,12 @@ public abstract class ManagerBase extends
LifecycleMBeanBase implements Manager
((Lifecycle) sessionIdGenerator).start();
} else {
// Force initialization of the random number generator
- if (log.isDebugEnabled()) {
- log.debug("Force random number initialization starting");
+ if (log.isTraceEnabled()) {
+ log.trace("Force random number initialization starting");
}
sessionIdGenerator.generateSessionId();
- if (log.isDebugEnabled()) {
- log.debug("Force random number initialization completed");
+ if (log.isTraceEnabled()) {
+ log.trace("Force random number initialization completed");
}
}
}
diff --git a/java/org/apache/catalina/session/StandardManager.java
b/java/org/apache/catalina/session/StandardManager.java
index 01f894151e..a72c2ac8a0 100644
--- a/java/org/apache/catalina/session/StandardManager.java
+++ b/java/org/apache/catalina/session/StandardManager.java
@@ -168,7 +168,7 @@ public class StandardManager extends ManagerBase {
}
} catch (FileNotFoundException e) {
if (log.isDebugEnabled()) {
- log.debug("No persisted data file found");
+ log.debug(sm.getString("standardManager.noFile",
file.getAbsolutePath()));
}
return;
}
@@ -223,7 +223,7 @@ public class StandardManager extends ManagerBase {
// Expire all the sessions we just wrote
if (log.isDebugEnabled()) {
- log.debug("Expiring " + list.size() + " persisted sessions");
+ log.debug(sm.getString("standardManager.expiringSessions",
list.size()));
}
for (StandardSession session : list) {
try {
diff --git a/java/org/apache/catalina/startup/Catalina.java
b/java/org/apache/catalina/startup/Catalina.java
index 0b08c8a67b..49b8b51003 100644
--- a/java/org/apache/catalina/startup/Catalina.java
+++ b/java/org/apache/catalina/startup/Catalina.java
@@ -758,7 +758,7 @@ public class Catalina {
try {
getServer().destroy();
} catch (LifecycleException e1) {
- log.debug("destroy() failed for failed Server ", e1);
+ log.debug(sm.getString("catalina.destroyFail"), e1);
}
return;
}
@@ -878,14 +878,14 @@ public class Catalina {
}
System.setProperty(javax.naming.Context.URL_PKG_PREFIXES, value);
if (log.isDebugEnabled()) {
- log.debug("Setting naming prefix=" + value);
+ log.debug(sm.getString("catalina.namingPrefix", value));
}
value =
System.getProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY);
if (value == null) {
System.setProperty(javax.naming.Context.INITIAL_CONTEXT_FACTORY,
"org.apache.naming.java.javaURLContextFactory");
} else {
- log.debug("INITIAL_CONTEXT_FACTORY already set " + value);
+ log.debug(sm.getString("catalina.initialContextFactory",
value));
}
}
}
@@ -911,7 +911,7 @@ public class Catalina {
writer.write(code.toString());
} catch (IOException e) {
// Should not happen
- log.debug("Error writing code loader", e);
+ log.debug(sm.getString("catalina.loaderWriteFail"), e);
}
}
diff --git a/java/org/apache/catalina/startup/ContextConfig.java
b/java/org/apache/catalina/startup/ContextConfig.java
index 9886bd8262..f70828d57c 100644
--- a/java/org/apache/catalina/startup/ContextConfig.java
+++ b/java/org/apache/catalina/startup/ContextConfig.java
@@ -689,7 +689,7 @@ public class ContextConfig implements LifecycleListener {
protected void processContextConfig(Digester digester, URL contextXml,
InputStream stream) {
if (log.isDebugEnabled()) {
- log.debug("Processing context [" + context.getName() + "]
configuration file [" + contextXml + "]");
+ log.debug(sm.getString("contextConfig.processContext",
context.getName(), contextXml));
}
InputSource source = null;
@@ -894,8 +894,7 @@ public class ContextConfig implements LifecycleListener {
antiLockingDocBase = antiLockingDocBase.getAbsoluteFile();
if (log.isDebugEnabled()) {
- log.debug("Anti locking context[" + context.getName() + "]
setting docBase to " +
- antiLockingDocBase.getPath());
+ log.debug(sm.getString("contextConfig.antiLocking",
context.getName(), antiLockingDocBase.getPath()));
}
// Cleanup just in case an old deployment is lying around
@@ -1541,7 +1540,7 @@ public class ContextConfig implements LifecycleListener {
} else {
if (log.isDebugEnabled()) {
for (String urlPattern :
jspPropertyGroup.getUrlPatterns()) {
- log.debug("Skipping " + urlPattern + " , no servlet "
+ jspServletName);
+ log.debug(sm.getString("contextConfig.noJsp",
urlPattern, jspServletName));
}
}
}
diff --git a/java/org/apache/catalina/startup/CopyParentClassLoaderRule.java
b/java/org/apache/catalina/startup/CopyParentClassLoaderRule.java
index e271113fbf..c6640d4d2b 100644
--- a/java/org/apache/catalina/startup/CopyParentClassLoaderRule.java
+++ b/java/org/apache/catalina/startup/CopyParentClassLoaderRule.java
@@ -56,8 +56,8 @@ public class CopyParentClassLoaderRule extends Rule {
@Override
public void begin(String namespace, String name, Attributes attributes)
throws Exception {
- if (digester.getLogger().isDebugEnabled()) {
- digester.getLogger().debug("Copying parent class loader");
+ if (digester.getLogger().isTraceEnabled()) {
+ digester.getLogger().trace("Copying parent class loader");
}
Container child = (Container) digester.peek(0);
Object parent = digester.peek(1);
diff --git a/java/org/apache/catalina/startup/HostConfig.java
b/java/org/apache/catalina/startup/HostConfig.java
index 443f03dbaa..54383de7aa 100644
--- a/java/org/apache/catalina/startup/HostConfig.java
+++ b/java/org/apache/catalina/startup/HostConfig.java
@@ -1467,7 +1467,7 @@ public class HostConfig implements LifecycleListener {
// host's configBase
if (isDeletableResource(app, current)) {
if (log.isDebugEnabled()) {
- log.debug("Delete " + current);
+ log.debug(sm.getString("hostConfig.delete", current));
}
ExpandWar.delete(current);
}
@@ -1486,7 +1486,7 @@ public class HostConfig implements LifecycleListener {
// configBase
if (isDeletableResource(app, current)) {
if (log.isDebugEnabled()) {
- log.debug("Delete " + current);
+ log.debug(sm.getString("hostConfig.delete", current));
}
ExpandWar.delete(current);
}
diff --git a/java/org/apache/catalina/startup/LocalStrings.properties
b/java/org/apache/catalina/startup/LocalStrings.properties
index 5abd648a71..d6144f9a69 100644
--- a/java/org/apache/catalina/startup/LocalStrings.properties
+++ b/java/org/apache/catalina/startup/LocalStrings.properties
@@ -14,10 +14,14 @@
# limitations under the License.
catalina.configFail=Unable to load server configuration from [{0}]
+catalina.destroyFail=Error destroying failed server
catalina.generatedCodeLocationError=Error using configured location for
generated Tomcat embedded code [{0}]
catalina.incorrectPermissions=Permissions incorrect, read permission is not
allowed on the file
catalina.init=Server initialization in [{0}] milliseconds
catalina.initError=Error initializing Catalina
+catalina.initialContextFactory=The system property INITIAL_CONTEXT_FACTORY is
already set to [{0}]
+catalina.loaderWriteFail=Error writing code loader
+catalina.namingPrefix=Set naming prefix [{0}]
catalina.noCluster=Cluster RuleSet not found due to [{0}]. Cluster
configuration disabled.
catalina.noLoader=Configuration code loader [{0}] was not found, generated
code will not be used
catalina.noNaming=Naming environment is disabled
@@ -37,6 +41,7 @@ connector.noSetSSLImplementationName=Connector [{0}] does not
support changing t
contextConfig.altDDNotFound=alt-dd file [{0}] not found
contextConfig.annotationsStackOverflow=Unable to complete the scan for
annotations for web application [{0}] due to a StackOverflowError. Possible
root causes include a too low setting for -Xss and illegal cyclic inheritance
dependencies. The class hierarchy being processed was [{1}]
+contextConfig.antiLocking=Anti locking for context [{0}] setting docBase to
[{1}]
contextConfig.applicationMissing=Missing application web.xml, using defaults
only
contextConfig.applicationParse=Parse error in application web.xml file at [{0}]
contextConfig.applicationPosition=Occurred at line [{0}] column [{1}]
@@ -69,10 +74,12 @@ contextConfig.jspFile.error=JSP file [{0}] must start with
a ''/''
contextConfig.jspFile.warning=WARNING: JSP file [{0}] must start with a ''/''
in Servlet 2.4
contextConfig.missingRealm=No Realm has been configured to authenticate against
contextConfig.noAntiLocking=The value [{0}] configured for java.io.tmpdir does
not point to a valid directory. The antiResourceLocking setting for the web
application [{1}] will be ignored.
+contextConfig.noJsp=Skipping JSP property group for URL [{0}], no JSP Servlet
found for name [{1}]
contextConfig.processAnnotationsDir.debug=Scanning directory for class files
with annotations [{0}]
contextConfig.processAnnotationsInParallelFailure=Parallel execution failed
contextConfig.processAnnotationsJar.debug=Scanning jar file for class files
with annotations [{0}]
contextConfig.processAnnotationsWebDir.debug=Scanning web application
directory for class files with annotations [{0}]
+contextConfig.processContext=Processing context [{0}] with configuration [{1}]
contextConfig.resourceJarFail=Failed to process JAR found at URL [{0}] for
static resources to be included in context with name [{1}]
contextConfig.role.auth=Security role name [{0}] used in an <auth-constraint>
without being defined in a <security-role>
contextConfig.role.link=Security role name [{0}] used in a <role-link> without
being defined in a <security-role>
@@ -109,6 +116,7 @@ hostConfig.cce=Lifecycle event data object [{0}] is not a
Host
hostConfig.context.remove=Error while removing context [{0}]
hostConfig.context.restart=Error during context [{0}] restart
hostConfig.createDirs=Unable to create directory for deployment: [{0}]
+hostConfig.delete=Delete resource [{0}] during application reload
hostConfig.deploy.error=Exception while deploying web application directory
[{0}]
hostConfig.deployDescriptor=Deploying deployment descriptor [{0}]
hostConfig.deployDescriptor.blocked=The web application with context path
[{0}] was not deployed because it contained a deployment descriptor [{1}] which
may include configuration necessary for the secure deployment of the
application but processing of deployment descriptors is prevented by the
deployXML setting of this host. An appropriate descriptor should be created at
[{2}] to deploy this application.
diff --git
a/java/org/apache/catalina/tribes/group/interceptors/LocalStrings.properties
b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings.properties
index c3270357ac..6564e4f0ce 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/LocalStrings.properties
+++ b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings.properties
@@ -80,6 +80,7 @@ tcpFailureDetector.heartbeat.failed=Unable to perform
heartbeat on the TcpFailur
tcpFailureDetector.member.disappeared=Verification complete. Member
disappeared[{0}]
tcpFailureDetector.memberDisappeared.verify=Received memberDisappeared[{0}]
message. Will verify.
tcpFailureDetector.performBasicCheck.memberAdded=Member added, even though we
weren''t notified:[{0}]
+tcpFailureDetector.recievedPacket=Received a failure detector packet [{0}]
tcpFailureDetector.still.alive=Verification complete. Member still alive[{0}]
tcpFailureDetector.suspectMember.alive=Suspect member, confirmed alive.[{0}]
tcpFailureDetector.suspectMember.dead=Suspect member, confirmed dead.[{0}]
diff --git
a/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
b/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
index 5b6ae35708..dbfd3acd37 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
+++ b/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
@@ -113,7 +113,7 @@ public class TcpFailureDetector extends
ChannelInterceptorBase implements TcpFai
if ( process ) {
super.messageReceived(msg);
} else if ( log.isDebugEnabled() ) {
- log.debug("Received a failure detector packet:"+msg);
+ log.debug(sm.getString("tcpFailureDetector.recievedPacket", msg));
}
}//messageReceived
diff --git
a/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
b/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
index e1a9302ba0..06a21c5540 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
+++ b/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
@@ -179,8 +179,8 @@ public class TcpPingInterceptor extends
ChannelInterceptorBase implements TcpPin
//ignore the message, it doesn't have the flag set
if ( process ) {
super.messageReceived(msg);
- } else if ( log.isDebugEnabled() ) {
- log.debug("Received a TCP ping packet:"+msg);
+ } else if ( log.isTraceEnabled() ) {
+ log.trace("Received a TCP ping packet:" + msg);
}
}//messageReceived
diff --git a/java/org/apache/catalina/tribes/membership/LocalStrings.properties
b/java/org/apache/catalina/tribes/membership/LocalStrings.properties
index 3cb738b131..23fbe8da37 100644
--- a/java/org/apache/catalina/tribes/membership/LocalStrings.properties
+++ b/java/org/apache/catalina/tribes/membership/LocalStrings.properties
@@ -26,9 +26,15 @@ mcastService.noStart=Multicast send is not started or
enabled.
mcastServiceImpl.bind=Attempting to bind the multicast socket to [{0}:{1}]
mcastServiceImpl.bind.failed=Binding to multicast address, failed. Binding to
port only.
mcastServiceImpl.error.receiving=Error receiving mcast package. Sleeping 500ms
+mcastServiceImpl.error.receivingNoSleep=Error receiving multicast package
mcastServiceImpl.invalid.startLevel=Invalid start level. Only acceptable
levels are Channel.MBR_RX_SEQ and Channel.MBR_TX_SEQ
mcastServiceImpl.invalid.stopLevel=Invalid stop level. Only acceptable levels
are Channel.MBR_RX_SEQ and Channel.MBR_TX_SEQ
+mcastServiceImpl.invalidMemberPackage=Invalid member multicast package
+mcastServiceImpl.memberAdd=Add member [{0}]
mcastServiceImpl.memberDisappeared.failed=Unable to process member disappeared
message.
+mcastServiceImpl.memberExpire=Expire member [{0}]
+mcastServiceImpl.memberShutdown=Member [{0}] has shutdown
+mcastServiceImpl.messageError=Unable to decode message
mcastServiceImpl.packet.tooLong=Multicast packet received was too long,
dropping package:[{0}]
mcastServiceImpl.receive.running=McastService.receive already running.
mcastServiceImpl.recovery=Tribes membership running recovery thread.
Multicasting is not functional.
diff --git a/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
b/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
index 8d25f073ab..b5e01a4cbb 100644
--- a/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
+++ b/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
@@ -403,7 +403,7 @@ public class McastServiceImpl extends
MembershipProviderBase {
Thread currentThread = Thread.currentThread();
if (Arrays.equals(m.getCommand(), Member.SHUTDOWN_PAYLOAD)) {
if (log.isDebugEnabled()) {
- log.debug("Member has shutdown:" + m);
+ log.debug(sm.getString("mcastServiceImpl.memberShutdown", m));
}
membership.removeMember(m);
t = () -> {
@@ -417,7 +417,7 @@ public class McastServiceImpl extends
MembershipProviderBase {
};
} else if (membership.memberAlive(m)) {
if (log.isDebugEnabled()) {
- log.debug("Mcast add member " + m);
+ log.debug(sm.getString("mcastServiceImpl.memberAdd", m));
}
t = () -> {
String name = currentThread.getName();
@@ -445,8 +445,8 @@ public class McastServiceImpl extends
MembershipProviderBase {
for (int i=0; i<count; i++) {
try {
data[i] = buffer.extractPackage(true);
- }catch (IllegalStateException ise) {
- log.debug("Unable to decode message.",ise);
+ } catch (IllegalStateException ise) {
+ log.debug(sm.getString("mcastServiceImpl.messageError"),
ise);
}
}
Runnable t = () -> {
@@ -480,7 +480,7 @@ public class McastServiceImpl extends
MembershipProviderBase {
Member[] expired = membership.expire(timeToExpiration);
for (final Member member : expired) {
if (log.isDebugEnabled()) {
- log.debug("Mcast expire member " + member);
+ log.debug(sm.getString("mcastServiceImpl.memberExpire",
member));
}
try {
Runnable t = () -> {
@@ -581,13 +581,17 @@ public class McastServiceImpl extends
MembershipProviderBase {
//we can ignore this, as it means we have an invalid
package
//but we will log it to debug
if ( log.isDebugEnabled() ) {
- log.debug("Invalid member mcast package.",ax);
+
log.debug(sm.getString("mcastServiceImpl.invalidMemberPackage"), ax);
}
} catch ( Exception x ) {
if (errorCounter==0 && doRunReceiver) {
log.warn(sm.getString("mcastServiceImpl.error.receiving"),x);
} else if (log.isDebugEnabled()) {
- log.debug("Error receiving mcast
package"+(doRunReceiver?". Sleeping 500ms":"."),x);
+ if (doRunReceiver) {
+
log.debug(sm.getString("mcastServiceImpl.error.receiving"), x);
+ } else {
+
log.warn(sm.getString("mcastServiceImpl.error.receivingNoSleep"), x);
+ }
}
if (doRunReceiver) {
try {
diff --git a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
index c63bfb0cad..7499133bf6 100644
--- a/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
+++ b/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
@@ -895,13 +895,13 @@ public abstract class AbstractReplicatedMap<K,V>
removed = (mapMembers.remove(member) != null );
if (!removed) {
if (log.isDebugEnabled()) {
- log.debug("Member["+member+"] disappeared, but was not
present in the map.");
+
log.debug(sm.getString("replicatedMap.member.disappeared.unknown", member));
}
return; //the member was not part of our map.
}
}
if (log.isInfoEnabled()) {
- log.info(sm.getString("abstractReplicatedMap.member.disappeared",
member));
+ log.info(sm.getString("replicatedMap.member.disappeared", member));
}
long start = System.currentTimeMillis();
Iterator<Map.Entry<K,MapEntry<K,V>>> i =
innerMap.entrySet().iterator();
@@ -913,7 +913,7 @@ public abstract class AbstractReplicatedMap<K,V>
}
if (entry.isPrimary() && inSet(member,entry.getBackupNodes())) {
if (log.isDebugEnabled()) {
- log.debug("[1] Primary choosing a new backup");
+ log.debug(sm.getString("abstractReplicatedMap.newBackup"));
}
try {
Member[] backup = publishEntryInfo(entry.getKey(),
entry.getValue());
@@ -924,7 +924,7 @@ public abstract class AbstractReplicatedMap<K,V>
}
} else if (member.equals(entry.getPrimary())) {
if (log.isDebugEnabled()) {
- log.debug("[2] Primary disappeared");
+
log.debug(sm.getString("abstractReplicatedMap.primaryDisappeared"));
}
entry.setPrimary(null);
} //end if
@@ -936,7 +936,7 @@ public abstract class AbstractReplicatedMap<K,V>
entry.getBackupNodes()[0].equals(member) ) {
//remove proxies that have no backup nor primaries
if (log.isDebugEnabled()) {
- log.debug("[3] Removing orphaned proxy");
+
log.debug(sm.getString("abstractReplicatedMap.removeOrphan"));
}
i.remove();
} else if ( entry.getPrimary() == null &&
@@ -946,7 +946,7 @@ public abstract class AbstractReplicatedMap<K,V>
entry.getBackupNodes()[0].equals(channel.getLocalMember(false)) ) {
try {
if (log.isDebugEnabled()) {
- log.debug("[4] Backup becoming primary");
+
log.debug(sm.getString("abstractReplicatedMap.newPrimary"));
}
entry.setPrimary(channel.getLocalMember(false));
entry.setBackup(false);
diff --git a/java/org/apache/catalina/tribes/tipis/LocalStrings.properties
b/java/org/apache/catalina/tribes/tipis/LocalStrings.properties
index 604c31b899..b85b37c8a4 100644
--- a/java/org/apache/catalina/tribes/tipis/LocalStrings.properties
+++ b/java/org/apache/catalina/tribes/tipis/LocalStrings.properties
@@ -22,10 +22,13 @@ abstractReplicatedMap.leftOver.pingMsg=PING message has
been received beyond the
abstractReplicatedMap.mapMember.unavailable=Member[{0}] is not available yet.
abstractReplicatedMap.mapMemberAdded.added=Map member added:[{0}]
abstractReplicatedMap.mapMemberAdded.nullMember=Notified member is not
registered in the membership:[{0}].
-abstractReplicatedMap.member.disappeared=Member[{0}] disappeared. Related map
entries will be relocated to the new node.
+abstractReplicatedMap.newBackup=Primary choosing a new backup
+abstractReplicatedMap.newPrimary=Backup becoming primary
abstractReplicatedMap.ping.stateTransferredMember=Member[{0}] is state
transferred but not available yet.
abstractReplicatedMap.ping.timeout=Member[{0}] in the Map[{1}] has timed-out
in the ping processing.
+abstractReplicatedMap.primaryDisappeared=Primary disappeared
abstractReplicatedMap.relocate.complete=Relocation of map entries was complete
in [{0}] ms.
+abstractReplicatedMap.removeOrphan=Removing orphaned proxy
abstractReplicatedMap.transferState.noReplies=Transfer state, 0 replies,
probably a timeout.
abstractReplicatedMap.unable.deserialize.MapMessage=Unable to deserialize
MapMessage.
abstractReplicatedMap.unable.diffObject=Unable to diff object. Will replicate
the entire object instead.
@@ -48,6 +51,7 @@ mapMessage.deserialize.error.key=Failed to deserialize
MapMessage key
mapMessage.deserialize.error.value=Failed to deserialize MapMessage value
replicatedMap.member.disappeared=Member[{0}] disappeared. Related map entries
will be relocated to the new node.
+replicatedMap.member.disappeared.unknown=Member[{0}] disappeared, but was not
present in the map.
replicatedMap.relocate.complete=Relocation of map entries was complete in
[{0}] ms.
replicatedMap.unable.relocate=Unable to relocate[{0}] to a new backup node
replicatedMap.unableReplicate.completely=Unable to replicate backup key:[{0}].
Success nodes:[{1}]. Failed nodes:[{2}].
diff --git a/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
b/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
index 1d346d8a9e..05f28b1943 100644
--- a/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
+++ b/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
@@ -191,7 +191,7 @@ public class ReplicatedMap<K,V> extends
AbstractReplicatedMap<K,V> {
removed = (mapMembers.remove(member) != null );
if (!removed) {
if (log.isDebugEnabled()) {
- log.debug("Member["+member+"] disappeared, but was not
present in the map.");
+
log.debug(sm.getString("replicatedMap.member.disappeared.unknown", member));
}
return; //the member was not part of our map.
}
diff --git a/java/org/apache/catalina/tribes/transport/LocalStrings.properties
b/java/org/apache/catalina/tribes/transport/LocalStrings.properties
index 2d09e7d751..e2d64970a2 100644
--- a/java/org/apache/catalina/tribes/transport/LocalStrings.properties
+++ b/java/org/apache/catalina/tribes/transport/LocalStrings.properties
@@ -19,6 +19,7 @@ pooledSender.closed.queue=Queue is closed
receiverBase.bind.failed=Failed bind replication listener on address:[{0}]
receiverBase.socket.bind=Receiver Server Socket bound to:[{0}]
+receiverBase.start=Starting replication listener on address [{0}]
receiverBase.udp.bind=UDP Receiver Server Socket bound to:[{0}]
receiverBase.unable.bind=Unable to bind server socket to:[{0}] throwing error.
receiverBase.unable.bind.udp=Unable to bind UDP socket to:[{0}] throwing error.
diff --git a/java/org/apache/catalina/tribes/transport/ReceiverBase.java
b/java/org/apache/catalina/tribes/transport/ReceiverBase.java
index 22be59a544..36b44cc3d5 100644
--- a/java/org/apache/catalina/tribes/transport/ReceiverBase.java
+++ b/java/org/apache/catalina/tribes/transport/ReceiverBase.java
@@ -183,7 +183,7 @@ public abstract class ReceiverBase implements
ChannelReceiver, ListenCallback, R
host = InetAddress.getLocalHost().getHostAddress();
}
if (log.isDebugEnabled()) {
- log.debug("Starting replication listener on address:"+
host);
+ log.debug(sm.getString("receiverBase.start", host));
}
bind = InetAddress.getByName(host);
} catch (IOException ioe) {
diff --git
a/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
b/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
index 7419037f9a..df2b56c77f 100644
--- a/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
+++ b/java/org/apache/catalina/tribes/transport/nio/LocalStrings.properties
@@ -16,7 +16,9 @@
nioReceiver.alreadyStarted=ServerSocketChannel already started
nioReceiver.cleanup.fail=Unable to cleanup on selector close
nioReceiver.clientDisconnect=Replication client disconnected, error when
polling key. Ignoring client.
+nioReceiver.closeError=Close error
nioReceiver.eventsError=Error processing events
+nioReceiver.noThread=No TcpReplicationThread available
nioReceiver.requestError=Unable to process request in NioReceiver
nioReceiver.run.fail=Unable to run replication listener
nioReceiver.start.fail=Unable to start cluster receiver
@@ -44,6 +46,7 @@ nioSender.unknown.state=Data is in unknown state.
readyOps=[{0}]
parallelNioSender.error.keepalive=Error during keepalive test for sender:[{0}]
parallelNioSender.operation.timedout=Operation has timed out([{0}] ms.).
+parallelNioSender.selectorCloseFail=Failed to close selector
parallelNioSender.send.fail=Member send is failing for:[{0}] ; Setting to
suspect.
parallelNioSender.send.fail.retrying=Member send is failing for:[{0}] ;
Setting to suspect and retrying.
parallelNioSender.send.failed=Parallel NIO send failed.
diff --git a/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
b/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
index 4af074bf25..3d587c1f28 100644
--- a/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
+++ b/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
@@ -191,16 +191,16 @@ public class NioReceiver extends ReceiverBase implements
Runnable, NioReceiverMB
key.attach(null);
if (key.channel() instanceof SocketChannel) {
try { ((SocketChannel)key.channel()).socket().close(); } catch
(IOException e) { if (log.isDebugEnabled()) {
- log.debug("", e);
+ log.debug(sm.getString("nioReceiver.closeError"), e);
} }
}
if (key.channel() instanceof DatagramChannel) {
try { ((DatagramChannel)key.channel()).socket().close(); } catch
(Exception e) { if (log.isDebugEnabled()) {
- log.debug("", e);
+ log.debug(sm.getString("nioReceiver.closeError"), e);
} }
}
try { key.channel().close(); } catch (IOException e) { if
(log.isDebugEnabled()) {
- log.debug("", e);
+ log.debug(sm.getString("nioReceiver.closeError"), e);
} }
}
@@ -346,7 +346,7 @@ public class NioReceiver extends ReceiverBase implements
Runnable, NioReceiverMB
datagramChannel.close();
}catch (Exception iox) {
if (log.isDebugEnabled()) {
- log.debug("Unable to close datagram channel.",iox);
+ log.debug(sm.getString("nioReceiver.closeError"), iox);
}
}
datagramChannel=null;
@@ -473,7 +473,7 @@ public class NioReceiver extends ReceiverBase implements
Runnable, NioReceiverMB
// thread becomes available, the thread pool itself has a waiting
mechanism
// so we will not wait here.
if (log.isDebugEnabled()) {
- log.debug("No TcpReplicationThread available");
+ log.debug(sm.getString("nioReceiver.noThread"));
}
} else {
// invoking this wakes up the worker thread then returns
diff --git
a/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
b/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
index 05e8f77a72..7fd5ecbe1a 100644
--- a/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
+++ b/java/org/apache/catalina/tribes/transport/nio/NioReplicationTask.java
@@ -110,7 +110,7 @@ public class NioReplicationTask extends AbstractRxTask {
} else if ( e instanceof IOException ) {
//don't spew out stack traces for IO exceptions unless debug
is enabled.
if (log.isDebugEnabled()) {
- log.debug ("IOException in replication worker, unable to
drain channel. Probable cause: Keep alive socket closed["+e.getMessage()+"].",
e);
+
log.debug(sm.getString("nioReplicationTask.unable.drainChannel.ioe",
e.getMessage()), e);
} else {
log.warn
(sm.getString("nioReplicationTask.unable.drainChannel.ioe", e.getMessage()));
}
diff --git
a/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
b/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
index 68dfbca08a..f73347d5ff 100644
--- a/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
+++ b/java/org/apache/catalina/tribes/transport/nio/ParallelNioSender.java
@@ -428,7 +428,7 @@ public class ParallelNioSender extends AbstractSender
implements MultiPointSende
selector.close();
} catch (Exception e) {
if (log.isDebugEnabled()) {
- log.debug("Failed to close selector", e);
+
log.debug(sm.getString("parallelNioSender.selectorCloseFail"), e);
}
}
}
diff --git a/java/org/apache/catalina/users/DataSourceUserDatabase.java
b/java/org/apache/catalina/users/DataSourceUserDatabase.java
index d79082d758..8ad9aa7a7f 100644
--- a/java/org/apache/catalina/users/DataSourceUserDatabase.java
+++ b/java/org/apache/catalina/users/DataSourceUserDatabase.java
@@ -934,10 +934,8 @@ public class DataSourceUserDatabase extends
SparseUserDatabase {
if (log.isDebugEnabled()) {
// As there are lots of parameters to configure, log some debug to
help out
- log.debug("DataSource UserDatabase features: User<->Role ["
- + Boolean.toString(userRoleTable != null && roleNameCol !=
null)
- + "], Roles [" + Boolean.toString(isRoleStoreDefined())
- + "], Groups [" + Boolean.toString(isRoleStoreDefined()) +
"]");
+ log.debug(sm.getString("dataSourceUserDatabase.features",
Boolean.toString(userRoleTable != null && roleNameCol != null),
+ Boolean.toString(isRoleStoreDefined()),
Boolean.toString(isGroupStoreDefined())));
}
dbWriteLock.lock();
diff --git a/java/org/apache/catalina/users/LocalStrings.properties
b/java/org/apache/catalina/users/LocalStrings.properties
index 4c946de163..56bea7c03f 100644
--- a/java/org/apache/catalina/users/LocalStrings.properties
+++ b/java/org/apache/catalina/users/LocalStrings.properties
@@ -14,6 +14,7 @@
# limitations under the License.
dataSourceUserDatabase.exception=Exception accessing the database
+dataSourceUserDatabase.features=DataSource UserDatabase features: User <->
Role [{0}], Roles [{1}], Groups [{2}]
memoryUserDatabase.fileClose=Failed to close [{0}]
memoryUserDatabase.fileDelete=Failed to delete [{0}]
diff --git a/java/org/apache/catalina/valves/ErrorReportValve.java
b/java/org/apache/catalina/valves/ErrorReportValve.java
index ee5b4a2ec0..7832b4f3ae 100644
--- a/java/org/apache/catalina/valves/ErrorReportValve.java
+++ b/java/org/apache/catalina/valves/ErrorReportValve.java
@@ -329,7 +329,7 @@ public class ErrorReportValve extends ValveBase {
} catch (Throwable t) {
ExceptionUtils.handleThrowable(t);
if (container.getLogger().isDebugEnabled()) {
- container.getLogger().debug("Failure to set the
content-type of response", t);
+
container.getLogger().debug(sm.getString("errorReportValve.contentTypeFail"),
t);
}
}
Writer writer = response.getReporter();
diff --git a/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
b/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
index 2c54c69ae2..f7368b9523 100644
--- a/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
+++ b/java/org/apache/catalina/valves/ExtendedAccessLogValve.java
@@ -489,8 +489,8 @@ public class ExtendedAccessLogValve extends AccessLogValve {
@Override
protected AccessLogElement[] createLogElements() {
- if (log.isDebugEnabled()) {
- log.debug("decodePattern, pattern =" + pattern);
+ if (log.isTraceEnabled()) {
+ log.trace("decodePattern, pattern =" + pattern);
}
List<AccessLogElement> list = new ArrayList<>();
diff --git a/java/org/apache/catalina/valves/JsonErrorReportValve.java
b/java/org/apache/catalina/valves/JsonErrorReportValve.java
index c698ca3ce5..c073783150 100644
--- a/java/org/apache/catalina/valves/JsonErrorReportValve.java
+++ b/java/org/apache/catalina/valves/JsonErrorReportValve.java
@@ -93,7 +93,7 @@ public class JsonErrorReportValve extends ErrorReportValve {
} catch (Throwable t) {
ExceptionUtils.handleThrowable(t);
if (container.getLogger().isDebugEnabled()) {
- container.getLogger().debug("Failure to set the
content-type of response", t);
+
container.getLogger().debug(sm.getString("errorReportValve.contentTypeFail"),
t);
}
}
Writer writer = response.getReporter();
diff --git a/java/org/apache/catalina/valves/LoadBalancerDrainingValve.java
b/java/org/apache/catalina/valves/LoadBalancerDrainingValve.java
index 45b1ef5555..09214f2b54 100644
--- a/java/org/apache/catalina/valves/LoadBalancerDrainingValve.java
+++ b/java/org/apache/catalina/valves/LoadBalancerDrainingValve.java
@@ -157,7 +157,7 @@ public class LoadBalancerDrainingValve extends ValveBase {
!request.isRequestedSessionIdValid()) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug("Load-balancer is in DISABLED state;
draining this node");
+
containerLog.debug(sm.getString("loadBalancerDrainingValve.draining"));
}
boolean ignoreRebalance = false;
@@ -187,8 +187,7 @@ public class LoadBalancerDrainingValve extends ValveBase {
if (ignoreRebalance) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug("Client is presenting a valid " +
_ignoreCookieName +
- " cookie, re-balancing is being skipped");
+
containerLog.debug(sm.getString("loadBalancerDrainingValve.skip",
_ignoreCookieName));
}
getNext().invoke(request, response);
diff --git a/java/org/apache/catalina/valves/LocalStrings.properties
b/java/org/apache/catalina/valves/LocalStrings.properties
index 62c342c3d2..9bd759b59f 100644
--- a/java/org/apache/catalina/valves/LocalStrings.properties
+++ b/java/org/apache/catalina/valves/LocalStrings.properties
@@ -33,6 +33,7 @@ errorReportValve.errorPageIOException=Unable to display error
page at [{0}] due
errorReportValve.errorPageNotFound=Unable to find a static error page at [{0}]
errorReportValve.exception=Exception
errorReportValve.exceptionReport=Exception Report
+errorReportValve.contentTypeFail=Failure to set the content-type of response
errorReportValve.message=Message
errorReportValve.noDescription=No description available
errorReportValve.note=Note
@@ -136,6 +137,9 @@ http.511.reason=Network Authentication Required
jdbcAccessLogValve.close=Failed to close database
jdbcAccessLogValve.exception=Exception performing insert access entry
+loadBalancerDrainingValve.draining=Load-balancer is in DISABLED state,
draining this node
+loadBalancerDrainingValve.skip=Client is presenting a valid [{0}] cookie,
re-balancing is being skipped
+
patternTokenizer.unexpectedParenthesis=Unexpected ')' in pattern
persistentValve.acquireFailed=The request for [{0}] did not obtain the per
session Semaphore as no permit was available
@@ -145,6 +149,8 @@ persistentValve.requestIgnore=The request for [{0}] was
ignored by this Valve as
persistentValve.requestProcess=The request for [{0}] will be processed by this
Valve as it does not match the configured filter
persistentValve.sessionLoadFail=Loading session [{0}] from the store failed
+proxyErrorReportValve.error=Proxy error to [{0}]
+
remoteCidrValve.invalid=Invalid configuration provided for [{0}]. See previous
messages for details.
remoteCidrValve.noPort=Request does not contain a valid server port. Request
denied.
remoteCidrValve.noRemoteIp=Client does not have an IP address. Request denied.
@@ -161,6 +167,7 @@ requestFilterValve.deny=Denied request for [{0}] based on
property [{1}]
sslValve.certError=Failed to process certificate string [{0}] to create a
java.security.cert.X509Certificate object
sslValve.invalidProvider=The SSL provider specified on the connector
associated with this request of [{0}] is invalid. The certificate data could
not be processed.
+stuckThreadDetectionValve.interrupted=Thread interrupted after the request is
finished, ignoring
stuckThreadDetectionValve.notifyStuckThreadCompleted=Thread [{0}] (id=[{3}])
was previously reported to be stuck but has completed. It was active for
approximately [{1}] milliseconds.{2,choice,0#|0< There is/are still [{2}]
thread(s) that are monitored by this Valve and may be stuck.}
stuckThreadDetectionValve.notifyStuckThreadDetected=Thread [{0}] (id=[{6}])
has been active for [{1}] milliseconds (since [{2}]) to serve the same request
for [{4}] and may be stuck (configured threshold for this
StuckThreadDetectionValve is [{5}] seconds). There is/are [{3}] thread(s) in
total that are monitored by this Valve and may be stuck.
stuckThreadDetectionValve.notifyStuckThreadInterrupted=Thread [{0}] (id=[{5}])
has been interrupted because it was active for [{1}] milliseconds (since [{2}])
to serve the same request for [{3}] and was probably stuck (configured
interruption threshold for this StuckThreadDetectionValve is [{4}] seconds).
diff --git a/java/org/apache/catalina/valves/ProxyErrorReportValve.java
b/java/org/apache/catalina/valves/ProxyErrorReportValve.java
index 3371ee55e6..d6f7243825 100644
--- a/java/org/apache/catalina/valves/ProxyErrorReportValve.java
+++ b/java/org/apache/catalina/valves/ProxyErrorReportValve.java
@@ -212,7 +212,7 @@ public class ProxyErrorReportValve extends ErrorReportValve
{
IOTools.flow(inputStream, outputStream);
} catch (URISyntaxException | IOException |
IllegalArgumentException e) {
if (log.isDebugEnabled()) {
- log.debug("Proxy error to " + urlString, e);
+ log.debug(sm.getString("proxyErrorReportValve.error",
urlString), e);
}
// Ignore
} finally {
diff --git a/java/org/apache/catalina/valves/StuckThreadDetectionValve.java
b/java/org/apache/catalina/valves/StuckThreadDetectionValve.java
index e9f5239594..a19629fde2 100644
--- a/java/org/apache/catalina/valves/StuckThreadDetectionValve.java
+++ b/java/org/apache/catalina/valves/StuckThreadDetectionValve.java
@@ -321,7 +321,7 @@ public class StuckThreadDetectionValve extends ValveBase {
// going out from here, maybe already serving a new request
this.interruptionSemaphore.acquire();
} catch (InterruptedException e) {
- log.debug("thread interrupted after the request is
finished, ignoring", e);
+
log.debug(sm.getString("stuckThreadDetectionValve.interrupted"), e);
}
// no need to release the semaphore, it will be GCed
}
diff --git a/java/org/apache/catalina/valves/rewrite/LocalStrings.properties
b/java/org/apache/catalina/valves/rewrite/LocalStrings.properties
index 34e6248834..db07290ebb 100644
--- a/java/org/apache/catalina/valves/rewrite/LocalStrings.properties
+++ b/java/org/apache/catalina/valves/rewrite/LocalStrings.properties
@@ -23,4 +23,6 @@ rewriteValve.closeError=Error closing configuration
rewriteValve.invalidFlags=Invalid flag in [{0}] flags [{1}]
rewriteValve.invalidLine=Invalid line [{0}]
rewriteValve.invalidMapClassName=Invalid map class name [{0}]
+rewriteValve.noConfiguration=No configuration resource found [{0}]
+rewriteValve.readConfiguration=Read configuration from [/WEB-INF/{0}]
rewriteValve.readError=Error reading configuration
diff --git a/java/org/apache/catalina/valves/rewrite/RewriteValve.java
b/java/org/apache/catalina/valves/rewrite/RewriteValve.java
index 356c4b03b2..8beb2ac3ae 100644
--- a/java/org/apache/catalina/valves/rewrite/RewriteValve.java
+++ b/java/org/apache/catalina/valves/rewrite/RewriteValve.java
@@ -142,13 +142,14 @@ public class RewriteValve extends ValveBase {
// Process configuration file for this valve
if (getContainer() instanceof Context) {
context = true;
+ String webInfResourcePath = "/WEB-INF/" + resourcePath;
is = ((Context) getContainer()).getServletContext()
- .getResourceAsStream("/WEB-INF/" + resourcePath);
+ .getResourceAsStream(webInfResourcePath);
if (containerLog.isDebugEnabled()) {
if (is == null) {
- containerLog.debug("No configuration resource found:
/WEB-INF/" + resourcePath);
+
containerLog.debug(sm.getString("rewriteValve.noConfiguration",
webInfResourcePath));
} else {
- containerLog.debug("Read configuration from: /WEB-INF/" +
resourcePath);
+
containerLog.debug(sm.getString("rewriteValve.readConfiguration",
webInfResourcePath));
}
}
} else {
@@ -158,7 +159,7 @@ public class RewriteValve extends ValveBase {
is = resource.getInputStream();
} catch (IOException e) {
if (containerLog.isDebugEnabled()) {
- containerLog.debug("No configuration resource found: " +
resourceName, e);
+
containerLog.debug(sm.getString("rewriteValve.noConfiguration", resourceName),
e);
}
}
}
diff --git a/java/org/apache/coyote/AbstractProcessor.java
b/java/org/apache/coyote/AbstractProcessor.java
index 38ad35fec0..31d2cd7fd3 100644
--- a/java/org/apache/coyote/AbstractProcessor.java
+++ b/java/org/apache/coyote/AbstractProcessor.java
@@ -208,7 +208,7 @@ public abstract class AbstractProcessor extends
AbstractProcessorLight implement
}
} catch (IOException ioe) {
if (getLog().isDebugEnabled()) {
- getLog().debug("Unable to write async data.", ioe);
+
getLog().debug(sm.getString("abstractProcessor.asyncFail"), ioe);
}
status = SocketEvent.ERROR;
request.setAttribute(RequestDispatcher.ERROR_EXCEPTION, ioe);
diff --git a/java/org/apache/coyote/LocalStrings.properties
b/java/org/apache/coyote/LocalStrings.properties
index 36198bb0aa..a2d1acf103 100644
--- a/java/org/apache/coyote/LocalStrings.properties
+++ b/java/org/apache/coyote/LocalStrings.properties
@@ -25,6 +25,7 @@
abstractConnectionHandler.protocolexception.debug=ProtocolExceptions are normal,
abstractConnectionHandler.socketexception.debug=SocketExceptions are normal,
ignored
abstractConnectionHandler.upgradeCreate=Created upgrade processor [{0}] for
socket wrapper [{1}]
+abstractProcessor.asyncFail=Unable to write async data
abstractProcessor.fallToDebug=\n\
\ Note: further occurrences of request parsing errors will be logged at DEBUG
level.
abstractProcessor.hostInvalid=The host [{0}] is not valid
diff --git a/java/org/apache/coyote/ajp/AjpProcessor.java
b/java/org/apache/coyote/ajp/AjpProcessor.java
index c8a070b362..cf693aae32 100644
--- a/java/org/apache/coyote/ajp/AjpProcessor.java
+++ b/java/org/apache/coyote/ajp/AjpProcessor.java
@@ -377,7 +377,7 @@ public class AjpProcessor extends AbstractProcessor {
socketWrapper.flush(true);
} catch (IOException e) {
if (getLog().isDebugEnabled()) {
- getLog().debug("Pong message failed", e);
+
getLog().debug(sm.getString("ajpprocessor.pongFail"), e);
}
setErrorState(ErrorState.CLOSE_CONNECTION_NOW, e);
}
@@ -387,7 +387,7 @@ public class AjpProcessor extends AbstractProcessor {
// Unexpected packet type. Unread body packets should have
// been swallowed in finish().
if (getLog().isDebugEnabled()) {
- getLog().debug("Unexpected message: " + type);
+
getLog().debug(sm.getString("ajpprocessor.unexpectedMessage", type));
}
setErrorState(ErrorState.CLOSE_CONNECTION_NOW, null);
break;
diff --git a/java/org/apache/coyote/ajp/LocalStrings.properties
b/java/org/apache/coyote/ajp/LocalStrings.properties
index 623f82c4a9..be8a46c100 100644
--- a/java/org/apache/coyote/ajp/LocalStrings.properties
+++ b/java/org/apache/coyote/ajp/LocalStrings.properties
@@ -23,10 +23,12 @@ ajpmessage.overflow=Overflow error for buffer adding [{0}]
bytes at position [{1
ajpprocessor.certs.fail=Certificate conversion failed
ajpprocessor.header.error=Header message parsing failed
ajpprocessor.header.tooLong=Header message of length [{0}] received but the
packetSize is only [{1}]
+ajpprocessor.pongFail=Pong message failed
ajpprocessor.readtimeout=Timeout attempting to read data from the socket
ajpprocessor.request.prepare=Error preparing request
ajpprocessor.request.process=Error processing request
ajpprocessor.response.invalidHeader=The HTTP response header [{0}] with value
[{1}] has been removed from the response because it is invalid
+ajpprocessor.unexpectedMessage=Unexpected message type [{0}]
ajpprocessor.unknownAttribute=Rejecting request due to unknown request
attribute [{0}] received from reverse proxy
ajpprotocol.noSSL=SSL is not supported with AJP. The SSL host configuration
for [{0}] was ignored
diff --git a/java/org/apache/coyote/http11/filters/GzipOutputFilter.java
b/java/org/apache/coyote/http11/filters/GzipOutputFilter.java
index 29c4b15f97..14c68db9a5 100644
--- a/java/org/apache/coyote/http11/filters/GzipOutputFilter.java
+++ b/java/org/apache/coyote/http11/filters/GzipOutputFilter.java
@@ -26,6 +26,7 @@ import org.apache.coyote.http11.HttpOutputBuffer;
import org.apache.coyote.http11.OutputFilter;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
+import org.apache.tomcat.util.res.StringManager;
/**
* Gzip output filter.
@@ -35,6 +36,7 @@ import org.apache.juli.logging.LogFactory;
public class GzipOutputFilter implements OutputFilter {
protected static final Log log = LogFactory.getLog(GzipOutputFilter.class);
+ private static final StringManager sm =
StringManager.getManager(GzipOutputFilter.class);
// ----------------------------------------------------- Instance Variables
@@ -98,7 +100,7 @@ public class GzipOutputFilter implements OutputFilter {
compressionStream.flush();
} catch (IOException e) {
if (log.isDebugEnabled()) {
- log.debug("Ignored exception while flushing gzip filter",
e);
+ log.debug(sm.getString("gzipOutputFilter.flushFail"), e);
}
}
}
diff --git a/java/org/apache/coyote/http11/filters/LocalStrings.properties
b/java/org/apache/coyote/http11/filters/LocalStrings.properties
index 3114a87d0a..3650316b88 100644
--- a/java/org/apache/coyote/http11/filters/LocalStrings.properties
+++ b/java/org/apache/coyote/http11/filters/LocalStrings.properties
@@ -29,4 +29,6 @@ chunkedInputFilter.invalidTrailerHeaderValue=Invalid trailer
header value (contr
chunkedInputFilter.maxExtension=maxExtensionSize exceeded
chunkedInputFilter.maxTrailer=maxTrailerSize exceeded
+gzipOutputFilter.flushFail=Ignored exception while flushing gzip filter
+
inputFilter.maxSwallow=maxSwallowSize exceeded
diff --git a/java/org/apache/jasper/JspC.java b/java/org/apache/jasper/JspC.java
index f6b981e01d..cd955fb191 100644
--- a/java/org/apache/jasper/JspC.java
+++ b/java/org/apache/jasper/JspC.java
@@ -1065,8 +1065,7 @@ public class JspC extends Task implements Options {
throws IOException
{
if (log.isDebugEnabled()) {
- log.debug("Generating web mapping for file " + file
- + " using compilation context " + clctxt);
+ log.debug(Localizer.getMessage("jspc.generatingMapping", file,
clctxt));
}
String className = clctxt.getServletClassName();
@@ -1230,7 +1229,7 @@ public class JspC extends Task implements Options {
protected void processFile(String file) throws JasperException {
if (log.isDebugEnabled()) {
- log.debug("Processing file: " + file);
+ log.debug(Localizer.getMessage("jspc.processing", file));
}
ClassLoader originalClassLoader = null;
@@ -1273,7 +1272,7 @@ public class JspC extends Task implements Options {
// the .java file
if( clc.isOutDated(compile) ) {
if (log.isDebugEnabled()) {
- log.debug(jspUri + " is out dated, compiling...");
+ log.debug(Localizer.getMessage("jspc.outdated", jspUri));
}
clc.compile(compile, true);
@@ -1282,7 +1281,7 @@ public class JspC extends Task implements Options {
// Generate mapping
generateWebMapping( file, clctxt );
if ( showSuccess ) {
- log.info( "Built File: " + file );
+ log.info(Localizer.getMessage("jspc.built", file));
}
} catch (JasperException je) {
@@ -1350,7 +1349,7 @@ public class JspC extends Task implements Options {
@Override
public void execute() {
if(log.isDebugEnabled()) {
- log.debug("execute() starting for " + pages.size() + " pages.");
+ log.debug(Localizer.getMessage("jspc.start", pages.size()));
}
try {
diff --git a/java/org/apache/jasper/compiler/AntCompiler.java
b/java/org/apache/jasper/compiler/AntCompiler.java
index b615c2395f..632954e23b 100644
--- a/java/org/apache/jasper/compiler/AntCompiler.java
+++ b/java/org/apache/jasper/compiler/AntCompiler.java
@@ -255,8 +255,7 @@ public class AntCompiler extends Compiler {
if( log.isDebugEnabled() ) {
long t2 = System.currentTimeMillis();
- log.debug("Compiled " + ctxt.getServletJavaFileName() + " "
- + (t2-t1) + "ms");
+ log.debug(Localizer.getMessage("jsp.compiled",
ctxt.getServletJavaFileName(), Long.valueOf(t2 - t1)));
}
logger = null;
diff --git a/java/org/apache/jasper/compiler/Compiler.java
b/java/org/apache/jasper/compiler/Compiler.java
index 89f11919cc..731750179f 100644
--- a/java/org/apache/jasper/compiler/Compiler.java
+++ b/java/org/apache/jasper/compiler/Compiler.java
@@ -548,8 +548,7 @@ public abstract class Compiler {
}
} catch (Exception e) {
if (log.isDebugEnabled()) {
- log.debug("Problem accessing resource. Treat as outdated.",
- e);
+
log.debug(Localizer.getMessage("jsp.error.compiler.missingResource"), e);
}
return true;
}
diff --git a/java/org/apache/jasper/compiler/JDTCompiler.java
b/java/org/apache/jasper/compiler/JDTCompiler.java
index e4a4f659bd..727f61393a 100644
--- a/java/org/apache/jasper/compiler/JDTCompiler.java
+++ b/java/org/apache/jasper/compiler/JDTCompiler.java
@@ -514,8 +514,7 @@ public class JDTCompiler extends
org.apache.jasper.compiler.Compiler {
if( log.isDebugEnabled() ) {
long t2=System.currentTimeMillis();
- log.debug("Compiled " + ctxt.getServletJavaFileName() + " "
- + (t2-t1) + "ms");
+ log.debug(Localizer.getMessage("jsp.compiled",
ctxt.getServletJavaFileName(), Long.valueOf(t2 - t1)));
}
if (ctxt.isPrototypeMode()) {
diff --git a/java/org/apache/jasper/compiler/JspReader.java
b/java/org/apache/jasper/compiler/JspReader.java
index 20efad478a..df3ee8a0f4 100644
--- a/java/org/apache/jasper/compiler/JspReader.java
+++ b/java/org/apache/jasper/compiler/JspReader.java
@@ -127,7 +127,7 @@ class JspReader {
reader.close();
} catch (Exception any) {
if(log.isDebugEnabled()) {
- log.debug("Exception closing reader: ", any);
+
log.debug(Localizer.getMessage("jsp.error.file.close"), any);
}
}
}
diff --git a/java/org/apache/jasper/optimizations/ELInterpreterTagSetters.java
b/java/org/apache/jasper/optimizations/ELInterpreterTagSetters.java
index 23202d73a7..e2ea5f1773 100644
--- a/java/org/apache/jasper/optimizations/ELInterpreterTagSetters.java
+++ b/java/org/apache/jasper/optimizations/ELInterpreterTagSetters.java
@@ -26,6 +26,7 @@ import jakarta.el.ELResolver;
import org.apache.jasper.JspCompilationContext;
import org.apache.jasper.compiler.ELInterpreter;
import org.apache.jasper.compiler.JspUtil;
+import org.apache.jasper.compiler.Localizer;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
@@ -110,7 +111,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
BigDecimal unused = new BigDecimal(m.group(2));
result = "new java.math.BigDecimal(\"" + m.group(2) +
"\")";
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
BigDecimal", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "BigDecimal"), e);
// Continue and resolve the value at runtime
}
}
@@ -128,7 +129,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Long.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Long", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Long"), e);
// Continue and resolve the value at runtime
}
}
@@ -145,7 +146,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Integer.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Integer", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Integer"), e);
// Continue and resolve the value at runtime
}
}
@@ -163,7 +164,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Short.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Short", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Short"), e);
// Continue and resolve the value at runtime
}
}
@@ -181,7 +182,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Byte.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Byte", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Byte"), e);
// Continue and resolve the value at runtime
}
}
@@ -198,7 +199,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Double.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Double", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Double"), e);
// Continue and resolve the value at runtime
}
}
@@ -216,7 +217,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
result = "Float.valueOf(\"" + m.group(2) + "\")";
}
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
Float", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Float"), e);
// Continue and resolve the value at runtime
}
}
@@ -229,7 +230,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
BigInteger unused = new BigInteger(m.group(2));
result = "new java.math.BigInteger(\"" + m.group(2) +
"\")";
} catch (NumberFormatException e) {
- log.debug("Failed to convert [" + m.group(2) + "] to
BigInteger", e);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "BigInteger"), e);
// Continue and resolve the value at runtime
}
}
@@ -242,7 +243,7 @@ public class ELInterpreterTagSetters implements
ELInterpreter {
Enum<?> enumValue = Enum.valueOf((Class<? extends Enum>)
expectedType, m.group(2));
result = expectedType.getName() + "." + enumValue.name();
} catch (IllegalArgumentException iae) {
- log.debug("Failed to convert [" + m.group(2) + "] to Enum
type [" + expectedType.getName() + "]", iae);
+ log.debug(Localizer.getMessage("jsp.error.typeConversion",
m.group(2), "Enum[" + expectedType.getName() + "]"), iae);
// Continue and resolve the value at runtime
}
}
diff --git a/java/org/apache/jasper/resources/LocalStrings.properties
b/java/org/apache/jasper/resources/LocalStrings.properties
index 5dab3e2d16..67f4b9e405 100644
--- a/java/org/apache/jasper/resources/LocalStrings.properties
+++ b/java/org/apache/jasper/resources/LocalStrings.properties
@@ -15,6 +15,7 @@
jasper.error.emptybodycontent.nonempty=According to TLD, tag [{0}] must be
empty, but is not
+jsp.compiled=Compiled [{0}] {1}ms
jsp.engine.info=Jasper JSP {0} Engine
jsp.error.URLMustStartWithSlash=Path [{0}] must start with a slash character
jsp.error.action.isnottagfile=[{0}] action can be used in tag files only
@@ -55,6 +56,7 @@ jsp.error.compilation.jdtProblemError=Error processing JDT
problems list
jsp.error.compilation.source=Error loading source file [{0}]
jsp.error.compiler=No Java compiler available
jsp.error.compiler.config=No Java compiler available for configuration options
compilerClassName: [{0}] and compiler: [{1}]
+jsp.error.compiler.missingResource=Problem accessing resource, treat as
outdated
jsp.error.config_pagedir_encoding_mismatch=Page-encoding specified in
jsp-property-group [{0}] is different from that specified in page directive
[{1}]
jsp.error.corresponding.servlet=Generated servlet error:\n
jsp.error.could.not.add.taglibraries=Could not add one or more tag libraries.
@@ -74,6 +76,7 @@ jsp.error.el.template.deferred=#{...} is not allowed in
template text
jsp.error.el_interpreter_class.instantiation=Failed to load or instantiate
ELInterpreter class [{0}]
jsp.error.file.already.registered=Recursive include of file [{0}]
jsp.error.file.cannot.read=Cannot read file: [{0}]
+jsp.error.file.close=Exception closing reader
jsp.error.file.not.found=JSP file [{0}] not found
jsp.error.flush=Exception occurred when flushing data
jsp.error.fragmentwithtype=Cannot specify both ''fragment'' and ''type''
attributes. If ''fragment'' is present, ''type'' is fixed as ''{0}''
@@ -233,6 +236,7 @@ jsp.error.tld.unable_to_get_jar=Unable to get JAR resource
[{0}] containing TLD:
jsp.error.tld.url=Bad TLD URL [{0}]
jsp.error.tlv.invalid.page=Validation error messages from TagLibraryValidator
for [{0}] in [{1}]
jsp.error.tlvclass.instantiation=Failed to load or instantiate
TagLibraryValidator class: [{0}]
+jsp.error.typeConversion=Failed to convert [{0}] to {1}
jsp.error.unable.compile=Unable to compile class for JSP
jsp.error.unable.deleteClassFile=Unable to delete class file [{0}]
jsp.error.unable.getType=Unable to extract type from [{0}]
@@ -309,6 +313,7 @@ jsp.warning.unsupported.targetVM=Unsupported target VM
[{0}] requested, using [{
jsp.warning.useInstanceManagerForTags=Warning: Invalid value for the initParam
useInstanceManagerForTags. Will use the default value of "false"
jsp.warning.xpoweredBy=Warning: Invalid value for the initParam xpoweredBy.
Will use the default value of "false"
+jspc.built=Built file [{0}]
jspc.delete.fail=Failed to delete file [{0}]
jspc.error.compilation=Compilation error
jspc.error.fileDoesNotExist=The file argument [{0}] does not exist
@@ -319,8 +324,12 @@ jspc.error.minThreadCount=There must be at least one
thread [{0}]
jspc.error.parseThreadCount=Cannot parse thread count [{0}]
jspc.error.unknownOption=Unrecognized option [{0}]. Use -help for help.
jspc.errorCount=Error count: [{0}]
+jspc.generatingMapping=Generating web mapping for file [{0}] using compilation
context [{1}]
jspc.generation.result=Generation completed with [{0}] errors in [{1}]
milliseconds
jspc.implicit.uriRoot=uriRoot implicitly set to [{0}]
+jspc.outdated=[{0}] is outdated and is compiled
+jspc.processing=Processing file [{0}]
+jspc.start=Execute starting for {0} pages
jspc.usage=Usage: jspc <options> [--] <jsp files>\n\
where jsp files is\n\
\ -webapp <dir> A directory containing a web-app, whose JSP pages\n\
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings.properties
b/java/org/apache/tomcat/util/buf/LocalStrings.properties
index 7fc668fb0f..63e2eb38a2 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings.properties
@@ -30,6 +30,9 @@ encodedSolidusHandling.invalid=The value [{0}] is not
recognised
hexUtils.fromHex.nonHex=The input must consist only of hex digits
hexUtils.fromHex.oddDigits=The input must consist of an even number of hex
digits
+stringCache.byteTime=ByteCache generation time: {0}ms
+stringCache.charTime=CharCache generation time: {0}ms
+
uDecoder.eof=End of file (EOF)
uDecoder.isHexDigit=The hexadecimal encoding is invalid
uDecoder.noSlash=The encoded slash character is not allowed
diff --git a/java/org/apache/tomcat/util/buf/StringCache.java
b/java/org/apache/tomcat/util/buf/StringCache.java
index f86be83ec6..1e281050ea 100644
--- a/java/org/apache/tomcat/util/buf/StringCache.java
+++ b/java/org/apache/tomcat/util/buf/StringCache.java
@@ -27,6 +27,7 @@ import java.util.TreeMap;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
+import org.apache.tomcat.util.res.StringManager;
/**
* This class implements a String cache for ByteChunk and CharChunk.
@@ -37,6 +38,7 @@ public class StringCache {
private static final Log log = LogFactory.getLog(StringCache.class);
+ private static final StringManager sm =
StringManager.getManager(StringCache.class);
// ------------------------------------------------------- Static Variables
@@ -283,7 +285,7 @@ public class StringCache {
bcCache = tempbcCache;
if (log.isDebugEnabled()) {
long t2 = System.currentTimeMillis();
- log.debug("ByteCache generation time: " + (t2 -
t1) + "ms");
+ log.debug(sm.getString("stringCache.byteTime",
Long.valueOf(t2 - t1)));
}
} else {
bcCount++;
@@ -391,7 +393,7 @@ public class StringCache {
ccCache = tempccCache;
if (log.isDebugEnabled()) {
long t2 = System.currentTimeMillis();
- log.debug("CharCache generation time: " + (t2 -
t1) + "ms");
+ log.debug(sm.getString("stringCache.charTime",
Long.valueOf(t2 - t1)));
}
} else {
ccCount++;
diff --git a/java/org/apache/tomcat/util/digester/Digester.java
b/java/org/apache/tomcat/util/digester/Digester.java
index ba532b5a9f..e7615ac7f0 100644
--- a/java/org/apache/tomcat/util/digester/Digester.java
+++ b/java/org/apache/tomcat/util/digester/Digester.java
@@ -1403,7 +1403,7 @@ public class Digester extends DefaultHandler2 {
}
} catch (URISyntaxException e) {
if (log.isDebugEnabled()) {
- log.debug("Invalid URI '" + baseURI + "' or '" +
systemId + "'");
+ log.debug(sm.getString("digester.invalidURI",
baseURI, systemId));
}
}
}
diff --git a/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
b/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
index 7fdff66531..91f7349e2e 100644
--- a/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
+++ b/java/org/apache/tomcat/util/digester/FactoryCreateRule.java
@@ -98,12 +98,12 @@ public class FactoryCreateRule extends Rule {
} catch (Exception e) {
// log message and error
- if (digester.log.isInfoEnabled()) {
+ if (digester.log.isDebugEnabled()) {
+ digester.log.debug(sm.getString("rule.createError",
+ ((e.getMessage() == null) ? e.getClass().getName()
: e.getMessage())), e);
+ } else if (digester.log.isInfoEnabled()) {
digester.log.info(sm.getString("rule.createError",
((e.getMessage() == null) ? e.getClass().getName() :
e.getMessage())));
- if (digester.log.isDebugEnabled()) {
- digester.log.debug("[FactoryCreateRule] Ignored
exception:", e);
- }
}
exceptionIgnoredStack.push(Boolean.TRUE);
}
diff --git a/java/org/apache/tomcat/util/digester/LocalStrings.properties
b/java/org/apache/tomcat/util/digester/LocalStrings.properties
index 74c6c78252..f833ab873b 100644
--- a/java/org/apache/tomcat/util/digester/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/digester/LocalStrings.properties
@@ -24,6 +24,7 @@ digester.error.finish=Finish event threw exception
digester.errorLocation=Error at line [{0}] column [{1}]: [{2}]
digester.failedToUpdateAttributes=Attribute [{0}] failed to update and remains
[{1}]
digester.failedToUpdateSystemProperty=System property [{0}] failed to update
and remains [{1}]
+digester.invalidURI=Invalid URI [{0}] or [{1}]
digester.noLocator=No Locator
digester.noRulesFound=No rules found matching [{0}]
digester.parseError=Parse error at line [{0}] column [{1}]
diff --git a/java/org/apache/tomcat/util/http/LocalStrings.properties
b/java/org/apache/tomcat/util/http/LocalStrings.properties
index 29fd518c61..f3a680e0ae 100644
--- a/java/org/apache/tomcat/util/http/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/http/LocalStrings.properties
@@ -32,6 +32,7 @@ parameters.invalidChunk=Invalid chunk starting at byte [{0}]
and ending at byte
parameters.maxCountFail=More than the maximum number of request parameters
(GET plus POST) for a single request ([{0}]) were detected. Any parameters
beyond this limit have been ignored. To change this limit, set the
maxParameterCount attribute on the Connector.
parameters.noequal=Parameter starting at position [{0}] and ending at position
[{1}] with a value of [{2}] was not followed by an ''='' character
+rfc6265CookieProcessor.expectedBytes=Parsing cookie as String, expected bytes
rfc6265CookieProcessor.invalidAttributeName=An invalid attribute name [{0}]
was specified for this cookie
rfc6265CookieProcessor.invalidAttributeValue=An invalid attribute value [{1}]
was specified for this cookie attribute [{0}]
rfc6265CookieProcessor.invalidCharInValue=An invalid character [{0}] was
present in the Cookie value
diff --git a/java/org/apache/tomcat/util/http/Rfc6265CookieProcessor.java
b/java/org/apache/tomcat/util/http/Rfc6265CookieProcessor.java
index 79780358c2..05a712ecb5 100644
--- a/java/org/apache/tomcat/util/http/Rfc6265CookieProcessor.java
+++ b/java/org/apache/tomcat/util/http/Rfc6265CookieProcessor.java
@@ -82,7 +82,7 @@ public class Rfc6265CookieProcessor extends
CookieProcessorBase {
if (log.isDebugEnabled()) {
Exception e = new Exception();
// TODO: Review this in light of HTTP/2
- log.debug("Cookies: Parsing cookie as String. Expected
bytes.", e);
+
log.debug(sm.getString("rfc6265CookieProcessor.expectedBytes"), e);
}
cookieValue.toBytes();
}
diff --git a/java/org/apache/tomcat/util/modeler/LocalStrings.properties
b/java/org/apache/tomcat/util/modeler/LocalStrings.properties
index 8c0825d81c..90b3af24dc 100644
--- a/java/org/apache/tomcat/util/modeler/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/modeler/LocalStrings.properties
@@ -37,6 +37,8 @@ managedMBean.noSet=Cannot find setter method [{0}] on
resource [{1}]
modules.digesterParseError=Error parsing registry data
modules.readDescriptorsError=Error reading descriptors
+registry.createdServer=Created MBeanServer
+registry.existingServer=Using existing MBeanServer
registry.initError=Error initializing [{0}]
registry.invalidSource=Invalid source specified, must be either URL, File,
Class or InputStream
registry.loadError=Error loading descriptors from [{0}]
@@ -47,3 +49,4 @@ registry.nullBean=Cannot register null bean for [{0}]
registry.objectNameCreateError=Error creating object name
registry.registerError=Error registering MBean
registry.unregisterError=Error unregistering MBean
+registry.unregisterExisting=Unregistering existing component [{0}]
diff --git a/java/org/apache/tomcat/util/modeler/Registry.java
b/java/org/apache/tomcat/util/modeler/Registry.java
index e5034453d7..758b8d5c97 100644
--- a/java/org/apache/tomcat/util/modeler/Registry.java
+++ b/java/org/apache/tomcat/util/modeler/Registry.java
@@ -432,16 +432,15 @@ public class Registry implements RegistryMBean,
MBeanRegistration {
if (server == null) {
synchronized (serverLock) {
if (server == null) {
- long t1 = System.currentTimeMillis();
if (MBeanServerFactory.findMBeanServer(null).size() > 0) {
server =
MBeanServerFactory.findMBeanServer(null).get(0);
if (log.isDebugEnabled()) {
- log.debug("Using existing MBeanServer " +
(System.currentTimeMillis() - t1));
+ log.debug(sm.getString("registry.existingServer"));
}
} else {
server = ManagementFactory.getPlatformMBeanServer();
if (log.isDebugEnabled()) {
- log.debug("Created MBeanServer" +
(System.currentTimeMillis() - t1));
+ log.debug(sm.getString("registry.createdServer"));
}
}
}
@@ -624,7 +623,7 @@ public class Registry implements RegistryMBean,
MBeanRegistration {
if (getMBeanServer().isRegistered(oname)) {
if (log.isDebugEnabled()) {
- log.debug("Unregistering existing component " + oname);
+ log.debug(sm.getString("registry.unregisterExisting",
oname));
}
getMBeanServer().unregisterMBean(oname);
}
diff --git
a/java/org/apache/tomcat/util/net/openssl/panama/LocalStrings.properties
b/java/org/apache/tomcat/util/net/openssl/panama/LocalStrings.properties
index 4a46900aa2..5b4ef5c6ee 100644
--- a/java/org/apache/tomcat/util/net/openssl/panama/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/net/openssl/panama/LocalStrings.properties
@@ -33,6 +33,7 @@ engine.nullName=Null value name
engine.nullValue=Null value
engine.ocspParseError=Error parsing OCSP URLs
engine.ocspRequestError=Error processing OCSP request for URL [{0}]
+engine.ocspResponse=OCSP response for URL [{0}] was [{1}]
engine.openSSLError=OpenSSL error: [{0}] message: [{1}]
engine.oversizedPacket=Encrypted packet is oversized
engine.unsupportedCipher=Unsupported cipher suite: [{0}] [{1}]
diff --git a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java
b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java
index 39874a5011..46cfce2b8a 100644
--- a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java
+++ b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java
@@ -1245,7 +1245,7 @@ public final class OpenSSLEngine extends SSLEngine
implements SSLUtil.ProtocolIn
URL url = (new URI(urlString)).toURL();
ocspResponse = processOCSPRequest(url,
issuer, x509, x509ctx, localArenal);
if (log.isDebugEnabled()) {
- log.debug("OCSP response for URL:
" + urlString + " was " + ocspResponse);
+
log.debug(sm.getString("engine.ocspResponse", urlString, ocspResponse));
}
} catch (MalformedURLException |
URISyntaxException e) {
log.warn(sm.getString("engine.invalidOCSPURL", urlString));
diff --git a/java/org/apache/tomcat/util/threads/LocalStrings.properties
b/java/org/apache/tomcat/util/threads/LocalStrings.properties
index 2c7b85a213..011470bac8 100644
--- a/java/org/apache/tomcat/util/threads/LocalStrings.properties
+++ b/java/org/apache/tomcat/util/threads/LocalStrings.properties
@@ -15,6 +15,8 @@
taskQueue.notRunning=Executor not running, can't force a command into the queue
+taskThread.exiting=Thread exiting on purpose
+
threadPoolExecutor.invalidKeepAlive=Core threads must have positive keep alive
times
threadPoolExecutor.queueFull=Queue capacity is full
threadPoolExecutor.taskRejected=Task [{0}] rejected from [{1}]
diff --git a/java/org/apache/tomcat/util/threads/TaskThread.java
b/java/org/apache/tomcat/util/threads/TaskThread.java
index 5a7e0f373f..b0dbb0a461 100644
--- a/java/org/apache/tomcat/util/threads/TaskThread.java
+++ b/java/org/apache/tomcat/util/threads/TaskThread.java
@@ -18,6 +18,7 @@ package org.apache.tomcat.util.threads;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
+import org.apache.tomcat.util.res.StringManager;
/**
* A Thread implementation that records the time at which it was created.
@@ -26,6 +27,7 @@ import org.apache.juli.logging.LogFactory;
public class TaskThread extends Thread {
private static final Log log = LogFactory.getLog(TaskThread.class);
+ private static final StringManager sm =
StringManager.getManager(TaskThread.class);
private final long creationTime;
public TaskThread(ThreadGroup group, Runnable target, String name) {
@@ -62,7 +64,7 @@ public class TaskThread extends Thread {
} catch(StopPooledThreadException exc) {
//expected : we just swallow the exception to avoid disturbing
//debuggers like eclipse's
- log.debug("Thread exiting on purpose", exc);
+ log.debug(sm.getString("taskThread.exiting"), exc);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]