You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2020/05/04 16:54:00 UTC

[tomcat] branch 7.0.x updated (3a2e922 -> 1b75434)

This is an automated email from the ASF dual-hosted git repository.

markt pushed a change to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git.


    from 3a2e922  Add missing ALv2 headers
     new ce0397c  Backport updates to English strings
     new d975921  Back-port updates to German translations
     new 85e500c  Back-port updates to French translations
     new cc5d8e6  Back-port updates to Japanese translations
     new 5c1810a  Backport updates to Korean translations
     new 1b75434  Backport updates to Chinese translations

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 java/javax/el/LocalStrings_zh_CN.properties        |   1 +
 java/javax/servlet/LocalStrings_zh_CN.properties   |   1 +
 .../servlet/http/LocalStrings_zh_CN.properties     |   2 +
 .../authenticator/LocalStrings_ja.properties       |  32 ++--
 .../authenticator/LocalStrings_zh_CN.properties    |  16 ++
 .../catalina/connector/LocalStrings_fr.properties  |   1 +
 .../catalina/connector/LocalStrings_ja.properties  |   5 +-
 .../catalina/connector/LocalStrings_ko.properties  |   1 +
 .../connector/LocalStrings_zh_CN.properties        |  24 +++
 .../apache/catalina/core/LocalStrings.properties   |  14 +-
 .../catalina/core/LocalStrings_ja.properties       |  35 +++--
 .../catalina/core/LocalStrings_zh_CN.properties    | 105 ++++++++++++-
 .../catalina/deploy/LocalStrings_zh_CN.properties  |   3 +
 .../catalina/filters/LocalStrings_ja.properties    |   6 +-
 .../catalina/filters/LocalStrings_zh_CN.properties |  19 +++
 .../catalina/ha/deploy/LocalStrings_ja.properties  |  18 +--
 .../ha/deploy/LocalStrings_zh_CN.properties        |  19 +++
 .../ha/session/LocalStrings_zh_CN.properties       |  28 ++++
 .../catalina/ha/tcp/LocalStrings_zh_CN.properties  |  10 ++
 .../catalina/loader/LocalStrings_ja.properties     |  10 +-
 .../catalina/loader/LocalStrings_zh_CN.properties  |  20 +++
 .../catalina/manager/LocalStrings_ja.properties    |  15 +-
 .../catalina/manager/LocalStrings_zh_CN.properties |   3 +-
 .../manager/host/LocalStrings_ja.properties        |   6 +-
 .../manager/host/LocalStrings_zh_CN.properties     |   2 +-
 .../catalina/realm/LocalStrings_ja.properties      |  11 +-
 .../catalina/realm/LocalStrings_zh_CN.properties   |  35 +++++
 .../catalina/security/LocalStrings_ja.properties   |   2 +-
 .../security/LocalStrings_zh_CN.properties         |   6 +
 .../catalina/servlets/LocalStrings_ja.properties   |   6 +-
 .../servlets/LocalStrings_zh_CN.properties         |  19 +++
 .../catalina/session/LocalStrings_ja.properties    |  12 +-
 .../catalina/session/LocalStrings_ko.properties    |   2 +
 .../catalina/session/LocalStrings_zh_CN.properties |  27 +++-
 .../catalina/startup/LocalStrings_ja.properties    |  56 +++----
 .../catalina/startup/LocalStrings_ko.properties    |   1 +
 .../catalina/startup/LocalStrings_zh_CN.properties |  59 +++++--
 .../interceptors/LocalStrings_zh_CN.properties     |   3 +
 .../tribes/tipis/LocalStrings_ja.properties        |   2 +-
 .../tribes/tipis/LocalStrings_zh_CN.properties     |   1 +
 .../LocalStrings_zh_CN.properties                  |   2 +-
 .../catalina/users/LocalStrings_ja.properties      |   2 +-
 .../catalina/users/LocalStrings_zh_CN.properties   |   3 +
 .../catalina/util/LocalStrings_ja.properties       |   4 +-
 .../catalina/util/LocalStrings_zh_CN.properties    |  15 ++
 .../catalina/valves/LocalStrings_ja.properties     |  12 +-
 .../catalina/valves/LocalStrings_zh_CN.properties  |  39 +++++
 java/org/apache/coyote/LocalStrings_ja.properties  |   5 +-
 .../apache/coyote/LocalStrings_zh_CN.properties    |   5 +
 .../apache/coyote/ajp/LocalStrings_ja.properties   |   2 +
 .../coyote/ajp/LocalStrings_zh_CN.properties       |   4 +
 .../coyote/http11/LocalStrings_ja.properties       |  24 +--
 .../coyote/http11/LocalStrings_ko.properties       |   1 +
 .../coyote/http11/LocalStrings_zh_CN.properties    |   8 +
 .../http11/filters/LocalStrings_zh_CN.properties   |   2 +
 .../http11/upgrade/LocalStrings_zh_CN.properties   |   4 +
 .../jasper/resources/LocalStrings_de.properties    |   2 +-
 .../jasper/resources/LocalStrings_fr.properties    |  12 +-
 .../jasper/resources/LocalStrings_ja.properties    | 175 +++++++++++----------
 .../jasper/resources/LocalStrings_zh_CN.properties | 119 ++++++++++++--
 java/org/apache/naming/LocalStrings_fr.properties  |   2 +-
 .../apache/naming/LocalStrings_zh_CN.properties    |   5 +
 .../naming/factory/LocalStrings_ja.properties      |   4 +
 .../naming/factory/LocalStrings_zh_CN.properties   |   7 +
 .../webservices}/LocalStrings_zh_CN.properties     |   2 +-
 .../tomcat/util/LocalStrings_zh_CN.properties      |   5 +
 .../tomcat/util/buf/LocalStrings_fr.properties     |   2 +
 .../tomcat/util/buf/LocalStrings_ja.properties     |   4 +-
 .../tomcat/util/buf/LocalStrings_ko.properties     |   2 +
 .../tomcat/util/buf/LocalStrings_zh_CN.properties  |   5 +
 .../tomcat/util/compat/LocalStrings_ja.properties  |   2 +
 .../util/descriptor/LocalStrings_ja.properties     |   2 +-
 .../util/descriptor/LocalStrings_zh_CN.properties  |   5 +
 .../tomcat/util/http/LocalStrings_ja.properties    |   7 +-
 .../tomcat/util/http/LocalStrings_zh_CN.properties |   4 +
 .../util/http/parser/LocalStrings_zh_CN.properties |   3 +
 .../tomcat/util/modeler/LocalStrings_ja.properties |   4 +-
 .../util/modeler/LocalStrings_zh_CN.properties     |   1 +
 .../tomcat/util/scan/LocalStrings_zh_CN.properties |   2 +
 .../tomcat/websocket/LocalStrings_ja.properties    |   7 +-
 .../tomcat/websocket/LocalStrings_zh_CN.properties |  40 +++++
 .../websocket/pojo/LocalStrings_zh_CN.properties   |  10 ++
 .../websocket/server/LocalStrings_ja.properties    |   2 +-
 .../websocket/server/LocalStrings_zh_CN.properties |   6 +
 .../WEB-INF/classes/LocalStrings_ja.properties     |   2 +-
 .../WEB-INF/classes/LocalStrings_zh_CN.properties  |   3 +
 86 files changed, 958 insertions(+), 258 deletions(-)
 copy java/org/apache/catalina/tribes/{transport => util}/LocalStrings_zh_CN.properties (88%)
 copy java/org/apache/{tomcat/util/modeler => naming/factory/webservices}/LocalStrings_zh_CN.properties (93%)


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 05/06: Backport updates to Korean translations

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 5c1810a9cef7db073d391f19a49205049909e4d5
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:53:18 2020 +0100

    Backport updates to Korean translations
---
 java/org/apache/catalina/connector/LocalStrings_ko.properties | 1 +
 java/org/apache/catalina/session/LocalStrings_ko.properties   | 2 ++
 java/org/apache/catalina/startup/LocalStrings_ko.properties   | 1 +
 java/org/apache/coyote/http11/LocalStrings_ko.properties      | 1 +
 java/org/apache/tomcat/util/buf/LocalStrings_ko.properties    | 2 ++
 5 files changed, 7 insertions(+)

diff --git a/java/org/apache/catalina/connector/LocalStrings_ko.properties b/java/org/apache/catalina/connector/LocalStrings_ko.properties
index ac17778..ac95044 100644
--- a/java/org/apache/catalina/connector/LocalStrings_ko.properties
+++ b/java/org/apache/catalina/connector/LocalStrings_ko.properties
@@ -67,6 +67,7 @@ inputBuffer.streamClosed=스트림이 닫혔습니다.
 request.asyncNotSupported=현재 체인의 필터 또는 서블릿이, 비동기 오퍼레이션들을 지원하지 않습니다.
 request.fragmentInDispatchPath=디스패치 경로 [{0}](으)로부터 URI fragment를 제거했습니다.
 request.notAsync=만일 현재의 쓰레드가 비동기 모드에 있지 않다면, 이 메소드를 호출하는 것은 불허됩니다. (즉, isAsyncStarted()가 false를 반환하는 경우)
+request.session.failed=다음 오류로 인해 세션 [{0}]을(를) 로드하지 못했습니다: [{1}]
 
 requestFacade.nullRequest=요청 객체가 이미 참조 해제 되었고, 더 이상 이 facade와 연관되지 않습니다.
 
diff --git a/java/org/apache/catalina/session/LocalStrings_ko.properties b/java/org/apache/catalina/session/LocalStrings_ko.properties
index 2d0bacc..29d0f12 100644
--- a/java/org/apache/catalina/session/LocalStrings_ko.properties
+++ b/java/org/apache/catalina/session/LocalStrings_ko.properties
@@ -75,6 +75,8 @@ standardSession.isNew.ise=isNew: 세션이 이미 무효화 되었습니다.
 standardSession.logoutfail=세션을 만료시킬 때, 사용자를 로그아웃 하는 중 예외 발생
 standardSession.notDeserializable=세션 [{1}]을(를) 위한 세션 속성 [{0}]을(를) 역직렬화할 수 없습니다.
 standardSession.notSerializable=세션 [{1}]을(를) 위한 세션 속성 [{0}]을(를) 직렬화할 수 없습니다.
+standardSession.principalNotDeserializable=세션 [{0}]을(를) 위한 Principal 객체를 역직렬화할 수 없습니다.
+standardSession.principalNotSerializable=세션 [{0}]을(를) 위한 Principal 객체를 직렬화할 수 없습니다.
 standardSession.removeAttribute.ise=removeAttribute: 세션이 이미 무효화되었습니다.
 standardSession.sessionEvent=세션 이벤트 리스너가 예외를 발생시켰습니다.
 standardSession.setAttribute.iae=setAttribute: 직렬화할 수 없는 속성 [{0}]
diff --git a/java/org/apache/catalina/startup/LocalStrings_ko.properties b/java/org/apache/catalina/startup/LocalStrings_ko.properties
index fe3870f..2be5457 100644
--- a/java/org/apache/catalina/startup/LocalStrings_ko.properties
+++ b/java/org/apache/catalina/startup/LocalStrings_ko.properties
@@ -126,6 +126,7 @@ tomcat.addWebapp.conflictChild=이미 존재하는 컨텍스트 [{2}](으)로 
 tomcat.addWebapp.conflictFile=이미 존재하는 파일 [{2}](으)로 인하여, [{0}]에 위치한 WAR를 컨텍스트 경로 [{1}](으)로 배치할 수 없습니다.
 tomcat.baseDirMakeFail=Base 디렉토리로서 사용하기 위한, 디렉토리 [{0}]을(를) 생성할 수 없습니다.
 tomcat.baseDirNotDir=base 디렉토리를 위해 지정된 위치 [{0}]은(는) 디렉토리가 아닙니다.
+tomcat.defaultMimeTypeMappingsFail=기본 MIME 타입들을 로드할 수 없습니다.
 
 userConfig.database=사용자 데이터베이스를 로드하는 중 예외 발생
 userConfig.deploy=사용자 [{0}]을(를) 위해 웹 애플리케이션을 배치합니다.
diff --git a/java/org/apache/coyote/http11/LocalStrings_ko.properties b/java/org/apache/coyote/http11/LocalStrings_ko.properties
index 17ec6f8..fb6130c 100644
--- a/java/org/apache/coyote/http11/LocalStrings_ko.properties
+++ b/java/org/apache/coyote/http11/LocalStrings_ko.properties
@@ -35,6 +35,7 @@ http11processor.socket.info=소켓에 대한 정보를 얻는 중 예외 발생
 
 iib.eof.error=소켓에서 예기치 않은 EOF를 읽었습니다.
 iib.invalidHttpProtocol=HTTP 프로토콜에서 유효하지 않은 문자가 발견되었습니다.
+iib.invalidPhase=파싱 국면 [{0}]에서, 유효하지 않은 HTTP 요청 라인 오류
 iib.invalidRequestTarget=요청 타겟에서 유효하지 않은 문자가 발견되었습니다. 유효한 문자들은 RFC 7230과 RFC 3986에 정의되어 있습니다.
 iib.invalidheader=HTTP 헤더 행 [{0}]이(가) RFC 7230을 준수하지 않아, 무시되었습니다.
 iib.invalidmethod=메소드 이름에 유효하지 않은 문자가 발견되었습니다. HTTP 메소드 이름은 유효한 토큰이어야 합니다.
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings_ko.properties b/java/org/apache/tomcat/util/buf/LocalStrings_ko.properties
index d49aa5d..472d947 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings_ko.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings_ko.properties
@@ -15,6 +15,8 @@
 
 b2cConverter.unknownEncoding=문자 인코딩 [{0}]은(는) 지원되지 않습니다.
 
+encodedSolidusHandling.invalid=해당 값 [{0}]은(는) 인식되지 않습니다.
+
 uDecoder.convertHexDigit.notHex=[{0}]은(는) 16진수 숫자가 아닙니다.
 uDecoder.eof=파일의 끝 (EOF)
 uDecoder.noSlash=인코딩된 슬래시 문자는 허용되지 않습니다.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 01/06: Backport updates to English strings

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit ce0397c7788b4b6d17fea7f44adbeaf3b99ee090
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:52:12 2020 +0100

    Backport updates to English strings
---
 java/org/apache/catalina/core/LocalStrings.properties | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/java/org/apache/catalina/core/LocalStrings.properties b/java/org/apache/catalina/core/LocalStrings.properties
index 8db3ce7..7798b9e 100644
--- a/java/org/apache/catalina/core/LocalStrings.properties
+++ b/java/org/apache/catalina/core/LocalStrings.properties
@@ -70,10 +70,10 @@ applicationServletRegistration.setServletSecurity.ise=Security constraints can''
 
 applicationSessionCookieConfig.ise=Property [{0}] cannot be added to SessionCookieConfig for context [{1}] as the context has been initialised
 
-aprListener.aprDestroy=Failed shutdown of APR based Apache Tomcat Native library
-aprListener.aprInit=The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [{0}]
-aprListener.aprInitDebug=The APR based Apache Tomcat Native library could not be found using names [{0}] on the java.library.path [{1}]. The errors reported were [{2}]
-aprListener.aprInitError=The APR based Apache Tomcat Native library failed to load. The error reported was [{0}]
+aprListener.aprDestroy=Failed shutdown of the Apache Tomcat Native library
+aprListener.aprInit=The Apache Tomcat Native library which allows using OpenSSL was not found on the java.library.path: [{0}]
+aprListener.aprInitDebug=The Apache Tomcat Native library could not be found using names [{0}] on the java.library.path [{1}]. The errors reported were [{2}]
+aprListener.aprInitError=The Apache Tomcat Native library failed to load. The error reported was [{0}]
 aprListener.currentFIPSMode=Current FIPS mode: [{0}]
 aprListener.enterAlreadyInFIPSMode=AprLifecycleListener is configured to force entering FIPS mode, but library is already in FIPS mode [{0}]
 aprListener.flags=APR capabilities: IPv6 [{0}], sendfile [{1}], accept filters [{2}], random [{3}].
@@ -84,9 +84,9 @@ aprListener.initializingFIPS=Initializing FIPS mode...
 aprListener.requireNotInFIPSMode=AprLifecycleListener is configured to require the library to already be in FIPS mode, but it was not in FIPS mode
 aprListener.skipFIPSInitialization=Already in FIPS mode; skipping FIPS initialization.
 aprListener.sslInit=Failed to initialize the SSLEngine.
-aprListener.tcnInvalid=An incompatible version [{0}] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [{1}]
-aprListener.tcnValid=Loaded APR based Apache Tomcat Native library [{0}] using APR version [{1}].
-aprListener.tcnVersion=An older version [{0}] of the APR based Apache Tomcat Native library is installed, while Tomcat recommends a minimum version of [{1}]
+aprListener.tcnInvalid=An incompatible version [{0}] of the Apache Tomcat Native library is installed, while Tomcat requires version [{1}]
+aprListener.tcnValid=Loaded Apache Tomcat Native library [{0}] using APR version [{1}].
+aprListener.tcnVersion=An older version [{0}] of the Apache Tomcat Native library is installed, while Tomcat recommends a minimum version of [{1}]
 aprListener.tooLateForFIPSMode=Cannot setFIPSMode: SSL has already been initialized
 aprListener.tooLateForSSLEngine=Cannot setSSLEngine: SSL has already been initialized
 aprListener.tooLateForSSLRandomSeed=Cannot setSSLRandomSeed: SSL has already been initialized


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 04/06: Back-port updates to Japanese translations

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit cc5d8e6a93e977c70046a5604b66e3b80de40098
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:52:59 2020 +0100

    Back-port updates to Japanese translations
---
 .../authenticator/LocalStrings_ja.properties       |  32 ++--
 .../catalina/connector/LocalStrings_ja.properties  |   5 +-
 .../catalina/core/LocalStrings_ja.properties       |  35 +++--
 .../catalina/filters/LocalStrings_ja.properties    |   6 +-
 .../catalina/ha/deploy/LocalStrings_ja.properties  |  18 +--
 .../catalina/loader/LocalStrings_ja.properties     |  10 +-
 .../catalina/manager/LocalStrings_ja.properties    |  15 +-
 .../manager/host/LocalStrings_ja.properties        |   6 +-
 .../catalina/realm/LocalStrings_ja.properties      |  11 +-
 .../catalina/security/LocalStrings_ja.properties   |   2 +-
 .../catalina/servlets/LocalStrings_ja.properties   |   6 +-
 .../catalina/session/LocalStrings_ja.properties    |  12 +-
 .../catalina/startup/LocalStrings_ja.properties    |  56 +++----
 .../tribes/tipis/LocalStrings_ja.properties        |   2 +-
 .../catalina/users/LocalStrings_ja.properties      |   2 +-
 .../catalina/util/LocalStrings_ja.properties       |   4 +-
 .../catalina/valves/LocalStrings_ja.properties     |  12 +-
 java/org/apache/coyote/LocalStrings_ja.properties  |   5 +-
 .../apache/coyote/ajp/LocalStrings_ja.properties   |   2 +
 .../coyote/http11/LocalStrings_ja.properties       |  24 +--
 .../jasper/resources/LocalStrings_ja.properties    | 175 +++++++++++----------
 .../naming/factory/LocalStrings_ja.properties      |   4 +
 .../tomcat/util/buf/LocalStrings_ja.properties     |   4 +-
 .../tomcat/util/compat/LocalStrings_ja.properties  |   2 +
 .../util/descriptor/LocalStrings_ja.properties     |   2 +-
 .../tomcat/util/http/LocalStrings_ja.properties    |   7 +-
 .../tomcat/util/modeler/LocalStrings_ja.properties |   4 +-
 .../tomcat/websocket/LocalStrings_ja.properties    |   7 +-
 .../websocket/server/LocalStrings_ja.properties    |   2 +-
 .../WEB-INF/classes/LocalStrings_ja.properties     |   2 +-
 30 files changed, 262 insertions(+), 212 deletions(-)

diff --git a/java/org/apache/catalina/authenticator/LocalStrings_ja.properties b/java/org/apache/catalina/authenticator/LocalStrings_ja.properties
index 5301f02..1205465 100644
--- a/java/org/apache/catalina/authenticator/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/authenticator/LocalStrings_ja.properties
@@ -33,7 +33,7 @@ basicAuthenticator.invalidCharset=指定できる値は、null、空の文字列
 
 digestAuthenticator.cacheRemove=有効なエントリがクライアントのnonceキャッシュから削除され、新しいエントリのためのスペースが確保されました。 リプレイ攻撃が可能になりました。 リプレイ攻撃の可能性を防ぐには、nonceValidityを減らすか、nonceCacheSizeを増やしてください。 このタイプの警告は5分間表示されなくなります。
 
-formAuthenticator.forwardErrorFail=予期せぬ異常によりエラーページへ転送します。
+formAuthenticator.forwardErrorFail=エラーページへ転送中の予期せぬエラー
 formAuthenticator.forwardLogin=リクエストメソッドGETを使用してコンテキスト[{3}]のページ[{2}]にメソッド[{1}]で行われた[{0}]の要求をフォワードします。
 formAuthenticator.forwardLoginFail=ログインページへの転送での予期しないエラー
 formAuthenticator.noErrorPage=コンテキスト[{0}]のFORM認証にエラーページが定義されていません
@@ -41,27 +41,27 @@ formAuthenticator.noLoginPage=コンテキスト[{0}]のFORM認証にログイ
 
 singleSignOn.debug.associate=SSOはアプリケーションセッション[{1}]をSSOセッション[{0}]に関連付けます
 singleSignOn.debug.associateFail=SSOセッション[{1}]が存在しないため、SSOはアプリケーションセッション[{0}]を関連付けられませんでした。
-singleSignOn.debug.cookieCheck=SSOがSSOクッキーをチェックします
+singleSignOn.debug.cookieCheck=SSOはSSOクッキーをチェックしています
 singleSignOn.debug.cookieNotFound=SSOはSSO Cookieを検出しませんでした。
-singleSignOn.debug.deregister=SSOセッション[{1}]に関連付けられたアプリケーションセッション[{0}]を期限切れにします。
+singleSignOn.debug.deregister=SSOセッション[{1}]に関連付けられたアプリケーションセッション[{0}]を破棄します。
 singleSignOn.debug.deregisterFail=キャッシュにないため、SSOセッション[{0}]の登録を解除できませんでした。
-singleSignOn.debug.deregisterNone=SSOセッション[{0}]の登録を解除しましたが、関連するアプリケーションセッションが見つかりませんでした。
+singleSignOn.debug.deregisterNone=SSOセッション[{0}]の登録を解除しましたが、関連付けられたアプリケーションセッションは見つかりませんでした。
 singleSignOn.debug.hasPrincipal=SSOが以前に認証されたプリンシパル[{0}]を検出しました
-singleSignOn.debug.invoke=[{0}]に対するSSO処理リクエスト
-singleSignOn.debug.principalCheck=SSOセッションのキャッシュされたプリンシパルを探すSSO [{0}]
+singleSignOn.debug.invoke=SSO は [{0}] に対するリクエストを処理しています
+singleSignOn.debug.principalCheck=SSO は SSO セッション [{0}] のキャッシュされたプリンシパルを探索しています
 singleSignOn.debug.principalFound=SSO のキャッシュされたプリンシパル [{0}] を取得しました。認証タイプは [{1}] です。
 singleSignOn.debug.principalNotFound=SSOはキャッシュされたプリンシパルを検出しませんでした。 セッション[{0}]のSSO Cookieを消去しています。
-singleSignOn.debug.register=認証タイプ[{2}]のユーザー[{1}]のSSOセッション[{0}]を登録しているSSO
-singleSignOn.debug.removeSession=SSOセッション[{1}]からのアプリケーションセッション[{0}]の削除
-singleSignOn.debug.sessionLogout=SSOセッション[{0}]とアプリケーションセッション[{1}]のログアウトを処理するSSO。
-singleSignOn.debug.sessionTimeout=SSOはSSOセッション[{0}]とアプリケーションセッション[{1}]のタイムアウト処理中
+singleSignOn.debug.register=SSOは認証タイプ[{2}]のユーザー[{1}]のSSOセッション[{0}]を登録しています
+singleSignOn.debug.removeSession=SSOはSSOセッション[{1}]からアプリケーションセッション[{0}]を削除しています
+singleSignOn.debug.sessionLogout=SSOはSSOセッション[{0}]とアプリケーションセッション[{1}]をログアウト処理しています
+singleSignOn.debug.sessionTimeout=SSOはSSOセッション[{0}]とアプリケーションセッション[{1}]のタイムアウトを処理しています
 singleSignOn.debug.update=SSOはSSOセッション[{0}]を認証タイプ[{1}]に更新します。
-singleSignOn.sessionExpire.contextNotFound=Contextが見つからないため、SSOはセッション[{0}]を期限切れにできません
-singleSignOn.sessionExpire.engineNull=Engine がNullだったため、SSOはセッション[{0}]を期限切れにできません。
-singleSignOn.sessionExpire.hostNotFound=ホストが見つからないため SSO セッション [{0}] を失効できません。
-singleSignOn.sessionExpire.managerError=セッションを検索するときにManagerが例外をスローしたため、SSOはセッション[{0}]を期限切れにできません
-singleSignOn.sessionExpire.managerNotFound=Managerが見つからなかったので、SSOはセッション[{0}]を期限切れにできません。
-singleSignOn.sessionExpire.sessionNotFound=セッションが見つかりませんでしたので、SSOはセッション[{0}]を期限切れにできません。
+singleSignOn.sessionExpire.contextNotFound=Contextが見つからないため、SSOはセッション[{0}]を破棄できません
+singleSignOn.sessionExpire.engineNull=Engine がNullだったため、SSOはセッション[{0}]を破棄できません。
+singleSignOn.sessionExpire.hostNotFound=ホストが見つからないため SSO セッション [{0}] を破棄できません。
+singleSignOn.sessionExpire.managerError=セッションを検索するときにManagerが例外をスローしたため、SSOはセッション[{0}]を破棄できません
+singleSignOn.sessionExpire.managerNotFound=Managerが見つからなかったので、SSOはセッション[{0}]を破棄できません。
+singleSignOn.sessionExpire.sessionNotFound=セッションが見つからないため、SSOはセッション[{0}]を破棄できません。
 
 spnegoAuthenticator.authHeaderNoToken=クライアントから受信した Negoiate 認証ヘッダにはトークンがありません。
 spnegoAuthenticator.authHeaderNotNego=クライアントから受信した認証ヘッダーは Negotiate から始まっていません。
diff --git a/java/org/apache/catalina/connector/LocalStrings_ja.properties b/java/org/apache/catalina/connector/LocalStrings_ja.properties
index 6c578c8..52e85ca 100644
--- a/java/org/apache/catalina/connector/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/connector/LocalStrings_ja.properties
@@ -46,7 +46,7 @@ coyoteRequest.getReader.ise=getInputStream()はこのリクエストに対して
 coyoteRequest.gssLifetimeFail=ユーザープリンシパル [{0}] の残りの寿命(秒単位) を取得できません。
 coyoteRequest.listenerStart=クラス [{0}] のリスナインスタンスに初期化イベントを送信中に例外が投げられました
 coyoteRequest.listenerStop=クラス [{0}] のリスナインスタンスに廃棄イベントを送信中に例外が投げられました
-coyoteRequest.maxPostSizeExceeded=マルチパートリクエストには、関連するコネクタで設定されたmaxPostSizeの制限を超えたパラメータデータ(アップロードされたファイルを除く)が含まれていました。
+coyoteRequest.maxPostSizeExceeded=マルチパートリクエストには、関連付けられたコネクタで設定されたmaxPostSizeの制限を超えたパラメータデータ(アップロードされたファイルを除く)が含まれていました。
 coyoteRequest.parseParameters=POST パラメーターの処理中に例外を投げました。
 coyoteRequest.postTooLarge=POSTされたデータが大きすぎたので、パラメータが構文解析できませんでした。そのアプリケーションが巨大なPOSTを受け付けねばならない場合には、これを解決するためにコネクタのmaxPostSize属性を使用してください。
 coyoteRequest.sendfileNotCanonical=sendfile に指定されたファイル [{0}] の正式名を取得できません。
@@ -73,9 +73,10 @@ mapperListener.registerWrapper=コンテキスト [{1}] にラッパ [{0}] を
 mapperListener.unregisterContext=コンテキスト [{0}] の登録を抹消します
 
 request.asyncNotSupported=現在のチェーンのフィルタまたはサーブレットは非同期操作をサポートしていません。
+request.fragmentInDispatchPath=ディスパッチパス [{0}] 中のフラグメントは除去されました
 request.notAsync=非同期モードではないリクエストでこのメソッドを呼び出すことはできません。(例えば isAsyncStarted() が false を返す場合)
 
-requestFacade.nullRequest=リクエストオブジェクトはリサイクルされこのファサードに関連付けられなくなりました。
+requestFacade.nullRequest=リクエストオブジェクトは回収されこのファサードに関連付けられなくなりました。
 
 response.sendRedirectFail=[{0}] へのリダイレクトが失敗しました。
 
diff --git a/java/org/apache/catalina/core/LocalStrings_ja.properties b/java/org/apache/catalina/core/LocalStrings_ja.properties
index fb8c9c1..924684f 100644
--- a/java/org/apache/catalina/core/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/core/LocalStrings_ja.properties
@@ -26,7 +26,7 @@ applicationContext.illegalDispatchPath=アプリケーションが、エンコ
 applicationContext.invalidFilterName=無効なフィルタ名[{0}]のためにフィルタ定義を追加できません。
 applicationContext.invalidServletName=不正なサーブレット名 [{0}] のため、サーブレット定義を追加できません。
 applicationContext.lookup.error=コンテキスト[{1}]でリソース[{0}]の場所を特定できませんでした。
-applicationContext.mapping.error=マッピング中のエラーです
+applicationContext.mapping.error=マッピング中のエラー
 applicationContext.requestDispatcher.iae=パス [{0}] が"/"文字で始まりません
 applicationContext.resourcePaths.iae=パス[{0}]は「/」文字で始まっていません。
 applicationContext.role.iae=コンテキスト[{0}]を宣言する個々のロールは、nullでも空の文字列でもありません。
@@ -56,14 +56,16 @@ applicationFilterConfig.release=タイプ[{1}]の名前[{0}]のフィルタを
 applicationFilterRegistration.nullInitParam=NULLの名前や値のためにフィルターの初期化パラメーターを設定できません。 名前[{0}]、値[{1}]
 applicationFilterRegistration.nullInitParams=キー [{0}] または値 [{1}] のいずれかが null のためフィルターの初期化パラメータを設定できませんでした。
 
+applicationHttpRequest.fragmentInDispatchPath=ディスパッチパス [{0}] 中のフラグメントは除去されました
+
 applicationRequest.badParent=親のリクエスト実装を配置できません
 applicationRequest.badRequest=リクエストがjavax.servlet.ServletRequestWrapperではありません
 
 applicationResponse.badParent=親のレスポンス実装を配置できません
 applicationResponse.badResponse=レスポンスがjavax.servlet.ServletResponseWrapperではありません
 
-applicationServletRegistration.setServletSecurity.iae=サーブレット[{0}]に指定されたNULL制約が、名前[{1}]のコンテキストにデプロイされました
-applicationServletRegistration.setServletSecurity.ise=コンテキストが既に初期化されているため、名前[{1}]のコンテキストにデプロイされたサーブレット[{0}]にセキュリティ制約を追加できません。
+applicationServletRegistration.setServletSecurity.iae=サーブレット[{0}]に指定されたNULL制約が、名前[{1}]のコンテキストに配備されました
+applicationServletRegistration.setServletSecurity.ise=コンテキストが既に初期化されているため、名前[{1}]のコンテキストに配備されたサーブレット[{0}]にセキュリティ制約を追加できません。
 
 applicationSessionCookieConfig.ise=コンテキスト[{1}]が初期化済みなので、プロパティ[{0}]をSessionCookieConfigに追加することはできません。
 
@@ -90,7 +92,12 @@ aprListener.tooLateForSSLRandomSeed=setSSLRandomSeedできません:SSLは既
 aprListener.wrongFIPSMode=AprLifecycleListener の設定 FIPSMode に予期せぬ値 [{0}] が指定されました。
 
 asyncContextImpl.asyncDispachError=非同期ディスパッチの処理中にエラーが発生しました。
+asyncContextImpl.asyncRunnableError=AsyncContext.start() による非同期 Runnable 処理中のエラー
 asyncContextImpl.dispatchingStarted=非同期ディスパッチ操作は既に呼び出されています。 同じ非同期サイクル内の追加の非同期ディスパッチ操作は許可されません。
+asyncContextImpl.fireOnComplete=非同期リスナに onComploete() イベントを発火しました
+asyncContextImpl.fireOnError=非同期リスナに onError() イベントを発火しました
+asyncContextImpl.fireOnStartAsync=非同期リスナに onStartAsync() イベントを発火しました
+asyncContextImpl.fireOnTimeout=非同期リスナに onTimeout() イベントを発火しました
 asyncContextImpl.noAsyncDispatcher=ServletContextから返されたディスパッチャは非同期ディスパッチをサポートしていません。
 asyncContextImpl.onCompleteError=クラス [{0}] のリスナーオブジェクトで onComplete() の呼び出しに失敗しました。
 asyncContextImpl.onErrorError=クラス [{0}] のリスナーオブジェクトで onError() の呼び出しに失敗しました。
@@ -122,9 +129,9 @@ filterChain.servlet=サーブレットの実行により例外を投げました
 jreLeakListener.authPolicyFail=javax.security.auth.Policyクラスのメモリリークの防止を試みる際にエラーが発生しました。
 jreLeakListener.classToInitializeFail=Tomcat起動中に可能なメモリーリークを防止するためのクラス[{0}]をロードすることに失敗しました。
 jreLeakListener.gcDaemonFail=Tomcat の開始時に潜在的なメモリーリークを防ぐ GC デーモンスレッドの作成を開始できませんでした。Sun の JVM ではない可能性があります。
-jreLeakListener.jarUrlConnCacheFail=デフォルトでJar URL接続のキャッシュを無効にできませんでした。
+jreLeakListener.jarUrlConnCacheFail=既定でJar URL接続のキャッシュを無効にできませんでした。
 jreLeakListener.ldapPoolManagerFail=Tomcatの起動時にメモリリークを防ぐ為にcom.sun.jndi.ldap.LdapPoolManagerクラスの作成をトリガーすることができませんでした。 これはSun以外のJVMであることが予想されます。
-jreLeakListener.xmlParseFail=XML解析のメモリリークを防止しようとする際にエラーが発しました。
+jreLeakListener.xmlParseFail=XML解析中のメモリリークを防止を試行する際のエラー
 
 naming.addEnvEntry=環境変数 [{0}] を追加します。
 naming.addResourceEnvRef=リソースenv ref [{0}]を追加しています。
@@ -146,9 +153,9 @@ standardContext.cluster.noManager=Managerが見つかりませんでした。 Cl
 standardContext.configurationFail=コンテキストが正しく設定されていないとマークされた1つ以上のコンポーネント
 standardContext.duplicateListener=リスナー[{0}]は、すでにこのコンテキストに構成されています。 重複定義は無視されました。
 standardContext.errorPage.error=エラーページの位置 [{0}] は''/''で始まらなければいけません
-standardContext.errorPage.required=ErrorPageがnullではいけません
-standardContext.errorPage.warning=警告: Servlet 2.4ではエラーページの位置 [{0}] は''/''で始まらなければいけません
-standardContext.extensionValidationError=必要なアプリケーション拡張の検証中にエラーが発生しました
+standardContext.errorPage.required=ErrorPage は null に出来ません
+standardContext.errorPage.warning=警告: Servlet 2.4ではエラーページの場所 [{0}] は''/''で始まらなければいけません
+standardContext.extensionValidationError=アプリケーション拡張に必要な検証を試行中のエラー
 standardContext.filterFail=1つまたは複数のフィルタを開始できませんでした。 完全な詳細は適切なコンテナログファイルにあります。
 standardContext.filterMap.either=フィルタマッピングは<url-pattern>又は<servlet-name>のどちらかを指定しなければいけません
 standardContext.filterMap.name=フィルタマッピングは未知のフィルタ名 [{0}] を指定しました
@@ -193,7 +200,7 @@ standardContext.requestListenerConfig.added=リクエストリスナバルブを
 standardContext.requestListenerConfig.error=リクエストリスナバルブ追加中の例外です: [{0}]
 standardContext.requestListenerStartFailed=リクエストリスナバルブの起動に失敗しました
 standardContext.resourcesInit=静的リソースの初期化エラー
-standardContext.resourcesStart=静的リソースの起動中のエラーです
+standardContext.resourcesStart=静的リソース開始中のエラー
 standardContext.resourcesStop=静的リソースの停止中のエラー
 standardContext.sciFail=ServletContainerInitializer の処理中にエラーが発生しました。
 standardContext.securityConstraint.mixHttpMethod=1つの Web リソースコレクションに <http-method> と <http-method-omission> を両方指定することはできません。
@@ -279,8 +286,8 @@ standardServer.accept.security=シャットダウンコマンドを受信する
 standardServer.accept.timeout=シャットダウンコマンドをリスンするソケットは、accept()の呼び出し後に予期しないタイムアウト[{0}]ミリ秒を経験しました。 これはバグ56684の一例ですか?
 standardServer.invalidShutdownCommand=不正なシャットダウンコマンド [{0}] を受信しました。
 standardServer.shutdownViaPort=有効なシャットダウンコマンドがシャットダウンポート経由で受信されました。 サーバーインスタンスを停止します。
-standardServer.storeConfig.contextError=コンテキスト [{0}] の構成の格納時にエラーが発生しました。
-standardServer.storeConfig.error=サーバー構成を格納できません。
+standardServer.storeConfig.contextError=コンテキスト [{0}] の構成格納中のエラー
+standardServer.storeConfig.error=サーバー構成格納中のエラー
 
 standardService.start.name=サービス [{0}] を起動します
 standardService.stop.name=サービス [{0}] を停止します
@@ -297,7 +304,7 @@ standardWrapper.exception1=サーブレット例外が発生しました
 standardWrapper.exception2=例外の報告:
 standardWrapper.exception3=根本の原因:
 standardWrapper.initException=サーブレット [{0}] のServlet.init()が例外を投げました
-standardWrapper.instantiate=サーブレットクラス [{0}] を初期化中にエラーが発生しました
+standardWrapper.instantiate=サーブレットクラス [{0}] を初期化中のエラー
 standardWrapper.isUnavailable=サーブレット [{0}] は現在利用できません
 standardWrapper.jasperLoader=サーブレット [{0}] にJasperクラスローダを使用します
 standardWrapper.jspFile.format=JSPファイル [{0}] が''/''文字で始まっていません
@@ -314,7 +321,7 @@ standardWrapper.serviceExceptionRoot=パス[{1}]を持つコンテキスト内
 standardWrapper.unavailable=サーブレット [{0}] を利用不可能にマークします
 standardWrapper.unloadException=サーブレット [{0}] がunload()例外を投げました
 standardWrapper.unloading=サーブレット [{0}] がロードされていないので、割り当てることができません
-standardWrapper.waiting=[{0}] インスタンスが割り当て解除されるのを待っています
+standardWrapper.waiting=サーブレット [{1}] の [{0}] インスタンスが割り当て解除されるのを待機しています
 
 threadLocalLeakPreventionListener.containerEvent.error=コンテナーイベント [{0}] の処理中に例外が発生しました。
-threadLocalLeakPreventionListener.lifecycleEvent.error=ライフサイクルイベント [{0}] を処理中に例外が発生しました。
+threadLocalLeakPreventionListener.lifecycleEvent.error=ライフサイクルイベント [{0}] を処理中の例外
diff --git a/java/org/apache/catalina/filters/LocalStrings_ja.properties b/java/org/apache/catalina/filters/LocalStrings_ja.properties
index 1f6de03..11e25fe 100644
--- a/java/org/apache/catalina/filters/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/filters/LocalStrings_ja.properties
@@ -29,7 +29,7 @@ expiresFilter.exceptionProcessingParameter=構成パラメータ[{0}]:[{1}]処
 expiresFilter.expirationHeaderAlreadyDefined=レスポンスステータス[{1}]がコンテンツタイプ[{2}]のリクエスト[{0}、expirationヘッダーがすでに定義されています。
 expiresFilter.filterInitialized=設定[{0}]で初期化されたFilter
 expiresFilter.invalidDurationNumber=ディレクティブ[{1}]の無効な期間(number)[{0}]
-expiresFilter.invalidDurationUnit=  ディレクティブ[{1}]で期間ユニットが無効です。(years|months|weeks|days|hours|minutes|seconds) [{0}] \n
+expiresFilter.invalidDurationUnit=ディレクティブ [{1}] で期間の単位が無効です。(years|months|weeks|days|hours|minutes|seconds) [{0}]
 expiresFilter.noDurationFound=ディレクティブ[{0}]にDuration が見つかりません
 expiresFilter.noDurationUnitAfterAmount=ディレクティブ[{1}]のamount[{0}]の後にDuration 単位が見つかりません。
 expiresFilter.noExpirationConfigured=リクエスト [{0}] に対するレスポンスは応答コード [{1} コンテントタイプ [{2}] です。有効期限は未設定です。
@@ -42,7 +42,7 @@ expiresFilter.startingPointInvalid=ディレクティブ[{1}]の無効な開始
 expiresFilter.startingPointNotFound=ディレクティブ[{0}]に開始点(access|now|modification|a<seconds>|m<seconds>)が見つかりません
 expiresFilter.unknownParameterIgnored=値[{1}]を持つ未知のパラメータ[{0}]は無視されます!
 expiresFilter.unsupportedStartingPoint=[{0}] は未対応の開始点です。
-expiresFilter.useDefaultConfiguration=コンテンツタイプ[{1}]にデフォルト[{0}]を使用すると[{2}]が返されます。
+expiresFilter.useDefaultConfiguration=コンテンツタイプ[{1}]に既定[{0}]を使用すると[{2}]が返されます。
 expiresFilter.useMatchingConfiguration=content-type[{2}]が[{3}]を返すため、[{1}]と一致する[{0}]を使用します
 
 filterbase.noSuchProperty=[{1}]タイプのフィルタにはプロパティ[{0}]が定義されていません。
@@ -55,6 +55,8 @@ httpHeaderSecurityFilter.committed=HTTPヘッダーセキュリティフィル
 remoteCidrFilter.invalid=[{0}] に不正な値が指定されました。詳細は直前のメッセージを参照してください。
 remoteCidrFilter.noRemoteIp=クライアントは IP アドレスを持っていません。リクエストを拒否します。
 
+remoteIpFilter.invalidHostHeader=HTTP ヘッダ [{1}] 中の Host に無効な値 [{0}] が見つかりました
+remoteIpFilter.invalidHostWithPort=HTTP ヘッダ [{1}] 中の Host の値 [{0}] はポート番号を含んでいますが無視されます
 remoteIpFilter.invalidNumber=パラメータ[{0}]: [{1}]に不正な番号があります。
 
 requestFilter.deny=プロパティ [{1}] に従い  [{0}] へのリクエストを拒否しました。
diff --git a/java/org/apache/catalina/ha/deploy/LocalStrings_ja.properties b/java/org/apache/catalina/ha/deploy/LocalStrings_ja.properties
index 887abe8..46f11f4 100644
--- a/java/org/apache/catalina/ha/deploy/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/ha/deploy/LocalStrings_ja.properties
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-farmWarDeployer.alreadyDeployed=webapp [{0}]は既にデプロイされています。
+farmWarDeployer.alreadyDeployed=webapp [{0}]は既に配備されています。
 farmWarDeployer.deleteFail=[{0}] を削除できません。
 farmWarDeployer.deployEnd=[{0}]からの配備が完了しました。
 farmWarDeployer.fileCopyFail=[{0}] から [{1}] へコピーできません。
@@ -23,25 +23,25 @@ farmWarDeployer.mbeanNameFail=エンジン[{0}]とホスト[{1}]のMBeanオブ
 farmWarDeployer.modInstall=[{1}]からwebapp [{0}]をインストールしています。
 farmWarDeployer.modInstallFail=WAR ファイルをインストールできませんでした。
 farmWarDeployer.msgIoe=ファームデプロイファイルメッセージの読み取りに失敗しました。
-farmWarDeployer.msgRxDeploy=クラスタ展開パス[{0}]、WAR[{1}]を受信しました。
-farmWarDeployer.msgRxUndeploy=パス[{0}]からクラスタの展開解除を受信しました。
+farmWarDeployer.msgRxDeploy=クラスタ配備パス[{0}]、WAR[{1}]を受信しました。
+farmWarDeployer.msgRxUndeploy=パス[{0}]からクラスタの配備解除を受信しました。
 farmWarDeployer.removeFailLocal=[{0}]からのローカル削除に失敗しました
 farmWarDeployer.removeFailRemote=ローカルの [{0}] を削除できませんでした。他のマネージャーノードでサービス中です !
 farmWarDeployer.removeLocal=webapp [{0}]を削除しています
 farmWarDeployer.removeLocalFail=WAR ファイルを削除できません。
 farmWarDeployer.removeStart=Webアプリケーション[{0}]のクラスタ削除。
-farmWarDeployer.removeTxMsg=コンテキスト [{0}] からクラスターに配置解除メッセージを送信しました。
+farmWarDeployer.removeTxMsg=コンテキスト [{0}] からクラスターに配備解除メッセージを送信しました。
 farmWarDeployer.renameFail=[{0}] から [{1}] へ名前を変更できません。
-farmWarDeployer.sendEnd=クラスタWarデプロイメント パス[{0}]を送信しました。WAR[{1}]を完了しました。
+farmWarDeployer.sendEnd=クラスタWar配備 パス[{0}]を送信しました。WAR[{1}]を完了しました。
 farmWarDeployer.sendFragment=コンテキスト [{0}] の war [{1}] をクラスターメンバー [{2}] へ送信します。
-farmWarDeployer.sendStart=クラスタWar展開パス[{0}]を送信し、War[{1}]を開始しました。
+farmWarDeployer.sendStart=クラスタWar配備パス[{0}]を送信し、War[{1}]を開始しました。
 farmWarDeployer.servicingDeploy=アプリケーション [{0}] はすでにサービスを開始しています。もう一度 WAR ファイル [{1}] を更新してください。
 farmWarDeployer.servicingUndeploy=アプリケーション [{0}] はサービス中のためバックアップクラスタノードから削除できません。
 farmWarDeployer.started=クラスターの FarmWarDeployer を開始しました。
 farmWarDeployer.stopped=Cluster FarmWarDeployer が停止しました。
-farmWarDeployer.undeployEnd=コンテキスト [{0}] の配置解除が完了しました。
-farmWarDeployer.undeployLocal=ローカルコンテキスト [{0}] を配置解除します。
-farmWarDeployer.watchDir=クラスタデプロイメントの監視[{0}]が変更されています。
+farmWarDeployer.undeployEnd=コンテキスト [{0}] の配備解除が完了しました。
+farmWarDeployer.undeployLocal=ローカルコンテキスト [{0}] を配備解除します。
+farmWarDeployer.watchDir=クラスタ配備の監視[{0}]が変更されています。
 
 fileMessageFactory.cannotRead=メッセージを読むことができません。このFactoryは書き込み中です。
 fileMessageFactory.cannotWrite=メッセージを書き込めません、このFactoryは読み込み中です。
diff --git a/java/org/apache/catalina/loader/LocalStrings_ja.properties b/java/org/apache/catalina/loader/LocalStrings_ja.properties
index cf12884..798c33e 100644
--- a/java/org/apache/catalina/loader/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/loader/LocalStrings_ja.properties
@@ -30,8 +30,8 @@ standardLoader.removeRepository=リポジトリ [{0}] を削除します
 standardLoader.starting=このローダを起動します
 standardLoader.stopping=このローダを停止します
 
-webappClassLoader.addExportsRmi=Java 9で実行する場合は、JVMコマンドライン引数に "--add-opens = java.rmi / sun.rmi.transport = ALL-UNNAMED"を追加して、RMIターゲットメモリリーク検出を有効にする必要があります。 また、RMIターゲットメモリリーク検出を無効にすることで、この警告を抑制することも可能です。
-webappClassLoader.addExportsThreadLocal=Java 9で実行する場合は、JVMコマンドライン引数に "--add-opens = java.base / java.lang = ALL-UNNAMED"を追加して、ThreadLocalメモリリーク検出を有効にする必要があります。 また、ThreadLocalメモリリーク検出を無効にすることで、この警告を抑制することもできます。
+webappClassLoader.addExportsRmi=Java 9以降で実行する場合は、JVMコマンドライン引数に "--add-opens = java.rmi / sun.rmi.transport = ALL-UNNAMED"を追加して、RMIターゲットメモリリーク検出を有効にする必要があります。 また、RMIターゲットメモリリーク検出を無効にすることで、この警告を抑制することも可能です。
+webappClassLoader.addExportsThreadLocal=Java 9以降で実行する場合は、JVMコマンドライン引数に "--add-opens = java.base / java.lang = ALL-UNNAMED"を追加して、ThreadLocalメモリリーク検出を有効にする必要があります。 また、ThreadLocalメモリリーク検出を無効にすることで、この警告を抑制することもできます。
 webappClassLoader.addTransformer=Web アプリケーション [{1}] にクラスファイル変換器 [{0}] を追加しました。
 webappClassLoader.addTransformer.duplicate=クラスファイルトランスフォーマー[{0}]をWebアプリケーション[{1}]に追加する呼び出しが重複しました。
 webappClassLoader.addTransformer.illegalArgument=Webアプリケーション[{0}]がNullクラスファイルトランスフォーマーを追加しようとしました。
@@ -53,14 +53,14 @@ webappClassLoader.illegalJarPath=不正なJARエントリが名前[{0}]で検出
 webappClassLoader.javaseClassLoaderNull=j2seClassLoader属性はnullでない場合があります。
 webappClassLoader.jdbcRemoveFailed=Web アプリケーション [{0}] は JDBC ドライバーの登録を解除できません。
 webappClassLoader.loadedByThisOrChildFail=クラス [{0}] のインスタンスの全ての要素をチェックできませんでした。コンテキスト [{1}] でメモリーリークの発生する可能性があります。
-webappClassLoader.readError=リソースの読み込みに失敗: [{0}] が読み込めませんでした。
+webappClassLoader.readError=リソース読み込みエラー: [{0}] が読み込めませんでした。
 webappClassLoader.removeTransformer=クラスファイル変換器 [{0}] を Web アプリケーション [{1}] から削除しました。
 webappClassLoader.stopThreadFail=Web アプリケーション [{1}] のスレッド [{0}] は終了できません。
 webappClassLoader.stopTimerThreadFail=Webアプリケーション[{1}]の[{0}]という名前のTimerThreadを終了できませんでした。
 webappClassLoader.stopped=不正なアクセス: このWebアプリケーションのインスタンスは既に停止されています  Could not load [{0}]. 不正なアクセスを引き起こしたスレッドを終了させ、投げられたエラーによりデバッグ用に次のスタックトレースが生成されましたが,機能に影響はありません
-webappClassLoader.transformError=計測エラー:クラスファイル形式が正当でないため、クラス[{0}]を変換できませんでした。
+webappClassLoader.transformError=instrumentation エラー:クラスファイル形式が正当でないため、クラス[{0}]を変換できませんでした。
 webappClassLoader.validationErrorJarPath=名前[{0}]のJARエントリを検証できません
-webappClassLoader.warnTimerThread=Web アプリケーション [{0}] が java.util.Timer API で開始した TimerThread [{1}] を停止できません。メモリーリークを防ぐにはタイマー(関連付けられたスレッドも)を強制的にキャンセルしてください。
+webappClassLoader.warnTimerThread=Web アプリケーション [{0}] が java.util.Timer API で開始した TimerThread [{1}] を停止できません。メモリーリークを防ぐにはタイマー(とそれに伴って関連付けられたスレッド)を強制的にキャンセルしてください。
 webappClassLoader.wrongVersion=(クラス[{0}]をロードできません)
 
 webappClassLoaderParallel.registrationFailed=並列にクラスをロードできるorg.apache.catalina.loader.ParallelWebappClassLoaderの登録に失敗しました。
diff --git a/java/org/apache/catalina/manager/LocalStrings_ja.properties b/java/org/apache/catalina/manager/LocalStrings_ja.properties
index efc732c..2bcf0d7 100644
--- a/java/org/apache/catalina/manager/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/manager/LocalStrings_ja.properties
@@ -57,16 +57,16 @@ htmlManagerServlet.deployUploadNoFile=FAIL - ファイルのアップロード
 htmlManagerServlet.deployUploadNotWar=FAIL - アップロードするファイル [{0}] はWARファイルでなければいけません
 htmlManagerServlet.deployUploadWarExists=FAIL - WARファイル [{0}] は既にサーバ上に存在します
 htmlManagerServlet.deployWar=WARファイル又はディレクトリのURL:
-htmlManagerServlet.diagnosticsLeak=Web アプリケーションの停止や再読み込み、配置解除でメモリーリークが発生しているか確認します。
+htmlManagerServlet.diagnosticsLeak=Web アプリケーションの停止や再読み込み、配備解除でメモリーリークが発生しているか確認します。
 htmlManagerServlet.diagnosticsLeakButton=メモリリーク発見
-htmlManagerServlet.diagnosticsLeakWarning=この診断チェックにより、Fill GCがトリガーされます。 プロダクションシステムには非常に注意して使用してください。
+htmlManagerServlet.diagnosticsLeakWarning=この診断チェックにより、Full GCがトリガーされます。本番システムには非常に注意して使用してください。
 htmlManagerServlet.diagnosticsTitle=診断
 htmlManagerServlet.expire.explain=非アクティブ &ge;
 htmlManagerServlet.expire.unit=分
 htmlManagerServlet.findleaksList=次のWebアプリケーションは停止しました(再ロード、アンデプロイ)。\n\
 以前の起動からのクラスはまだメモリにロードされているため、メモリ\n\
 リークを引き起こします。(確認のためにプロファイラを使用して下さい):
-htmlManagerServlet.findleaksNone=停止、再読み込み読み込み、配置解除によりメモリーリークの発生した Web アプリケーションはありません。
+htmlManagerServlet.findleaksNone=停止、再読み込み、配備解除によりメモリーリークの発生した Web アプリケーションはありません。
 htmlManagerServlet.helpHtmlManager=HTMLマネージャヘルプ
 htmlManagerServlet.helpHtmlManagerFile=../docs/html-manager-howto.html
 htmlManagerServlet.helpManager=マネージャヘルプ
@@ -103,17 +103,20 @@ htmlManagerServlet.serverTitle=サーバ情報
 htmlManagerServlet.serverVersion=Tomcatバージョン
 htmlManagerServlet.title=Tomcat Webアプリケーションマネージャ
 
+jmxProxyServlet.noBeanFound=オブジェクト名 [{0}] の MBean が見つかりません
+jmxProxyServlet.noOperationOnBean=クラス名 [{3}]、オブジェクト名 [{2}] の MBean で引数が [{1}] 個の操作 [{0}] が見つかりません
+
 managerServlet.alreadyContext=FAIL - アプリケーションは、既にパス [{0}] に存在します
 managerServlet.alreadyDocBase=FAIL - ディレクトリ [{0}] は既に使用されています
 managerServlet.configured=OK - コンテキストファイル [{0}] からアプリケーションをインストールしました
 managerServlet.deleteFail=FAIL  -  [{0}]を削除できません。 このファイルが継続して存在すると、問題が発生する可能性があります。
 managerServlet.deployFailed=FAIL - コンテキストパス [{0}] にアプリケーションを配備できません。
 managerServlet.deployed=OK - コンテキストパス [{0}] でアプリケーションを配備しました
-managerServlet.deployedButNotStarted=FAIL  - コンテキストパス[{0}]にアプリケーションをデプロイしましたが、コンテキストを開始できませんでした。
+managerServlet.deployedButNotStarted=FAIL  - コンテキストパス[{0}]にアプリケーションを配備しましたが、コンテキストを開始できませんでした。
 managerServlet.exception=FAIL - 例外 [{0}] が発生しました
 managerServlet.findleaksFail=FAIL - リークを検出できません。Hostは StandardHost のインスタンスめはありません。
 managerServlet.findleaksList=OK - 次のアプリケーションで潜在的なメモリリークが見つかりました:
-managerServlet.findleaksNone=OK - メモリリークは見つかりません
+managerServlet.findleaksNone=OK - メモリリークは見つかりませんでした
 managerServlet.inService=FAIL - アプリケーション [{0}] はすでにサービスを開始しています。
 managerServlet.invalidCommand=FAIL  - コマンド[{0}]に無効なパラメータが指定されました
 managerServlet.invalidPath=FAIL - 無効なコンテキストパス [{0}] が指定されました
@@ -150,7 +153,7 @@ OSバージョン:[{2}]\n\
 OSアーキテクチャ:[{3}]\n\
 JVMバージョン:[{4}]\n\
 JVMベンダー:[{5}]
-managerServlet.sessiondefaultmax=デフォルトの最大セッション停止間隔は[{0}]分です
+managerServlet.sessiondefaultmax=既定の最大セッション非活性時間は[{0}]分です
 managerServlet.sessions=OK - コンテキストパス [{0}] のアプリケーションのセッション情報です
 managerServlet.sessiontimeout=[{0}]分: [{1}]セッション
 managerServlet.sessiontimeout.expired=[{0}]分: expired [{1}]セッション
diff --git a/java/org/apache/catalina/manager/host/LocalStrings_ja.properties b/java/org/apache/catalina/manager/host/LocalStrings_ja.properties
index a7ac316..d3c40a8 100644
--- a/java/org/apache/catalina/manager/host/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/manager/host/LocalStrings_ja.properties
@@ -39,15 +39,15 @@ hostManagerServlet.removeFailed=FAIL - Host [{0}] を削除できません。
 hostManagerServlet.removeSuccess=OK  - ホスト[{0}]を削除しました
 hostManagerServlet.start=開始:名前[{0}]のホストを起動しています
 hostManagerServlet.startFailed=FAIL  - ホスト[{0}]の起動に失敗しました
-hostManagerServlet.started=OK - Host [{0}] を開始しました。
+hostManagerServlet.started=OK - ホスト[{0}] を開始しました。
 hostManagerServlet.stop=停止:名前[{0}]のホストを停止しています
 hostManagerServlet.stopFailed=FAIL- ホスト [{0}] を停止できません。
-hostManagerServlet.stopped=OK - Host[{0}]が停止しました
+hostManagerServlet.stopped=OK - ホスト[{0}]が停止しました
 hostManagerServlet.unknownCommand=FAIL  - 不明なコマンド[{0}]
 
 htmlHostManagerServlet.addAliases=エイリアス:
 htmlHostManagerServlet.addAppBase=App base:
-htmlHostManagerServlet.addAutoDeploy=自動デプロイ
+htmlHostManagerServlet.addAutoDeploy=自動配備
 htmlHostManagerServlet.addButton=追加
 htmlHostManagerServlet.addCopyXML=CopyXML
 htmlHostManagerServlet.addDeployOnStartup=DeployOnStartup
diff --git a/java/org/apache/catalina/realm/LocalStrings_ja.properties b/java/org/apache/catalina/realm/LocalStrings_ja.properties
index 8e29661..1762c7a 100644
--- a/java/org/apache/catalina/realm/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/realm/LocalStrings_ja.properties
@@ -26,8 +26,8 @@ dataSourceRealm.authenticateFailure=ユーザ名 [{0}] は認証に失敗しま
 dataSourceRealm.authenticateSuccess=ユーザ名 [{0}] は認証に成功しました
 dataSourceRealm.close=データベース接続をクローズ中の例外です
 dataSourceRealm.exception=認証を実行中の例外です
-dataSourceRealm.getPassword.exception=[{0}] のパスワードを取得中に異常が発生しました。
-dataSourceRealm.getRoles.exception=[{0}] のロールを取得する途中で例外が発生しました。
+dataSourceRealm.getPassword.exception=[{0}] のパスワードを取得中に例外が発生しました。
+dataSourceRealm.getRoles.exception=[{0}] のロールを取得中に例外が発生しました。
 dataSourceRealm.open=データベース接続をオープン中の例外です
 
 jaasCallback.username=返されたユーザー名[{0}]
@@ -43,7 +43,7 @@ jaasRealm.loginContextCreated=ユーザー名[{0}]用に作成されたJAAS Logi
 jaasRealm.loginException=ユーザ名 [{0}] の認証中にログイン例外が発生しました
 jaasRealm.rolePrincipalAdd=このユーザープリンシパルロールにロールプリンシパル[{0}]を追加
 jaasRealm.rolePrincipalFailure=有効な役割はありません。
-jaasRealm.unexpectedError=予測しないエラーです
+jaasRealm.unexpectedError=予期せぬエラー
 jaasRealm.userPrincipalFailure=有効なユーザープリンシパルが見つかりません。
 jaasRealm.userPrincipalSuccess=プリンシパル[{0}]は有効なユーザークラスです。 これをユーザープリンシパルとして使用します。
 
@@ -58,7 +58,7 @@ jndiRealm.authenticateFailure=ユーザ名 [{0}] は認証に失敗しました
 jndiRealm.authenticateSuccess=ユーザ名 [{0}] は認証に成功しました
 jndiRealm.cipherSuites=TLS 接続で暗号スイート [{0}] を有効化しました。
 jndiRealm.close=ディレクトリサーバ接続クローズ中の例外です
-jndiRealm.emptyCipherSuites=指定された暗号スイートの空の文字列。 デフォルトの暗号スイートを使用します。
+jndiRealm.emptyCipherSuites=指定された暗号スイートの空の文字列。 既定の暗号スイートを使用します。
 jndiRealm.exception=認証実行中の例外です
 jndiRealm.exception.retry=認証中に例外が発生しました。再試行します。
 jndiRealm.invalidHostnameVerifier=[{0}]はHostnameVerifierの有効なクラス名ではありません。
@@ -83,8 +83,9 @@ realmBase.alreadyStarted=このレルムは既に起動されています
 realmBase.authenticateFailure=ユーザ名 [{0}] は認証に失敗しました
 realmBase.authenticateSuccess=ユーザ名 [{0}] は認証に成功しました
 realmBase.createUsernameRetriever.ClassCastException=クラス[{0}]はX509UsernameRetrieverではありません。
+realmBase.credentialNotDelegated=ユーザ [{0}] の資格情報は委任されていませんが、保存が要求されました。
 realmBase.delegatedCredentialFail=ユーザー[{0}]の委任された資格情報を取得できません
-realmBase.digest=ユーザの証明書のダイジェストエラー
+realmBase.digest=ユーザ証明書のダイジェストエラー
 realmBase.forbidden=要求されたリソースへのアクセスが拒否されました
 realmBase.gotX509Username=X509証明書のユーザー名を取得しました:[{0}]
 realmBase.gssContextNotEstablished=Authenticator 実装エラー:渡されたセキュリティコンテキストが完全に確立されていません。
diff --git a/java/org/apache/catalina/security/LocalStrings_ja.properties b/java/org/apache/catalina/security/LocalStrings_ja.properties
index 9c69f68..9406d11 100644
--- a/java/org/apache/catalina/security/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/security/LocalStrings_ja.properties
@@ -17,6 +17,6 @@ SecurityListener.checkUmaskFail=[{0}]のumask設定で開始しようとしま
 SecurityListener.checkUmaskNone=システムプロパティ[{0}]にumask設定が見つかりませんでした。 しかし、Tomcatはumaskをサポートするプラットフォームで動作しているようです。 システムプロパティは通常、CATALINA_HOME/bin/catalina.shに設定されます。 ライフサイクルリスナーのorg.apache.catalina.security.SecurityListener(通常はCATALINA_BASE/conf/server.xmlに設定されています)では、少なくとも[{1}]と同じくらい拘束されたumaskが必要です。
 SecurityListener.checkUmaskParseFail=値[{0}]を有効なumaskとして解析できませんでした。
 SecurityListener.checkUmaskSkip=umask を取得できません。Tomcat を Windows で実行するときは umask をチェックしません。
-SecurityListener.checkUserWarning=ユーザー[{0}]として実行中に開始しようとしました。 このユーザーでTomcatを実行するとがライフサイクルリスナーorg.apache.catalina.security.SecurityListener(通常はCATALINA_BASE/conf /server.xmlで構成されている)によってブロックされています。
+SecurityListener.checkUserWarning=ユーザー[{0}]として実行中に開始しようとしました。 このユーザーでのTomcatの実行はライフサイクルリスナーorg.apache.catalina.security.SecurityListener(通常はCATALINA_BASE/conf /server.xmlで構成されている)によってブロックされています。
 
 SecurityUtil.doAsPrivilege=PrivilegedExceptionActionブロックを実行中に例外が発生しました。
diff --git a/java/org/apache/catalina/servlets/LocalStrings_ja.properties b/java/org/apache/catalina/servlets/LocalStrings_ja.properties
index bd843a5..2432ba6 100644
--- a/java/org/apache/catalina/servlets/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/servlets/LocalStrings_ja.properties
@@ -23,6 +23,8 @@ cgiServlet.expandOk=パス[{0}]の[{1}]に展開されたスクリプト
 cgiServlet.find.found=見つかったCGI:名前[{0}]、パス[{1}]、スクリプト名[{2}]、CGI名[{3}]
 cgiServlet.find.location=ファイル [{0}] を探しています。
 cgiServlet.find.path=パス[{0}]でCGIロケーション[{1}]に対して相対的に要求されたCGIスクリプト
+cgiServlet.invalidArgumentDecoded=デコードされたコマンドライン引数 [{0}] は、構成されたcmdLineArgumentsDecoded パターン [{1}] にマッチしません
+cgiServlet.invalidArgumentEncoded=エンコードされたコマンドライン引数 [{0}] は、構成されたcmdLineArgumentsEncoded パターン [{1}] にマッチしません
 cgiServlet.runBadHeader=悪いヘッダライン [{0}]
 cgiServlet.runFail=CGI処理中のIO問題
 cgiServlet.runHeaderReaderFail=ヘッダーリーダーを閉じる時のI / O問題
@@ -33,9 +35,9 @@ cgiServlet.runStdErr=標準エラー 行:[{0}]
 cgiServlet.runStdErrCount=stderrの[{0}]行を受信しました。
 cgiServlet.runStdErrFail=stderrでI/O問題
 
-defaultServlet.blockExternalEntity=publicId [{0}]およびsystemId [{0}]を持つ外部エンティティへのブロックされたアクセス
+defaultServlet.blockExternalEntity=publicId [{0}]およびsystemId [{0}]を持つ外部エンティティへのアクセスがブロックされました
 defaultServlet.blockExternalEntity2=外部エンティティへのアクセスを抑止しました。エンティティ名 [{0}]、publicId [{1}]、ベースURI [{2}]、systemId  [{3}]
-defaultServlet.blockExternalSubset=名前[{0}]およびベースURI [{1}]を持つ外部サブセットへのブロックされたアクセス
+defaultServlet.blockExternalSubset=名前[{0}]およびベースURI [{1}]を持つ外部サブセットへのアクセスがブロックされました
 defaultServlet.missingResource=要求されたリソース [{0}] は利用できません。
 defaultServlet.noResources=静的リソースが見つかりません。
 defaultServlet.skipfail=[{0}]バイトしか利用できなかったため、[{1}]バイトをスキップして要求された範囲の先頭に到達する必要があったため、読み取りに失敗しました。
diff --git a/java/org/apache/catalina/session/LocalStrings_ja.properties b/java/org/apache/catalina/session/LocalStrings_ja.properties
index 0cfbbd1..255a09c 100644
--- a/java/org/apache/catalina/session/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/session/LocalStrings_ja.properties
@@ -19,7 +19,7 @@ JDBCStore.checkConnectionDBClosed=データベース接続がnullであるか、
 JDBCStore.checkConnectionDBReOpenFail=データベースの再オープンが失敗しました。データベースがダウンしているかもしれません。
 JDBCStore.checkConnectionSQLException=SQL例外が発生しました [{0}]
 JDBCStore.close=データベース接続 [{0}] をクローズ中の例外です
-JDBCStore.commitSQLException=クローズする前に接続をコミットするSQLException
+JDBCStore.commitSQLException=クローズ前のデータベース接続のコミット中にSQL例外が発生しました
 JDBCStore.loading=セッション [{0}] をデータベース [{1}] からロードします
 JDBCStore.missingDataSourceName=指定された JNDI 名は正常ではありません
 JDBCStore.removing=セッション [{0}] をデータベース [{1}] から削除します
@@ -46,9 +46,9 @@ managerBase.setContextNotNew=NEW 状態ではないマネージャーに関連
 persistentManager.activeSession=セッション [{0}] は[{1}]秒間アイドルしています
 persistentManager.backupException=セッション [{0}] をバックアップする時に例外が発生しました: [{1}]
 persistentManager.backupMaxIdle=[{1}]秒間アイドルしているセッション [{0}] を保存するためにバックアップしています
-persistentManager.deserializeError=セッション [{0}] をデシリアライズ中のエラーです。
+persistentManager.deserializeError=セッション [{0}] をデシリアライズ中のエラー
 persistentManager.expiring=[{0}] のセッションを保存する前に期限切れになりました
-persistentManager.loading=[{0}] の持続されたセッションをロードします
+persistentManager.loading=[{0}] の永続化セッションをロードします
 persistentManager.processSwaps=セッションをスワップするためにチェックしています, メモリ中に [{0}] アクティブセッションが存在します
 persistentManager.serializeError=セッション [{0}] をシリアライズ中のエラーです: [{1}]
 persistentManager.storeKeysException=セッションストアからセッションIDのリストを取得できませんでした。セッションストアが空の可能性があります。
@@ -59,13 +59,13 @@ persistentManager.swapInInvalid=スワップしたセッション [{0}] は不
 persistentManager.swapMaxIdle=[{1}]秒間アイドルしているセッション [{0}] を保存するためにスワップしています
 persistentManager.swapTooManyActive=セッションが多すぎるので、[{1}]秒アイドルしているセッション [{0}] をスワップアウトします
 persistentManager.tooManyActive=アクティブセッションが多すぎます、[{0}]、スワップアウトするためにアイドルセッションを探しています
-persistentManager.unloading=[{0}] の持続されたセッションを保存します
+persistentManager.unloading=[{0}] の永続化セッションを保存します
 
 serverSession.value.iae=null値です
 
 standardManager.deletePersistedFileFail=永続化セッションを読み込んだ [{0}] を削減できません。ファイルが残っていると将来セッションの永続化に失敗する可能性があります。
 standardManager.expireException=processsExpire: セッションの終了処理中の例外です
-standardManager.loading=[{0}] から持続されたセッションをロードしています
+standardManager.loading=[{0}] から永続化セッションをロードしています
 standardManager.loading.cnfe=持続されたセッションをロード中にClassNotFoundExceptionが発生しました: [{0}]
 standardManager.loading.ioe=持続されたセッションをロード中のIOExceptionです: [{0}]
 standardManager.managerLoad=永続記憶装置からセッションをロード中の例外です
@@ -90,6 +90,8 @@ standardSession.isNew.ise=isNew: セッションは既に無効化されてい
 standardSession.logoutfail=有効期限を超過したセッションからユーザーがログアウトする時、例外が発生しました。
 standardSession.notDeserializable=セッション[{1}]のセッション属性[{0}]をデシリアライズできません。
 standardSession.notSerializable=セッション [{1}] のためにセッション属性 [{0}] をシリアライズできません
+standardSession.principalNotDeserializable=セッション [{0}] のプリンシパルオブジェクトをデシリアライズできません
+standardSession.principalNotSerializable=セッション [{0}] のプリンシパルオブジェクトをシリアライズできません
 standardSession.removeAttribute.ise=removeAttribute: セッションは既に無効化されています
 standardSession.sessionCreated=セッションID = [{0}] を生成しました
 standardSession.sessionEvent=セッションイベントリスナが例外を投げました
diff --git a/java/org/apache/catalina/startup/LocalStrings_ja.properties b/java/org/apache/catalina/startup/LocalStrings_ja.properties
index 8fed6ba..99a1209 100644
--- a/java/org/apache/catalina/startup/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/startup/LocalStrings_ja.properties
@@ -19,9 +19,9 @@ catalina.serverStartFail=必要なサーバーコンポーネントを開始で
 catalina.shutdownHookFail=サーバーの停止中にシャットダウンフックでエラーが発生しました。
 catalina.stopServer=シャットダウンポートが設定されていません。 OSシグナルでServerをシャットダウンします。 サーバはシャットダウンしません。
 
-contextConfig.altDDNotFound=代替デプロイメントデスクリプタファイル [{0}] が見つかりません。
-contextConfig.annotationsStackOverflow=StackOverflowErrorのため、Webアプリケーション[{0}]のアノテーションのスキャンを完了できません。 考えられる根本的な原因には、-Xssおよび不正な循環継承の依存関係の設定が低すぎます。 処理されるクラス階層は[{1}]でした。
-contextConfig.applicationMissing=アプリケーションのweb.xmlが見つかりません、デフォルトだけを使用します
+contextConfig.altDDNotFound=代替配備記述子ファイル [{0}] が見つかりません。
+contextConfig.annotationsStackOverflow=StackOverflowErrorのため、Webアプリケーション[{0}]のアノテーションのスキャンを完了できません。考えられる根本的な原因には、-Xssの設定が低すぎる事や不正な循環継承が考えられます。 処理中のクラス階層は[{1}]でした。
+contextConfig.applicationMissing=アプリケーションのweb.xmlが見つかりません、既定値のみを使用します
 contextConfig.applicationParse=アプリケーションのweb.xmlファイル [{0}] の解析エラーです
 contextConfig.applicationPosition=[{0}]行の[{1}]列目で発生しました
 contextConfig.applicationStart=アプリケーションのweb.xml [{0}] を解析します。
@@ -35,8 +35,8 @@ contextConfig.cce=ライフサイクルイベントデータオブジェクト [
 contextConfig.contextClose=context.xmlを閉じる際のエラー
 contextConfig.contextMissing=context.xml が見つかりません: [{0}]
 contextConfig.contextParse=[{0}]のcontext.xmlの解析エラー
-contextConfig.defaultError=[{1}]で[{0}]という名前のデフォルトweb.xmlの処理でエラーが発生しました
-contextConfig.defaultMissing=共通 web.xml が見つかりません。
+contextConfig.defaultError=[{1}]で[{0}]という名前の既定web.xmlの処理でエラーが発生しました
+contextConfig.defaultMissing=グローバル web.xml が見つかりません。
 contextConfig.defaultPosition=[{0}]行の[{1}]列目で発生しました
 contextConfig.destroy=ContextConfig:破棄中
 contextConfig.fileUrl=URL [{0}] のファイルオブジェクトを作成できません。
@@ -61,7 +61,7 @@ contextConfig.sci.info=[{0}]に対してServletContainerInitializerを処理で
 contextConfig.servletContainerInitializerFail=名前[{0}]のコンテキストのServletContainerInitializersの検出に失敗しました。
 contextConfig.start=ContextConfig: 処理を開始します
 contextConfig.stop=ContextConfig: 処理を停止します
-contextConfig.unavailable=前のエラーのためにこのアプリケーションは利用できないようにマークします
+contextConfig.unavailable=以前のエラーのためにこのアプリケーションは利用できないようにマークします
 contextConfig.unknownUrlProtocol=アノテーション処理中にURLプロトコル[{0}]が認識されませんでした。 URL [{1}]は無視されました。
 contextConfig.urlPatternValue=urlPatterns属性とvalue属性の両方が、クラス[{1}]の[{0}]アノテーションに対して設定されています。
 contextConfig.webinfClassesUrl=[{0}]のURLを特定できません
@@ -75,7 +75,7 @@ engineConfig.cce=ライフサイクルイベントデータオブジェクト [{
 engineConfig.start=EngineConfig: 処理を開始します
 engineConfig.stop=EngineConfig: 処理を停止します
 
-expandWar.copy=[{0}] から [{1}] へのコピーエラー。
+expandWar.copy=[{0}] から [{1}] へのコピー中のエラー
 expandWar.createFailed=ディレクトリ [{0}] を作成できません。
 expandWar.deleteFailed=[{0}] を削除できません。残ったファイルにより問題が生じるかもしれません。
 expandWar.illegalPath=アーカイブ[{0}]は形式が正しくないため無視されます:定義されたdocBase [{3}]の外にあるので、[{2}]に拡張されていない不正なパス[{1}]がエントリに含まれています。
@@ -83,33 +83,34 @@ expandWar.missingJarEntry=JarEntry [{0}] の入力ストリームを取得でき
 
 failedContext.start=グローバル、ホスト単位またはコンテキスト固有のcontext.xmlファイルの処理に失敗しました。したがって、コンテキスト[{0}]を開始できません。
 
-hostConfig.appBase=ホスト [{0}] のアプリケーション基本ディレクトリ [{1}] は存在しないかディレクトリではありません。デプロイメントエラーを防ぐため deployOnStartUp および autoDeploy は false に設定しました。他のエラーが発生するかもしれません。
-hostConfig.canonicalizing=[{1}] の配置解除中に [{0}] の正規化パスを取得できませんでした。
+hostConfig.appBase=ホスト [{0}] のアプリケーションベースディレクトリ [{1}] は存在しないかディレクトリではありません。デプロイメントエラーを防ぐため deployOnStartUp および autoDeploy は false に設定しました。他のエラーは引き続き発生するかもしれません。
+hostConfig.canonicalizing=[{1}] の配備解除中に [{0}] の正規化パスを取得できませんでした。
 hostConfig.cce=ライフサイクルイベントデータオブジェクト [{0}] はホストではありません
 hostConfig.context.remove=コンテキスト [{0}] の削除中に異常が発生しました。
-hostConfig.context.restart=コンテキスト [{0}] を再起動中のエラーです
+hostConfig.context.restart=コンテキスト [{0}] を再起動中のエラー
 hostConfig.createDirs=配備用のディレクトリを作成できません:[{0}]
 hostConfig.deploy=Webアプリケーションディレクトリ [{0}] を配備します
-hostConfig.deploy.error=Webアプリケーションディレクトリ[{0}]を展開中に例外が発生しました。
-hostConfig.deployDescriptor=設定記述子 [{0}] を配備します
-hostConfig.deployDescriptor.blocked=コンテキストパス[{0}]を持つWebアプリケーションは、アプリケーションのセキュアな配備に必要な設定が含まれている可能性があるが、このホストのdeployXML設定によって配備記述子の処理が妨げられる配備記述子[{1}]が含まれていたためデプロイされていません。このアプリケーションを配備するには、[{2}]に適切な記述子を作成する必要があります。\n
-hostConfig.deployDescriptor.error=設定記述子 [{0}] を配備中のエラーです
-hostConfig.deployDescriptor.finished=展開記述子[{0}]の展開が[{1}] msで終了しました。
+hostConfig.deploy.error=Webアプリケーションディレクトリ[{0}]の配備中の例外
+hostConfig.deployDescriptor=配備記述子 [{0}] を配備します
+hostConfig.deployDescriptor.blocked=コンテキストパス[{0}]を持つWebアプリケーションは、アプリケーションのセキュアな配備に必要な設定が含まれている可能性がありますが、このホストのdeployXML設定によって処理が妨げられる配備記述子[{1}]が含まれていたため配備されていません。このアプリケーションを配備するには、[{2}]に適切な記述子を作成する必要があります。
+hostConfig.deployDescriptor.error=配備記述子 [{0}] を配備中のエラーです
+hostConfig.deployDescriptor.finished=配備記述子[{0}]の展開が[{1}] msで終了しました。
 hostConfig.deployDescriptor.localDocBaseSpecified=docBase [{0}] はホストの appBase に含まれるため無視します。
-hostConfig.deployDescriptor.threaded.error=デプロイメント記述子のマルチスレッドデプロイメントが完了するのを待つエラー
+hostConfig.deployDescriptor.threaded.error=デプロイメント記述子のマルチスレッド配備の完了待機中のエラー
 hostConfig.deployDir=Webアプリケーションディレクトリ [{0}] を配備します
-hostConfig.deployDir.error=Webアプリケーションディレクトリ [{0}] を配備中のエラーです
-hostConfig.deployDir.finished=ディレクトリ [{0}] の Web アプリケーションの配置は [{1}] ms で完了しました。
-hostConfig.deployDir.threaded.error=マルチスレッドで行っているディレクトリの配置完了を待機中に異常が発生しました。
+hostConfig.deployDir.error=Webアプリケーションディレクトリ [{0}] を配備中のエラー
+hostConfig.deployDir.finished=ディレクトリ [{0}] の Web アプリケーションの配備は [{1}] ms で完了しました。
+hostConfig.deployDir.threaded.error=ディレクトリのマルチスレッド配備の\n\
+完了待機中のエラー
 hostConfig.deployWar=Webアプリケーションアーカイブ [{0}] を配備します
-hostConfig.deployWar.error=Webアプリケーションアーカイブ [{0}] を配備中のエラーです
-hostConfig.deployWar.finished=Web アプリケーションアーカイブ [{0}] の配置は [{1}] ms で完了しました。
+hostConfig.deployWar.error=Webアプリケーションアーカイブ [{0}] を配備中のエラー
+hostConfig.deployWar.finished=Web アプリケーションアーカイブ [{0}] の配備は [{1}] ms で完了しました。
 hostConfig.deployWar.hiddenDir=WAR [{1}]が優先され、unpackWARsがfalseであるため、ディレクトリ[{0}]は無視されます。
-hostConfig.deployWar.threaded.error=WARファイルのマルチスレッド・デプロイメントが完了するまでの待機中のエラー
-hostConfig.deploying=発見されたWebアプリケーションの展開
+hostConfig.deployWar.threaded.error=WARファイルのマルチスレッド配備の完了待機中のエラー
+hostConfig.deploying=発見されたWebアプリケーションの配備
 hostConfig.docBaseUrlInvalid=docBase に指定された文字列は URL として解釈できません。
 hostConfig.expand=Web アプリケーションアーカイブ [{0}] を展開します。
-hostConfig.expand.error=Web アプリケーションアーカイヴ [{0}] の展開中に異常が発生しました。
+hostConfig.expand.error=Web アプリケーションアーカイブ [{0}] の展開中に異常が発生しました。
 hostConfig.ignorePath=自動デプロイでは appBase 内のパス [{0}] を無視します。
 hostConfig.illegalWarName=War名[{0}]は無効です。 アーカイブは無視されます。
 hostConfig.jmx.register=コンテキスト[{0}]を登録できませんでした
@@ -122,7 +123,7 @@ hostConfig.resourceNotAbsolute=[{1}] は完全パスではないためコンテ
 hostConfig.start=HostConfig: 処理を停止します
 hostConfig.stop=HostConfig: 処理を停止します
 hostConfig.undeploy=コンテキストパス [{0}] のWebアプリケーションの配備を解除します
-hostConfig.undeployVersion=コンテキスト [{0}] について有効なセッションの存在しない古いバージョンの配置を解除します。
+hostConfig.undeployVersion=コンテキスト [{0}] について有効なセッションの存在しない古いバージョンの配備を解除します。
 
 passwdUserDatabase.readFail=/etc/passwd から全てのユーザーセットを取得できませんでした。
 
@@ -130,12 +131,13 @@ tomcat.addWebapp.conflictChild=コンテキスト [{2}] が存在するためWAR
 tomcat.addWebapp.conflictFile=[{2}] へファイルまたはディレクトリが存在するため WAR ファイル [{0}] をコンテキストパス [{1}] へ配備できません。
 tomcat.baseDirMakeFail=基本ディレクトリとして使用する [{0}] を作成できません。
 tomcat.baseDirNotDir=基本ディレクトリに指定された [{0}] はディレクトリではありません。
+tomcat.defaultMimeTypeMappingsFail=既定の MIME タイプを読み込めません
 
 userConfig.database=ユーザデータベースのロード中の例外です
 userConfig.deploy=ユーザ [{0}] のWebアプリケーションを配備します
-userConfig.deploy.threaded.error=ユーザーディレクトリのマルチスレッド展開が完了するのを待つエラー
+userConfig.deploy.threaded.error=ユーザーディレクトリのマルチスレッド配備の完了待機中のエラー
 userConfig.deploying=ユーザのWebアプリケーションを配備します
-userConfig.error=ユーザ [{0}] のWebアプリケーションを配備中のエラーです
+userConfig.error=ユーザ [{0}] のWebアプリケーションを配備中のエラー
 userConfig.start=UserConfig: 処理を開始します
 userConfig.stop=UserConfig: 処理を停止します
 
diff --git a/java/org/apache/catalina/tribes/tipis/LocalStrings_ja.properties b/java/org/apache/catalina/tribes/tipis/LocalStrings_ja.properties
index 1312cd1..f1f16fd 100644
--- a/java/org/apache/catalina/tribes/tipis/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/tribes/tipis/LocalStrings_ja.properties
@@ -16,7 +16,7 @@
 lazyReplicatedMap.unableReplicate.backup=[{2}] により、バックアップキー [{0}] をメンバー [{1}] へ複製できません。
 lazyReplicatedMap.unableReplicate.proxy=[{2}] のため、プロキシキーを [{0}] からバックアップの [{1}] へ複製できません。
 
-replicatedMap.member.disappeared=メンバー[{0}]が消えました。 関連するマップエントリは、新しいノードに再配置されます。
+replicatedMap.member.disappeared=メンバー[{0}]が消滅しました。 関連するマップエントリは、新しいノードに再配置されます。
 replicatedMap.relocate.complete=マップ要素の再配置は [{0}] ms で完了しました。
 replicatedMap.unable.relocate=[{0}]を新しいバックアップノードに再配置できません
 replicatedMap.unableReplicate.completely=バックアップキー[{0}]を複製できません。 成功ノード:[{1}]。 障害ノード:[{2}]。
diff --git a/java/org/apache/catalina/users/LocalStrings_ja.properties b/java/org/apache/catalina/users/LocalStrings_ja.properties
index cba185e..f314a16 100644
--- a/java/org/apache/catalina/users/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/users/LocalStrings_ja.properties
@@ -21,5 +21,5 @@ memoryUserDatabase.nullUser=Nullまたは長さゼロのユーザー名が指定
 memoryUserDatabase.readOnly=ユーザー情報データベースは読み取り専用になっています。変更を保存できません。
 memoryUserDatabase.renameNew=新しいファイル名を [{0}] に変更できません
 memoryUserDatabase.renameOld=元のファイル名を [{0}] に変更できません
-memoryUserDatabase.writeException=[{0}] に書き込み中のIOExceptionです
+memoryUserDatabase.writeException=[{0}] に書き込み中の入出力例外です
 memoryUserDatabase.xmlFeatureEncoding=XMLファイルのJavaエンコーディング名を許可するためにdigesterを設定する際の例外。 IANAのエンコーディング名のみがサポートされます。
diff --git a/java/org/apache/catalina/util/LocalStrings_ja.properties b/java/org/apache/catalina/util/LocalStrings_ja.properties
index 94bdf66..ae5e1de 100644
--- a/java/org/apache/catalina/util/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/util/LocalStrings_ja.properties
@@ -16,7 +16,7 @@
 SecurityUtil.doAsPrivilege=PrivilegedExceptionActionブロックを実行中に例外が発生しました。
 
 customObjectInputStream.logRequired=ロギングによるクラス名のフィルタリングには有効なロガーが必要です
-customObjectInputStream.nomatch=クラス [{0}] はデシリアライズの許可されたクラス名の正規表現 [{1}] にマッチしません。
+customObjectInputStream.nomatch=クラス [{0}] はデシリアライズが許可されたクラス名の正規表現 [{1}] にマッチしません。
 
 extensionValidator.extension-not-found-error=ExtensionValidator[{0}][{1}]: 必要な拡張 [{2}] が見つかりません。
 extensionValidator.extension-validation-error=ExtensionValidator[{0}]: 必要な拡張 [{1}] が見つかりません。
@@ -50,7 +50,7 @@ parameterMap.locked=ロックされたParameterMapは変更が許されません
 
 resourceSet.locked=ロックされたResourceSetは変更が許されません
 
-sessionIdGeneratorBase.createRandom=セッション ID を生成するための SecureRandom インスタンスの作成に [{1}] ミリ秒かかりました。アルゴリズムは [{1}] です。
+sessionIdGeneratorBase.createRandom=セッション ID を生成するための SecureRandom インスタンスの作成に [{1}] ミリ秒かかりました。アルゴリズムは [{0}] です。
 sessionIdGeneratorBase.random=クラス [{0}] の乱数発生器の初期化の例外です
 sessionIdGeneratorBase.randomAlgorithm=アルゴリズム[{0}]を使用して乱数ジェネレータを初期化する際の例外
 sessionIdGeneratorBase.randomProvider=プロバイダ[{0}]を使用して乱数ジェネレータを初期化中に例外が発生しました
diff --git a/java/org/apache/catalina/valves/LocalStrings_ja.properties b/java/org/apache/catalina/valves/LocalStrings_ja.properties
index 539b46c..5bc4738 100644
--- a/java/org/apache/catalina/valves/LocalStrings_ja.properties
+++ b/java/org/apache/catalina/valves/LocalStrings_ja.properties
@@ -22,7 +22,7 @@ accessLogValve.openDirFail=アクセスログのディレクトリ[{0}]の作成
 accessLogValve.openFail=アクセスログファイル [{0}] を開けません。
 accessLogValve.renameFail=[{0}]から[{1}]へのアクセスログの名前の変更に失敗しました。
 accessLogValve.rotateFail=アクセスログのローテーションに失敗しました
-accessLogValve.unsupportedEncoding=文字エンコーディングに [{0}] を指定できません。システムの初期値を使用します。
+accessLogValve.unsupportedEncoding=文字エンコーディングに [{0}] を指定できません。システムの既定値を使用します。
 
 errorReportValve.description=説明
 errorReportValve.exception=例外
@@ -64,7 +64,7 @@ http.411.reason=Length Required
 http.412.desc=リクエストヘッダーフィールドに指定された1つ以上の条件が、サーバー上でテストされたときにfalseに評価されました。
 http.412.reason=前提条件失敗
 http.413.desc=リクエストペイロードがサーバーが処理できる、または処理できるよりも大きいため、サーバーはリクエストの処理を拒否しています。
-http.413.reason=\ Payload Too Large
+http.413.reason=Payload Too Large
 http.414.desc=リクエストの対象がサーバーが解釈しようとするよりも長いため、サーバーはリクエストのサービスを拒否しています。
 http.414.reason=URI Too Long
 http.415.desc=ペイロードがターゲットリソース上のこのメソッドでサポートされていない形式であるため、オリジンサーバーはリクエストを処理することを拒否しています。
@@ -103,7 +103,7 @@ http.504.desc=ゲートウェイまたはプロキシとして機能している
 http.504.reason=ゲートウェイタイムアウト
 http.505.desc=サーバーは、リクエストメッセージで使用されたメジャーバージョンのHTTPをサポートしていないか、またはサポートを拒否しています。
 http.505.reason=サポートされていないHTTPバージョン
-http.506.desc=サーバーには内部構成エラーがあります。選択された異形のリソースは透過的なコンテンツネゴシエーション自体に関与するように構成されているため、ネゴシエーションプロセスの適切なエンドポイントではありません。
+http.506.desc=サーバーには内部構成エラーがあります。選択された可変リソースは透過的なコンテンツネゴシエーション自体に関与するように構成されているため、ネゴシエーションプロセスの適切なエンドポイントではありません。
 http.506.reason=Variant Also Negotiates
 http.507.desc=サーバーがリクエストを正常に完了するのに必要な表現を保管できないため、このメソッドをリソースに対して実行できませんでした。
 http.507.reason=ストレージに充分な空き容量がありません。
@@ -120,6 +120,8 @@ jdbcAccessLogValve.exception=アクセスエントリの挿入を実行中の例
 remoteCidrValve.invalid="[{0}]" に不正な値が指定されました。詳細は前のメッセージを参照してください。
 remoteCidrValve.noRemoteIp=クライアントの IP アドレスを取得できません。リクエストを拒否します。
 
+remoteIpValve.invalidHostHeader=HTTP ヘッダ [{1}] 中の Host に無効な値 [{0}] が見つかりました
+remoteIpValve.invalidHostWithPort=HTTP ヘッダ [{1}] 中の Host の値 [{0}] はポート番号を含んでいますが無視されます
 remoteIpValve.invalidPortHeader=HTTP ヘッダー [{1}] に不正なポート番号 [{0}] が指定されました。
 
 requestFilterValve.configInvalid=Valveとその親コンテナの起動を妨げたRemote [Addr | Host] Valveに1つ以上の無効な構成設定が提供されました。
@@ -127,8 +129,8 @@ requestFilterValve.deny=プロパティ [{1}] により [{0}] へのリクエス
 requestFilterValve.next=次のバルブが設定されていません
 requestFilterValve.syntax=リクエストフィルタパターン [{0}] に構文エラーがあります
 
-sslValve.certError=java.security.cert.X509Certificateオブジェクトを作成するための証明書文字列[{0}]を処理を失敗しました。
-sslValve.invalidProvider=リクエスト [{0}] に関連付けられたコネクターへ不正な SSL プロバイダーが構成されています。証明書データを処理できません。
+sslValve.certError=java.security.cert.X509Certificateオブジェクトを生成するための証明書文字列[{0}]の処理に失敗しました。
+sslValve.invalidProvider=リクエスト [{0}] に関連付けられたコネクターに指定された SSL プロバイダーは不正です。証明書データを処理できません。
 
 stuckThreadDetectionValve.notifyStuckThreadCompleted=スレッド[{0}](id = [{3}])は以前にスタックされていると報告されましたが完了しました。それはおよそ[{1}]ミリ秒の間アクティブだった。\n\
 \ {2,choice,0#|0< このバルブによって監視されているスレッド [{2}] は残っていますが、スタックされている可能性があります。}
diff --git a/java/org/apache/coyote/LocalStrings_ja.properties b/java/org/apache/coyote/LocalStrings_ja.properties
index 6f5cf34..ec772b0 100644
--- a/java/org/apache/coyote/LocalStrings_ja.properties
+++ b/java/org/apache/coyote/LocalStrings_ja.properties
@@ -15,10 +15,11 @@
 
 abstractConnectionHandler.error=リクエストの読み取り中にエラーが発生しました。無視します。
 abstractConnectionHandler.ioexception.debug=IOExceptionは正常で無視されます。
+abstractConnectionHandler.oome=リクエストの完全な処理に失敗しました
 abstractConnectionHandler.socketexception.debug=SocketExceptionsは正常です。無視します。
 
-abstractProcessor.fallToDebug=注:リクエスト構文解析エラーのさらなる発生はDEBUGレベルでログに記録されます。
-abstractProcessor.hostInvalid=ホスト名 [{0}] は不正なホスト名です。
+abstractProcessor.fallToDebug=注: 以降のリクエスト構文解析エラーの発生はDEBUGレベルでログに出力されます。
+abstractProcessor.hostInvalid=ホスト名 [{0}] は不正です。
 
 abstractProtocolHandler.destroy=ProtocolHandler [{0}] を破棄します。
 abstractProtocolHandler.init=プロトコルハンドラ [{0}] を初期化します。
diff --git a/java/org/apache/coyote/ajp/LocalStrings_ja.properties b/java/org/apache/coyote/ajp/LocalStrings_ja.properties
index cb85a73..34e0830 100644
--- a/java/org/apache/coyote/ajp/LocalStrings_ja.properties
+++ b/java/org/apache/coyote/ajp/LocalStrings_ja.properties
@@ -27,3 +27,5 @@ ajpprocessor.header.error=ヘッダーメッセージの解析に失敗しまし
 ajpprocessor.header.tooLong=受信したヘッダーに指定されたメッセージ長は [{0}] ですがpacketSize は [{1}] しかありません。
 ajpprocessor.request.prepare=リクエスト準備中エラー
 ajpprocessor.request.process=リクエスト処理エラー
+
+ajpprotocol.noSecret=AJP コネクタは secretRequired="true" として構成されていますが、secret 属性は null または空文字列が設定されています。この組み合わせは有効ではありません
diff --git a/java/org/apache/coyote/http11/LocalStrings_ja.properties b/java/org/apache/coyote/http11/LocalStrings_ja.properties
index 5e9567d..cef788b 100644
--- a/java/org/apache/coyote/http11/LocalStrings_ja.properties
+++ b/java/org/apache/coyote/http11/LocalStrings_ja.properties
@@ -13,20 +13,23 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-http11processor.fallToDebug=注:HTTPリクエスト構文解析エラーがさらに発生すると、DEBUGレベルでログに記録されます。
-http11processor.header.parse=HTTP リクエストヘッダーを解釈できませんでした。
+http11processor.fallToDebug=注: 以降のHTTPリクエスト構文解析エラーの発生はDEBUGレベルでログに出力されます。
+http11processor.header.parse=HTTP リクエストヘッダーを解析中のエラー
 http11processor.neverused=このメソッドは決して使用されません。
 http11processor.request.finish=リクエスト終了処理エラー
-http11processor.request.inconsistentHosts=リクエストラインに指定されたホストが Host ヘッダーの値と矛盾しています。
+http11processor.request.inconsistentHosts=リクエスト行に指定されたホストが Host ヘッダーの値と矛盾しています。
 http11processor.request.invalidScheme=HTTP リクエストに不正なスキーマを指定した完全 URI が含まれています。
-http11processor.request.invalidUri== HTTPリクエストに無効なURIが含まれています
+http11processor.request.invalidTransferEncoding=HTTP リクエストに無効な Transfer-Encoding ヘッダが含まれています
+http11processor.request.invalidUri=HTTPリクエストに無効なURIが含まれています
 http11processor.request.invalidUserInfo=HTTP リクエストに不正な userinfo を含む絶対 URI が指定されました。
-http11processor.request.multipleHosts=リクエストには複数のホストヘッダーが含まれていました。
+http11processor.request.multipleContentLength=リクエストに複数の content-length ヘッダが含まれています
+http11processor.request.multipleHosts=リクエストには複数の host ヘッダーが含まれていました。
 http11processor.request.noHostHeader=HTTP / 1.1リクエストでhostヘッダーが提供されませんでした。
-http11processor.request.prepare=リクエストの準備に失敗しました。
-http11processor.request.process=リクエスト処理中にエラーが発生しました
+http11processor.request.nonNumericContentLength=リクエストの content-length ヘッダに数値でない値が含まれています
+http11processor.request.prepare=リクエスト準備中のエラー
+http11processor.request.process=リクエスト処理中のエラー
 http11processor.response.finish=レスポンス終了処理のエラー
-http11processor.sendfile.error=sendfileを使ってデータを送信中にエラーが発生しました 開始点または終了点の無効なリクエスト属性によって引き起こされる可能性があります。
+http11processor.sendfile.error=sendfileを使ってデータを送信中にエラーが発生しました。これは開始点または終了点の無効なリクエスト属性によって引き起こされる可能性があります。
 http11processor.socket.info=ソケット情報を取得する際の例外
 
 http11protocol.endpoint.starterror=エンドポイントを起動中のエラーです
@@ -39,10 +42,11 @@ http11protocol.start=Coyote HTTP/1.1を [{0}] で起動します
 
 iib.eof.error=ソケットから予期しないEOFを読み込みました
 iib.invalidHttpProtocol=HTTPプロトコルで無効な文字が見つかりました。
+iib.invalidPhase=リクエスト行の解析フェーズ [{0}] は無効です
 iib.invalidRequestTarget=リクエストの宛先に不正な文字が含まれています。利用可能な文字は RFC 7230 および RFC 3986 に定義されています。
 iib.invalidheader=HTTP ヘッダー行 [{0}]は RFC 7230 に適合しないため無視します。
 iib.invalidmethod=HTTP メソッド名に不正な文字が含まれています。HTTP メソッド名は決められたトークンでなければなりません。
-iib.parseheaders.ise.error=予期しない状態:ヘッダがすでに解析されています。 バッファはリサイクルされていませんか?
+iib.parseheaders.ise.error=予期しない状態:ヘッダがすでに解析されています。 バッファが未回収ですか?
 iib.requestheadertoolarge.error=リクエストヘッダが長すぎます
 
-iob.responseheadertoolarge.error=レスポンスヘッダーにバッファー領域より大きなデータの書き込みが発生しました。データを小さくするか Connector の maxHttpHeaderSize を大きくしてください。
+iob.responseheadertoolarge.error=レスポンスヘッダにバッファー領域より大きなデータの書き込みが発生しました。Connector の maxHttpHeaderSize を増やすか、レスポンスヘッダよりもデータを小さくして下さい。
diff --git a/java/org/apache/jasper/resources/LocalStrings_ja.properties b/java/org/apache/jasper/resources/LocalStrings_ja.properties
index 7449c9e..b820d76 100644
--- a/java/org/apache/jasper/resources/LocalStrings_ja.properties
+++ b/java/org/apache/jasper/resources/LocalStrings_ja.properties
@@ -13,19 +13,19 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-jasper.error.emptybodycontent.nonempty=TLDに従ってタグ [{0}] は空でなければいけませんが、そうではありません
+jasper.error.emptybodycontent.nonempty=TLDによると、タグ [{0}] は空である必要がありますがそうなっていません
 
 jsp.engine.info=Jasper JSP {0}エンジン
-jsp.error.action.isnottagfile=[{0}] アクションはタグファイル中でのみ使用できません
+jsp.error.action.isnottagfile=[{0}] アクションはタグファイル中でのみ使用できます
 jsp.error.action.istagfile=[{0}] アクションはタグファイル中で使用できません
 jsp.error.attempt_to_clear_flushed_buffer=エラー: 既にフラッシュされているバッファをクリアしようとしました
 jsp.error.attr.quoted=属性値は引用符で囲わなければいけません
-jsp.error.attribute.custom.non_rt_with_expr=TLD又はタグファイル中のattribute指示子に従って属性[{0}]はどんな式も受け付けません
-jsp.error.attribute.deferredmix=attribute の値に ${} 書式と #{} 書式を同時に含めることはできません。
+jsp.error.attribute.custom.non_rt_with_expr=TLD又はタグファイル中のattributeディレクティブによると、属性[{0}]はいかなる式も受け付けません
+jsp.error.attribute.deferredmix=属性値に ${} と #{} のEL式を同時に含めることはできません。
 jsp.error.attribute.duplicate=属性修飾名は、要素内で一意でなければなりません
-jsp.error.attribute.invalidPrefix=属性のプレフィックス [{0}] はどの取り込まれたタグライブラリにも対応しません
+jsp.error.attribute.invalidPrefix=属性のプレフィックス [{0}] はインポートされたいずれのタグライブラリにも対応しません
 jsp.error.attribute.noequal=等号記号が必要です
-jsp.error.attribute.noescape=属性値[{0}]は[{1}]で引用され、値の中で使用するとエスケープする必要があります。
+jsp.error.attribute.noescape=属性値[{0}]は[{1}]で引用され、値の中で使用する際はエスケープする必要があります。
 jsp.error.attribute.noquote=引用符が必要です
 jsp.error.attribute.nowhitespace=JSP の仕様により、属性名の前に空白が必要です。
 jsp.error.attribute.null_name=空の属性名です
@@ -38,11 +38,11 @@ jsp.error.bad_tag=プレフィックス [{1}]でインポートされたタグ
 jsp.error.beans.nobeaninfo=タイプ [{0}] のBeanにBeanInfoがないのを検出しました, クラスが存在しないかもしれません
 jsp.error.beans.nomethod=タイプ [{1}] のBean中の属性 [{0}] を読み込むメソッドを発見できませんでした
 jsp.error.beans.nomethod.setproperty=タイプ[{2}]のBeanのタイプ [{1}] の属性 [{0}] を書き込むメソッドを発見できませんでした
-jsp.error.beans.noproperty=タイプ [{1}] のbean中の属性 [{0}] の情報を発見できませんでした
+jsp.error.beans.noproperty=タイプ [{1}] のbean中のプロパティ [{0}] の情報を発見できませんでした
 jsp.error.beans.nullbean=nullオブジェクトにBean操作をおこなおうとしました
 jsp.error.beans.property.conversion=属性[{2}]:[{3}]の文字列[{0}]をクラス[{1}]に変換できません。
 jsp.error.beans.propertyeditor.notregistered=PropertyEditorManagerに登録されていないプロパティエディタ
-jsp.error.beans.setproperty.noindexset=インデックス付きの属性を指定できません
+jsp.error.beans.setproperty.noindexset=インデックス付きのプロパティを設定できません
 jsp.error.bug48498=JSP抽出を表示できません。 XMLパーサーのバグが原因である可能性があります(詳細は、Tomcatバグ48498を参照してください)。
 jsp.error.classname=.classファイルからクラス名を決定できません
 jsp.error.coerce_to_type=属性[{0}]の値[{2}]をタイプ[{1}]に変換できません。
@@ -50,23 +50,24 @@ jsp.error.compilation=ファイルのコンパイル中にエラーが発生し
 jsp.error.compiler=Java コンパイラが見つかりません。
 jsp.error.compiler.config=設定オプション compilerClassName:[{0}]およびコンパイラ:[{1}]のJavaコンパイラは利用可能ではありません。
 jsp.error.config_pagedir_encoding_mismatch=jsp-property-group中に指定されているPage-encoding [{0}] がpage指示子中の指定 [{1}] と違います
-jsp.error.corresponding.servlet=生成されたサーブレットのエラーです:\n
+jsp.error.corresponding.servlet=生成されたサーブレットエラー:\n\
+\n
 jsp.error.could.not.add.taglibraries=1つ以上のタグライブラリを追加できません
-jsp.error.data.file.processing=ファイル[{0}]を処理中にエラーが発生しました
+jsp.error.data.file.processing=ファイル[{0}]を処理中のエラー
 jsp.error.data.file.read=ファイル [{0}] を読み込み中にエラーが発生しました
-jsp.error.data.file.write=データファイルを書き込み中のエラーです
+jsp.error.data.file.write=データファイルを書き込み中のエラー
 jsp.error.deferredmethodandvalue='deferredValue' と 'deferredMethod' は同時に 'true' にできません。
-jsp.error.deferredmethodsignaturewithoutdeferredmethod='deferredMethod' が 'true' でなければメソッドにシグネチャを指定できません。
+jsp.error.deferredmethodsignaturewithoutdeferredmethod='deferredMethod' が 'true' でない場合、メソッドシグネチャを指定できません。
 jsp.error.deferredvaluetypewithoutdeferredvalue='deferredValue'が 'true'でない場合は値型を指定できません
-jsp.error.directive.isnottagfile=[{0}] 指示子はタグファイル中でしか使用できません
+jsp.error.directive.isnottagfile=[{0}] ディレクティブはタグファイル中でしか使用できません
 jsp.error.directive.istagfile=[{0}] ディレクティブはタグファイル中では使用できません
 jsp.error.duplicate.name.jspattribute=標準又はカスタムアクション中で指定されている属性 [{0}] はそれに囲まれたjsp:attribute中のname属性の値としても表れます
 jsp.error.duplicateqname=重複した修飾名[{0}]を持つ属性が見つかりました。 属性修飾名は、要素内で一意でなければなりません。
 jsp.error.dynamic.attributes.not.implemented=[{0}] タグはそれがdynamic属性を受け付けると宣言していますが、それに必要なインタフェースを実装していません
 jsp.error.el.parse=[{0}] : [{1}]
 jsp.error.el.template.deferred=テンプレート文字列に #{...} を含めることはできません。
-jsp.error.el_interpreter_class.instantiation=ELInterpreter classのロード又はインスタンス化に失敗しました [{0}]
-jsp.error.fallback.invalidUse=jsp:fallbackはjsp:pluginの直接の子供でなければいけません
+jsp.error.el_interpreter_class.instantiation=ELInterpreter class [{0}] のロード又はインスタンス化に失敗しました
+jsp.error.fallback.invalidUse=jsp:fallbackはjsp:pluginの直接の子でなければいけません
 jsp.error.file.already.registered=ファイル [{0}] の再帰的な取り込みです
 jsp.error.file.cannot.read=ファイルが読めません: [{0}]
 jsp.error.file.not.found=JSP ファイル [{0}] が見つかりません
@@ -74,18 +75,18 @@ jsp.error.file.not.registered=include属性中のファイル [{0}] が存在し
 jsp.error.flush=データをフラッシュする際に例外が発生しました。
 jsp.error.fragmentwithtype='fragment'属性と'type'属性を両方指定できません。'fragment'が存在する場合には'type'は'{0}'に固定されます
 jsp.error.function.classnotfound=TLDの中で関数 [{1}] に指定されているクラス [{0}] が見つかりません: [{2}]
-jsp.error.include.exception=[{0}] を取り込めません
+jsp.error.include.exception=[{0}] を include 出来ません
 jsp.error.include.tag=無効なjsp:includeタグです
 jsp.error.internal.filenotfound=内部エラー: ファイル [{0}] が見つかりません
 jsp.error.internal.tldinit=TldLocationsCacheを初期化中の例外です: [{0}]
 jsp.error.invalid.attribute=[{0}]は無効な属性を持っています: [{1}]
 jsp.error.invalid.bean=useBeanのクラス属性 [{0}] の値が無効です
-jsp.error.invalid.directive=無効なディレクティブです
+jsp.error.invalid.directive=無効なディレクティブ
 jsp.error.invalid.expression=[{0}] は無効な式を含んでいます: [{1}]
 jsp.error.invalid.implicit=[{0}]のタグファイルの暗黙のTLDが無効です
 jsp.error.invalid.implicit.version=[{0}]のタグファイルの暗黙のTLDで無効なJSPバージョンが定義されています。
 jsp.error.invalid.scope=''scope''属性の値が無効です: [{0}] ("page"、"request"、"session"又は"application"のどれかでなければいけません)
-jsp.error.invalid.tagdir=タグファイルディレクトリ [{0}] が"/WEB-INF/tags"で始まりません
+jsp.error.invalid.tagdir=タグファイルディレクトリ [{0}] が"/WEB-INF/tags"で始まっていません
 jsp.error.invalid.version=タグファイル [{0}] には不正な JSP のバージョンが指定されています。
 jsp.error.ise_on_clear=バッファサイズが0の時にclear()を実行しても無効です
 jsp.error.java.line.number=生成されたJavaファイル:[{1}]の[{0}]行でエラーが発生しました。
@@ -93,8 +94,8 @@ jsp.error.javac=Javac 例外
 jsp.error.javac.env=Environment:
 jsp.error.jspbody.emptybody.only=[{0}] タグは、そのボディ中にjsp:attributeだけを持つことができます
 jsp.error.jspbody.invalidUse=jsp:bodyは標準又はカスタムアクションの副要素でなければいけません
-jsp.error.jspbody.required=jsp:attributeが使用された場合には、[{0}]にタグボディを指定するためにjsp:bodyを使用しなければいけません
-jsp.error.jspc.missingTarget=ターゲットがありません: -webapp又は-uriroot,又は一つ以上のJSPページを指定しなければいけません
+jsp.error.jspbody.required=jsp:attributeが使用された場合、[{0}]にタグボディを指定するためにjsp:bodyを使用する必要があります
+jsp.error.jspc.missingTarget=ターゲットがありません: -webapp又は-uriroot、又は一つ以上のJSPページを指定しなければいけません
 jsp.error.jspc.no_uriroot=urirootが指定されていないので、指定されたJSPファイル(群)を配置できません
 jsp.error.jspc.uriroot_not_dir=-uriroot オプションは、既に存在するディレクトリを指定しなければいけません
 jsp.error.jspelement.missing.name=必須のXMLスタイルの'name'属性がjsp:element中にありません
@@ -104,18 +105,18 @@ jsp.error.jspoutput.doctypepublicsystem=&lt;jsp:output&gt;: 'doctype-public'属
 jsp.error.jspoutput.invalidUse=&lt;jsp:output&gt; 標準構文の中で使用してはいけません
 jsp.error.jspoutput.nonemptybody=&lt;jsp:output&gt; ボディを持ってはいけません
 jsp.error.jsproot.version.invalid=無効なバージョン番号です: [{0}]、"1.2" "2.0" "2.1" 又は "2.2" でなければいけません
-jsp.error.jsptext.badcontent='&lt;'が&lt;jsp:text&gt;のボディの中に現れる時は、CDATAの中に隠蔽しなければいけません
+jsp.error.jsptext.badcontent='&lt;'が&lt;jsp:text&gt;のボディの中に現れる時は、CDATAの中にカプセル化する必要があります
 jsp.error.lastModified=ファイル [{0}] の最終更新日時を取得できません。
 jsp.error.library.invalid=ライブラリ[{0}]に従うとJSPページは無効です: [{1}]
 jsp.error.literal_with_void=戻り値の型がvoidである遅延メソッドとして定義されている属性[{0}]にリテラル値が指定されています。 JSP.2.3.4では、この場合リテラル値は許可されません。
-jsp.error.loadclass.taghandler=タグ [{1}] にタグハンドラクラス [{0}] をロードできません
+jsp.error.loadclass.taghandler=タグ [{1}] のタグハンドラクラス [{0}] をロードできません
 jsp.error.location=行:[{0}]、列:[{1}]
 jsp.error.mandatory.attribute=[{0}]: 必須属性 [{1}] がありません
 jsp.error.missing.tagInfo=[{0}] に対するTagInfoオブジェクトがTLDから失われました
 jsp.error.missing_attribute=TLD又はタグファイルによると、属性 [{0}] はタグ [{1}] には必須です
 jsp.error.missing_var_or_varReader='var'又は'varReader'属性がありません
 jsp.error.namedAttribute.invalidUse=jsp:attributeは標準又はカスタムアクションの副要素でなければいけません
-jsp.error.needAlternateJavaEncoding=デフォルトのJavaエンコーディング [{0}] はあなたのプラットフォームでは無効です。JspServletの ''javaEncoding'' パラメタで、別の値を指定することができます。
+jsp.error.needAlternateJavaEncoding=デフォルトのJavaエンコーディング [{0}] はあなたのプラットフォームでは無効です。JspServletの ''javaEncoding'' パラメータで別の値を指定することができます。
 jsp.error.nested.jspattribute=jsp:attribute標準アクションは別のjsp:attribute標準アクションの範囲内でネストすることはできません
 jsp.error.nested.jspbody=jsp:body標準アクションは別のjsp:body又はjsp:attribute標準アクションの範囲内でネストすることはできません
 jsp.error.nested_jsproot=入れ子になった &lt;jsp:root&gt; です
@@ -133,21 +134,21 @@ jsp.error.outputfolder=出力フォルダがありません
 jsp.error.overflow=エラー: JSPバッファがオーバーフローしました
 jsp.error.page.conflict.autoflush=Pageディレクティブ: ''autoFlush''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.buffer=Pageディレクティブ: ''buffer''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.contenttype=page指示子: ''contentType''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.deferredsyntaxallowedasliteral=Pageディレクティブ: 値の異なる複数の "deferredSyntaxAllowedAsLiteral" (以前の値: [{0}]、新しい値: [{1}]) を指定することはできません。
+jsp.error.page.conflict.contenttype=Pageディレクティブ: ''contentType''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.page.conflict.deferredsyntaxallowedasliteral=Pageディレクティブ:  "deferredSyntaxAllowedAsLiteral" を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.errorpage=Pageディレクティブ: ''errorPage''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.extends=Pageディレクティブ: ''extends''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.info=Pageディレクティブ: ''info''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.iselignored=Pageディレクティブ: ''isELIgnored''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.conflict.iserrorpage=Pageディレクティブ: ''isErrorPage''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.isthreadsafe=Tagディレクティブ: ''isThreadSafe''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.language=page指示子: ''language''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.session=page指示子: ''session''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.page.conflict.trimdirectivewhitespaces=Pageディレクティブ:異なる値(old:[{0}]、new:[{1}])を持つ ''trimDirectiveWhitespaces''の複数の出現を違法にします。
+jsp.error.page.conflict.isthreadsafe=Tagディレクティブ:  ''isThreadSafe''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.page.conflict.language=Pageディレクティブ: ''language''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.page.conflict.session=Pageディレクティブ: ''session''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.page.conflict.trimdirectivewhitespaces=Pageディレクティブ: ''trimDirectiveWhitespaces''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
 jsp.error.page.invalid.buffer=Pageディレクティブ: buffer属性の値が無効です
-jsp.error.page.invalid.deferredsyntaxallowedasliteral=Pageディレクティブ: 不正な deferredSyntaxAllowedLiteral です。
+jsp.error.page.invalid.deferredsyntaxallowedasliteral=Pageディレクティブ: deferredSyntaxAllowedAsLiteral の値は不正です
 jsp.error.page.invalid.import=Pageディレクティブ:importの値が無効です
-jsp.error.page.invalid.iselignored=Pageディレクティブ: isELIgnoredに無効な値が指定されています
+jsp.error.page.invalid.iselignored=Pageディレクティブ: isELIgnored の値は不正です
 jsp.error.page.invalid.iserrorpage=Pageディレクティブ: isErrorPage属性の値が無効です
 jsp.error.page.invalid.isthreadsafe=Pageディレクティブ: isThreadSafeの値が無効です
 jsp.error.page.invalid.session=Pageディレクティブ: session属性の値が無効です
@@ -158,9 +159,9 @@ jsp.error.page.noSession=セッションに加わっていないページの中
 jsp.error.param.invalidUse=jsp:include、jsp:forward、又はjsp:params要素の外でjsp:paramアクションを使用してはいけません
 jsp.error.paramexpected="name"属性 と "value" 属性を持つ "jsp:param" 標準アクションが必要です
 jsp.error.params.emptyBody=jsp:paramsは少なくとも一つのネストしたjsp:paramを含まねばいけません
-jsp.error.params.invalidUse=jsp:paramsはjsp:pluginの直接の子供でなければいけません
+jsp.error.params.invalidUse=jsp:paramsはjsp:pluginの直接の子でなければいけません
 jsp.error.parse.error.in.TLD=タグライブラリ記述子 [{0}] 中の解析エラーです
-jsp.error.parse.xml=ファイル[{0}]のXML解析エラー
+jsp.error.parse.xml=ファイル[{0}]のXML解析中のエラー
 jsp.error.parse.xml.line=ファイル[{0}]のXML解析エラー: (行 [{1}], 列 [{2}])
 jsp.error.parse.xml.scripting.invalid.body=[{0}] 要素のボディはXML要素を含んではいけません
 jsp.error.plugin.badtype=jsp:pluginの 'type'属性の値が無効です: 'bean'又は'applet'でなければいけません
@@ -168,35 +169,35 @@ jsp.error.plugin.nocode=jsp:pluginでcode属性が宣言されていません
 jsp.error.plugin.notype=jsp:pluginでtype属性が宣言されていません
 jsp.error.plugin.wrongRootElement=[{0}] の中のルート要素の名前は [{1}] ではありません
 jsp.error.prefix.refined=プリフィックス [{0}] が現在のスコープ中で既に [{2}] と定義されているので [{1}] に再定義しました
-jsp.error.prefix.use_before_dcl=このタグディレクティブで指定されているプリフィックス [{0}] は、すでにファイル [{1}] の [{2}] 行目のアクションで使用されています
-jsp.error.prolog_config_encoding_mismatch=XML導入部で指定されたpage-encoding [{0}] がjsp-property-group中の指定と違います [{1}]
-jsp.error.prolog_pagedir_encoding_mismatch=XML導入部で指定されたpage-encoding [{0}] がpage指示子中の指定 [{1}] と違います
+jsp.error.prefix.use_before_dcl=このTagディレクティブで指定されているプリフィックス [{0}] は、すでにファイル [{1}] の [{2}] 行目のアクションで使用されています
+jsp.error.prolog_config_encoding_mismatch=XML宣言部で指定されたpage-encoding [{0}] がjsp-property-group中の指定と異なります [{1}]
+jsp.error.prolog_pagedir_encoding_mismatch=XML宣言部で指定されたpage-encoding [{0}] がpageディレクティブ中の指定 [{1}] と異なっています
 jsp.error.quotes.unterminated=引用符が終了していません
 jsp.error.scripting.variable.missing_name=属性 [{0}] からスクリプト変数名を決定できません
 jsp.error.security=コンテキストのセキュリティの初期化に失敗しました。
-jsp.error.servlet.destroy.failed=JSPページのServlet.destroy()の例外
+jsp.error.servlet.destroy.failed=JSPページのServlet.destroy()中の例外
 jsp.error.setLastModified=ファイル[{0}]の最終更新日を設定できません
 jsp.error.signature.classnotfound=TLDの中のメソッドシグネチャで関数 [{1}] に指定されているクラス [{0}] が見つかりません。 [{2}]
 jsp.error.simpletag.badbodycontent=クラス [{0}] のTLDはSimpleTagに無効なbody-content (JSP)を指定しています
 jsp.error.single.line.number=JSPファイル: [{1}] の中の[{0}]行目でエラーが発生しました
-jsp.error.stream.close.failed=ストリームを切断できませんでした。
+jsp.error.stream.close.failed=ストリームをクローズできませんでした。
 jsp.error.stream.closed=ストリームがクローズされています
-jsp.error.tag.conflict.attr=Tag指示子: 属性[{0}]を異なる値で複数回指定するのは不正です (旧: [{1}], 新: [{2}])
-jsp.error.tag.conflict.deferredsyntaxallowedasliteral=Tagディレクティブ:異なる値(old:[{0}]、new:[{1}])を持つ '' deferredSyntaxAllowedAsLiteral ''の複数の出現を持つことは違法です。
-jsp.error.tag.conflict.iselignored=tag指示子: ''isELIgnored''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.tag.conflict.language=tag指示子: ''language''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
-jsp.error.tag.conflict.trimdirectivewhitespaces=Tagディレクティブ:異なる値(old:[{0}]、新しい:[{1}])を持つ ''trimDirectiveWhitespaces''の複数の出現を持つことは違法です。
-jsp.error.tag.invalid.deferredsyntaxallowedasliteral=タグディレクティブ: deferredSyntaxAllowedAsLiteral に不正な値が指定されました。
-jsp.error.tag.invalid.iselignored=Tag ディレクティブ: isELIgnoredに無効な値が指定されています
-jsp.error.tag.invalid.trimdirectivewhitespaces=タグディレクティブ: trimDirectiveWhitespaces に不正な値が指定されました。
+jsp.error.tag.conflict.attr=Tagディレクティブ: 属性[{0}]を異なる値で複数回指定するのは無効です (旧: [{1}], 新: [{2}])
+jsp.error.tag.conflict.deferredsyntaxallowedasliteral=Tagディレクティブ: ''deferredSyntaxAllowedAsLiteral''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.tag.conflict.iselignored=Tagディレクティブ: ''isELIgnored''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.tag.conflict.language=Tagディレクティブ: ''language''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.tag.conflict.trimdirectivewhitespaces=Tagディレクティブ: ''trimDirectiveWhitespaces''を異なる値で複数回指定するのは無効です (旧: [{0}], 新: [{1}])
+jsp.error.tag.invalid.deferredsyntaxallowedasliteral=Tagディレクティブ: deferredSyntaxAllowedAsLiteral に不正な値が指定されました。
+jsp.error.tag.invalid.iselignored=Tagディレクティブ: isELIgnoredに無効な値が指定されています
+jsp.error.tag.invalid.trimdirectivewhitespaces=Tagディレクティブ: trimDirectiveWhitespaces の値は不正です
 jsp.error.tag.language.nonjava=Tagディレクティブ: 無効なlanguage属性です
-jsp.error.tag.multi.pageencoding=Tあgディレクティブは複数のpageencodingを持つことはできません
-jsp.error.tagdirective.badbodycontent=tag指示子中の無効なbody-content [{0}]です
+jsp.error.tag.multi.pageencoding=Tagディレクティブは複数のpageencodingを持つことはできません
+jsp.error.tagdirective.badbodycontent=tagディレクティブ中の無効なbody-content [{0}]です
 jsp.error.tagfile.badSuffix=タグファイルパス [{0}] の中に".tag" 拡張子がありません
 jsp.error.tagfile.illegalPath=不正なタグファイルパスです: [{0}]、これは"/WEB-INF/tags"又は"/META-INF/tags"で始まらなければいけません
-jsp.error.tagfile.missingPath=タグファイルに指定されていないパス
+jsp.error.tagfile.missingPath=タグファイルにパスが指定されていません
 jsp.error.tagfile.nameFrom.badAttribute=attribute指示子 ([{1}]行目で宣言され、そのname属性が[{0}]、このname-from-attribute属性の値) はjava.lang.String型の"required" で "rtexprvalue".であってはいけません
-jsp.error.tagfile.nameFrom.noAttribute=このname-from-attribute属性の値である値 [{0}] のname属性を持つattribute指示子が見つかりません
+jsp.error.tagfile.nameFrom.noAttribute=このname-from-attribute属性の値である値 [{0}] のname属性を持つattributeディレクティブが見つかりません
 jsp.error.tagfile.nameNotUnique=[{2}]行目の [{0}] の値と [{1}] の値は同じです
 jsp.error.taglibDirective.absUriCannotBeResolved=絶対URI:  [{0}] はweb.xmlとこのアプリケーションを配備したJARファイルのどちらかでも解決できません
 jsp.error.taglibDirective.both_uri_and_tagdir='uri'属性 と 'tagdir'属性の両方が指定されています
@@ -211,7 +212,7 @@ jsp.error.tld.mandatory.element.missing=TLD [{1}] に必須要素の [{0}] が
 jsp.error.tld.missing_jar=TLDを含むJARリソース [{0}] がありません
 jsp.error.tld.unable_to_get_jar=TLDを含むJARリソース [{0}] を取得できません : [{1}]
 jsp.error.tld.unable_to_read=JARファイル [{0}] からTLD [{1}] を読み込めません: [{2}]
-jsp.error.tlv.invalid.page=[{0}] に対するTagLibraryValidatorの検証エラーメッセージです [{1}]
+jsp.error.tlv.invalid.page=[{1}] 中の [{0}] に対するTagLibraryValidatorの検証エラーメッセージです
 jsp.error.tlvclass.instantiation=TagLibraryValidatorクラスのロード又はインスタンス化に失敗しました: [{0}]
 jsp.error.unable.compile=JSPのクラスをコンパイルできません
 jsp.error.unable.deleteClassFile=クラスファイルを削除できません
@@ -221,17 +222,17 @@ jsp.error.unable.to_find_method=属性 [{0}] のsetterメソッドが見つか
 jsp.error.unavailable=JSPは利用不可とマークされています
 jsp.error.unbalanced.endtag=終了タグ "&lt;/{0}" の対応が取れていません
 jsp.error.undeclared_namespace=宣言されていない名前空間でカスタムタグが検出されました[{0}]
-jsp.error.unknown_attribute_type=属性 [{0}] に対する未知の属性タイプです
+jsp.error.unknown_attribute_type=属性 [{0}] に対する未知の属性タイプ [{1}] です。
 jsp.error.unsupported.encoding=サポートされていないエンコーディングです: [{0}]
 jsp.error.unterminated=[{0}] タグが終了していません
 jsp.error.usebean.duplicate=useBean: beanName属性が重複しています: [{0}]
-jsp.error.usebean.noSession=JSPページが(page指示子により)セッション中で協調しないことを宣言している時、セッションスコープを使用するためのuseBeanが不正です
+jsp.error.usebean.noSession=JSPページが(pageディレクティブにより)セッションに参加しないことを宣言している場合、セッションスコープでのuseBeanの使用は無効です
 jsp.error.var_and_varReader='var'又は'varReader'のどちらか一つを指定することができます
-jsp.error.variable.alias=name-from-attributeおよびalias属性の両方をvariable指示子中に指定する、又はどちらも指定しないことができます
-jsp.error.variable.both.name=variable指示子中でname-givenとname-from-attribute属性の両方を指定することはできません
-jsp.error.variable.either.name=name-given又はname-from-attribute属性のどちらかをvariable指示子の中で指定されなければいけません
+jsp.error.variable.alias=name-from-attributeおよびalias属性の両方をvariableディレクティブ中に指定する、又はどちらも指定しないことができます
+jsp.error.variable.both.name=variableディレクティブ中でname-givenとname-from-attribute属性の両方を指定することはできません
+jsp.error.variable.either.name=name-given又はname-from-attribute属性のどちらかをvariableディレクティブの中で指定する必要があります
 jsp.error.xml.badStandardAction=無効な標準アクションです: [{0}]
-jsp.error.xml.bad_tag=URI [{1}] に関連づけられたタグライブラリの中にはタグ [{0}] は定義されていません
+jsp.error.xml.bad_tag=URI [{1}] に関連付けられたタグライブラリの中にはタグ [{0}] は定義されていません
 jsp.error.xml.closeQuoteMissingInTextDecl=テキスト宣言中の[{0}]に続く値の中の最後のクオートがありません
 jsp.error.xml.closeQuoteMissingInXMLDecl=XML宣言中の[{0}]に続く値の中の最後のクオートがありません
 jsp.error.xml.encodingByteOrderUnsupported=エンコーディング [{0}] に指定されたバイトオーダはサポートされていません
@@ -277,26 +278,26 @@ jsp.message.parent_class_loader_is=親クラスローダ: [{0}]
 jsp.message.scratch.dir.is=JSPエンジンのScratchdir: [{0}]
 jsp.tldCache.noTldSummary=少なくとも1つのJARが、まだTLDを含んでいないTLDについてスキャンされました。 スキャンしたが、そこにTLDが見つからなかったJARの完全なリストについては、このロガーのデバッグログを有効にしてください。 スキャン中に不要なJARをスキップすると、起動時間とJSPのコンパイル時間が改善されます。
 jsp.warning.bad.urlpattern.propertygroup=web.xml中のurl-pattern副要素中に誤った値 [{0}] があります
-jsp.warning.checkInterval=警告: initParam checkIntervalの値が無効です。"300"秒のデフォルト値を使用します
-jsp.warning.classDebugInfo=警告: initParam classDebugInfoの値が無効です。デフォルト値 "false"を使用します
+jsp.warning.checkInterval=警告: initParam checkIntervalの値は無効です。既定値 "300" 秒が使用されます
+jsp.warning.classDebugInfo=警告: initParam の classDebugInfo の値は無効です。既定値 "false" が使用されます
 jsp.warning.compiler.classfile.delete.fail=生成されたクラスファイル[{0}]を削除できませんでした
 jsp.warning.compiler.classfile.delete.fail.unknown=生成されたクラスファイルの削除に失敗しました
 jsp.warning.compiler.javafile.delete.fail=生成されたJavaファイル[{0}]を削除できませんでした。
-jsp.warning.development=警告: initParam developmentの値が無効です。"true"のデフォルト値を使用します
-jsp.warning.displaySourceFragment=Warning: initParam に指定した displaySourceFragment に不正な値が指定されました。代わりに初期値の true を使用します。
-jsp.warning.dumpSmap=警告: initParam dumpSmapの値が無効です。"false"のデフォルト値を使用します
-jsp.warning.enablePooling=警告: initParam の enablePooling は無効な値です。デフォルト値の "true" を使用します
-jsp.warning.fork=警告: initParam forkの値が無効です。"true"のデフォルト値を使用します
-jsp.warning.genchararray=警告: initParam genStringAsCharArrayの値が無効です。"false"のデフォルト値を使用します
-jsp.warning.jspIdleTimeout=警告:initParam jspIdleTimeoutの値が無効です。 デフォルト値 "-1"を使用します。
-jsp.warning.keepgen=警告: initParam keepgeneratedの値が無効です。 デフォルト値 "false" を使用します
-jsp.warning.mappedFile=警告: initParam mappedFileの値が無効です。デフォルト値 "false" を使用します
-jsp.warning.maxLoadedJsps=警告:initParam maxLoadedJspsの値が無効です。 デフォルト値 "-1"を使用します。
-jsp.warning.modificationTestInterval=警告: initParam の modificationTestInterval に不正な値が指定されました。初期値の "4" 秒を使用します。
-jsp.warning.noJarScanner=警告: ServletContext に org.apache.tomcat.JarScanner が構成されていません。初期値の JarScanner 実装を使用します。
-jsp.warning.quoteAttributeEL=警告: initParam の quoteAttributeEL に不正な値が指定されました。初期値の "false" を使用します。
-jsp.warning.recompileOnFail=警告: initParam の recompileOnFail に不正な値が指定されました。初期値の "false" を使用します。
-jsp.warning.suppressSmap=警告: initParam suppressSmapの値が無効です。デフォルト値 "false" を使用します
+jsp.warning.development=警告: initParam の development の値は無効です。既定値 "true" が使用されます
+jsp.warning.displaySourceFragment=警告: initParam の displaySourceFragmentの値は無効です。 既定値 "true"を使用します。
+jsp.warning.dumpSmap=警告: initParam の dumpSmap の値は無効です。既定値 "false" が使用されます
+jsp.warning.enablePooling=警告: initParam の enablePooling の値は無効です。既定値 "true" が使用されます
+jsp.warning.fork=警告: initParam の fork の値は無効です。既定値 "true" が使用されます
+jsp.warning.genchararray=警告: initParam の genStringAsCharArray の値は無効です。既定値 "false" が使用されます
+jsp.warning.jspIdleTimeout=警告: initParam jspIdleTimeoutの値は無効です。既定値 "-1"を使用します。
+jsp.warning.keepgen=警告: initParam の keepgenerated の値は無効です。既定値 "false" が使用されます
+jsp.warning.mappedFile=警告: initParam の mappedFile の値は無効です。既定値 "false" が使用されます
+jsp.warning.maxLoadedJsps=警告: initParam maxLoadedJspsの値は無効です。 既定値 "-1"を使用します。
+jsp.warning.modificationTestInterval=警告: initParam の modificationTestInterval の値は無効です。既定値 "4" 秒が使用されます
+jsp.warning.noJarScanner=警告: ServletContext に org.apache.tomcat.JarScanner が構成されていません。既定値の JarScanner 実装を使用します。
+jsp.warning.quoteAttributeEL=警告: initParam の quoteAttributeEL の値は無効です。既定値 "false" が使用されます
+jsp.warning.recompileOnFail=警告: initParam の recompileOnFail の値は無効です。既定値 "false" が使用されます
+jsp.warning.suppressSmap=警告: initParam の suppressSmap の値は無効です。既定値 "false" が使用されます
 jsp.warning.unknown.element.in.attribute=attribute中に未知の要素 ({0}) があります
 jsp.warning.unknown.element.in.function=function中に未知の要素 ({0}) があります
 jsp.warning.unknown.element.in.initParam=validatorのinit-param中に未知の要素 ({0}) があります
@@ -307,12 +308,14 @@ jsp.warning.unknown.element.in.validator=validator中に未知の要素 ({0}) 
 jsp.warning.unknown.element.in.variable=variable中に未知の要素 ({0}) があります
 jsp.warning.unknown.sourceVM=不明な source VM [{0}]が無視されました
 jsp.warning.unknown.targetVM=不明な target  VM [{0}]が無視されました。
-jsp.warning.xpoweredBy=警告: Invalid value for the initParam xpoweredByの値が無効です。デフォルト値 "false" を使用します
+jsp.warning.unsupported.sourceVM=サポートされていない source VM [{0}] がリクエストされました。[{1}] が使用されます
+jsp.warning.unsupported.targetVM=サポートされていない target VM [{0}] がリクエストされました。[{1}] が使用されます
+jsp.warning.xpoweredBy=警告: initParam の xpoweredBy の値は無効です。既定値 "false" が使用されます
 
 jspc.delete.fail=ファイル[{0}]を削除できませんでした
 jspc.error.fileDoesNotExist=ファイル引数 [{0}] は存在しません。
-jspc.error.generalException=エラー: ファイル [{0}] は次の例外を発生しました:
-jspc.generation.result=[{1}]ミリ秒で[{0}]エラーが発生して生成が完了しました。
+jspc.error.generalException=エラー: ファイル [{0}] で以下の一般的な例外が発生しました:
+jspc.generation.result=[{1}]ミリ秒の間に[{0}]個のエラーが発生して生成が完了しました。
 jspc.implicit.uriRoot=uriRootはデフォルト[{0}]に設定されます
 jspc.usage=使用法: jspc <options> [--] <jsp files>\n\
 JSPファイルの場所は次のオプションで指定するか、\n\
@@ -348,11 +351,21 @@ JSPファイルの場所は次のオプションで指定するか、\n\
 \    -javaEncoding <enc>   Set the encoding charset for Java classes (default UTF-8)\n\
 \    -source <version>     Set the -source argument to the compiler (default 1.6)\n\
 \    -target <version>     Set the -target argument to the compiler (default 1.6)\n
-jspc.webfrg.footer=\n\
-</web-fragment>\n\
+jspc.webfrg.footer=</web-fragment>\n\
+\n
+jspc.webinc.footer=<!--\n\
+ここまで、Apache Tomcat JspC による自動生成\n\
+-->\n\
+\n\
+\n
+jspc.webinc.header=<!--\n\
+Apache Tomcat JspC による自動生成\n\
+-->\n\
+\n\
 \n
-jspc.webxml.footer=\n\
-</web-app>\n\
+jspc.webinc.insertEnd=<!-- JSPC サーブレットマッピング ここまで -->
+jspc.webinc.insertStart=<!-- JSPC サーブレットマッピング ここから -->
+jspc.webxml.footer=</web-app>\n\
 \n
 
 org.apache.jasper.compiler.ELParser.invalidQuotesForStringLiteral=不正な文字列リテラル [{0}] です。シングルクォート、あるいは、ダブルクォートで囲まれていなければなりません。
diff --git a/java/org/apache/naming/factory/LocalStrings_ja.properties b/java/org/apache/naming/factory/LocalStrings_ja.properties
index 0716753..5e9164c 100644
--- a/java/org/apache/naming/factory/LocalStrings_ja.properties
+++ b/java/org/apache/naming/factory/LocalStrings_ja.properties
@@ -15,6 +15,10 @@
 
 dataSourceLinkFactory.badWrapper=クラス[{0}]のラッパーではありません。
 
+factoryBase.factoryClassError=リソースファクトリクラスを読み込めません
+factoryBase.factoryCreationError=リソースファクトリインスタンスを生成できません
+factoryBase.instanceCreationError=リソースインスタンスを生成できません
+
 lookupFactory.circularReference=[{0}]を含む循環参照が見つかりました。
 lookupFactory.createFailed=JNDI lookup ファクトリークラスのインスタンスを作成できませんでした。
 lookupFactory.loadFailed=JNDIルックアップファクトリクラスをロードできませんでした。
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings_ja.properties b/java/org/apache/tomcat/util/buf/LocalStrings_ja.properties
index 4f78067..aa1cc83 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings_ja.properties
@@ -15,8 +15,10 @@
 
 b2cConverter.unknownEncoding=文字エンコーディング [{0}] は未対応です。
 
+encodedSolidusHandling.invalid=値 [{0}] は認識されません
+
 uDecoder.convertHexDigit.notHex=[{0}] は16 進数ではありません。
 uDecoder.eof=予期せぬ場所で終端に達しました。
 uDecoder.noSlash="/" を符号化して含めることはできません。
-uDecoder.urlDecode.conversionError=文字セット[{1}]を使用して[{0}]のデコードに失敗しました
+uDecoder.urlDecode.conversionError=文字セット[{1}]を使用した[{0}]のデコードに失敗しました
 uDecoder.urlDecode.missingDigit=%文字の後ろに2つの16進数字が続く必要があるため、[{0}]のデコードに失敗しました。
diff --git a/java/org/apache/tomcat/util/compat/LocalStrings_ja.properties b/java/org/apache/tomcat/util/compat/LocalStrings_ja.properties
index ade78be..62e3923 100644
--- a/java/org/apache/tomcat/util/compat/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/util/compat/LocalStrings_ja.properties
@@ -14,3 +14,5 @@
 # limitations under the License.
 
 jre9Compat.invalidModuleUri=モジュール URI [{0}] を JarScanner で処理する URL に変換できませんでした。
+jre9Compat.javaPre9=クラスが見つからないため Java 9 以前の JVM 上でコードが実行されていると仮定します
+jre9Compat.unexpected=Java9 クラスやメソッドへの参照の生成に失敗しました
diff --git a/java/org/apache/tomcat/util/descriptor/LocalStrings_ja.properties b/java/org/apache/tomcat/util/descriptor/LocalStrings_ja.properties
index 099dfed..ca41781 100644
--- a/java/org/apache/tomcat/util/descriptor/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/util/descriptor/LocalStrings_ja.properties
@@ -17,5 +17,5 @@ digesterFactory.missingSchema=XMLスキーマ[{0}]が見つかりませんでし
 
 localResolver.unresolvedEntity=publicID [{1}]、system ID [{2}]、およびベースURI [{3}]を持つXMLリソース[{0}]を既知のローカルエンティティに解決できませんでした。
 
-xmlErrorHandler.error=致命的ではないエラー[{0}]は処理[{1}]を報告しました。
+xmlErrorHandler.error=処理[{1}]の間に致命的ではないエラー[{0}]が報告されました。
 xmlErrorHandler.warning=警告[{0}]が報告されました。[{1}]を処理中
diff --git a/java/org/apache/tomcat/util/http/LocalStrings_ja.properties b/java/org/apache/tomcat/util/http/LocalStrings_ja.properties
index 3668409..fb3c0dd 100644
--- a/java/org/apache/tomcat/util/http/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/util/http/LocalStrings_ja.properties
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-cookies.fallToDebug=注:さらなるCookieエラーの発生はDEBUGレベルで記録されます。
+cookies.fallToDebug=注: 以降のCookieエラーの発生はDEBUGレベルでログに出力されます。
 cookies.invalidCookieToken=Cookie: 不正な cookie です。値がトークンではないか、クォートされていません。
 cookies.invalidSpecial=Cookies: 不明な特別な Cookie
 cookies.maxCountFail=最大数[{0}]以上のクッキーが検出されました。
@@ -25,10 +25,9 @@ parameters.copyFail=デバッグログの目的で元のパラメータ値のコ
 parameters.decodeFail.debug=文字列のデコードに失敗しました。パラメーター [{0}] (値 [{1}]) は無視しました。
 parameters.decodeFail.info=文字のデコードに失敗しました。 値[{1}]のパラメータ[{0}]は無視されました。 ここで引用された名前と値は、デコードに失敗したために破損している可能性があることに注意してください。 デバッグレベルのログを使用して、破損していない元の値を確認してください。
 parameters.emptyChunk=空のパラメータチャンクが無視されます。
-parameters.fallToDebug=\n\
-メモ: 以降のパラメータエラーは DEBUG レベルでロギングします。
+parameters.fallToDebug=注: 以降のパラメータエラーの発生はDEBUGレベルでログに出力されます。
 parameters.invalidChunk=バイト値 [{0}] で始まりバイト値 [{1}] で終了する不正なチャンクです。値 [{2}] を無視します。
 parameters.maxCountFail=単独のリクエスト ([{0}]) のリクエストパラメーター (GET および POST) の数が上限値を超えています。上限値を超えるすべてのパラメーターは無視します。上限値を変更するには Connector 要素の maxParameterCount 属性を設定してください。
-parameters.maxCountFail.fallToDebug=Note: 今後同様のエラーが発生した場合ログを DEBUG レベルで出力します。
+parameters.maxCountFail.fallToDebug=注: 以降のこのエラーの発生はDEBUGレベルでログに出力されます。
 parameters.multipleDecodingFail=文字のデコードに失敗しました。 合計[{0}]個の障害が検出されましたが、最初のものだけが記録されました。 このロガーがすべての失敗を記録するためにはデバッグレベルのロギングを有効にします。
 parameters.noequal=[{2}]の値で[{0}]の位置から[{1}]の位置で終了するパラメータには、 ''=''文字が続いていませんでした。
diff --git a/java/org/apache/tomcat/util/modeler/LocalStrings_ja.properties b/java/org/apache/tomcat/util/modeler/LocalStrings_ja.properties
index 8ce4c81..2191b9a 100644
--- a/java/org/apache/tomcat/util/modeler/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/util/modeler/LocalStrings_ja.properties
@@ -13,5 +13,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-modules.digesterParseError=レジストリデータの解析エラー
-modules.readDescriptorsError=ディスクリプタ読み取り中のエラー
+modules.digesterParseError=レジストリデータ解析中のエラー
+modules.readDescriptorsError=記述子読み取り中のエラー
diff --git a/java/org/apache/tomcat/websocket/LocalStrings_ja.properties b/java/org/apache/tomcat/websocket/LocalStrings_ja.properties
index ab136fd..0285624 100644
--- a/java/org/apache/tomcat/websocket/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/websocket/LocalStrings_ja.properties
@@ -29,11 +29,12 @@ backgroundProcessManager.processFailed=バックグラウンド処理が失敗
 
 caseInsensitiveKeyMap.nullKey=null 値はキーに使用できません。
 
-futureToSendHandler.timeout=[{0}] [{1}]を完了するのを待ってから操作がタイムアウトしました
+futureToSendHandler.timeout=完了を [{0}] [{1}] 待機後に、操作がタイムアウトしました
 
+perMessageDeflate.alreadyClosed=transformer はクローズされました。これ以上使用されません
 perMessageDeflate.deflateFailed=圧縮された WebSocket フレームを展開できません。
 perMessageDeflate.duplicateParameter=[{0}]拡張パラメータの重複した定義
-perMessageDeflate.invalidWindowSize=[{0}] のウインドウサイズに不正な値 [{1}] が指定されました。ウインドウサイズは 8 より大きく 15 未満でなければなりません。
+perMessageDeflate.invalidWindowSize=[{0}] のウインドウサイズに不正な値 [{1}] が指定されました。ウインドウサイズは 8 以上 15 以下でなければなりません。
 perMessageDeflate.unknownParameter=未知の拡張パラメーター [{0}] が指定されました。
 
 transformerFactory.unsupportedExtension=未対応の拡張 [{0}] です。
@@ -97,7 +98,7 @@ wsSession.unknownHandler=認識できないタイプ[{1}]のメッセージハ
 wsSession.unknownHandlerType=認識できない型[{1}]としてラップされたメッセージハンドラ[{0}]を追加できません。
 
 wsWebSocketContainer.asynchronousSocketChannelFail=サーバーへの接続を開始できません。
-wsWebSocketContainer.defaultConfiguratorFail=デフォルトコンフィグレータの作成に失敗しました。
+wsWebSocketContainer.defaultConfiguratorFail=既定のコンフィグレータ生成に失敗しました。
 wsWebSocketContainer.endpointCreateFail=クラス [{0}] のローカルエンドポイントを作成できません。
 wsWebSocketContainer.failedAuthentication=HTTP応答コード[{0}]を処理できませんでした。 認証ヘッダーがサーバーによって受け入れられませんでした。
 wsWebSocketContainer.httpRequestFailed=WebSocket接続を開始するHTTPリクエストが失敗しました。
diff --git a/java/org/apache/tomcat/websocket/server/LocalStrings_ja.properties b/java/org/apache/tomcat/websocket/server/LocalStrings_ja.properties
index cee1e24..b43c1af 100644
--- a/java/org/apache/tomcat/websocket/server/LocalStrings_ja.properties
+++ b/java/org/apache/tomcat/websocket/server/LocalStrings_ja.properties
@@ -17,7 +17,7 @@ serverContainer.addNotAllowed=以前に登録したことのあるエンドポ
 serverContainer.configuratorFail=POJO クラス [{1}] のインスタンスを構成するクラス [{0}] のインスタンスを作成できません。
 serverContainer.duplicatePaths=複数のエンドポイントを同じパス[{0}]に配備することはできません:既存のエンドポイントは[{1}]で、新しいエンドポイントは[{2}]です。
 serverContainer.encoderFail=タイプ[{0}]のエンコーダを作成できません
-serverContainer.failedDeployment=以前のデプロイメントが失敗したため、ホスト[{1}]内のパス[{0}]を持つWebアプリケーションへのWebSocketエンドポイントのデプロイメントは許可されていません。
+serverContainer.failedDeployment=以前の配備が失敗したため、ホスト[{1}]内のパス[{0}]を持つWebアプリケーションへのWebSocketエンドポイントの配備は許可されていません。
 serverContainer.missingAnnotation=POJOクラス[{0}]は@ServerEndpointでアノテーション付けされていないため、デプロイ出来ません。
 serverContainer.servletContextMissing=ServletContextが指定されていません
 
diff --git a/webapps/examples/WEB-INF/classes/LocalStrings_ja.properties b/webapps/examples/WEB-INF/classes/LocalStrings_ja.properties
index 6c3016f..4e57162 100644
--- a/webapps/examples/WEB-INF/classes/LocalStrings_ja.properties
+++ b/webapps/examples/WEB-INF/classes/LocalStrings_ja.properties
@@ -33,7 +33,7 @@ requestinfo.label.requesturi=Request URI:
 requestinfo.title=リクエスト情報例
 
 requestparams.firstname=First Name:
-requestparams.lastname=\ Last Name:
+requestparams.lastname=Last Name:
 requestparams.no-params=パラメータがありません。何か入力してください。
 requestparams.params-in-req=このリクエストのパラメータ:
 requestparams.title=リクエストパラメータ例


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 02/06: Back-port updates to German translations

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit d9759219406ddd43b40be267796d840cd7531bbf
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:52:24 2020 +0100

    Back-port updates to German translations
---
 java/org/apache/jasper/resources/LocalStrings_de.properties | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/java/org/apache/jasper/resources/LocalStrings_de.properties b/java/org/apache/jasper/resources/LocalStrings_de.properties
index 44a1c29..d6891ca 100644
--- a/java/org/apache/jasper/resources/LocalStrings_de.properties
+++ b/java/org/apache/jasper/resources/LocalStrings_de.properties
@@ -24,7 +24,7 @@ jsp.error.compiler=Keine Java-Compiler verfügbar
 jsp.error.data.file.processing=Fehler beim Verarbeiten der Datei [{0}]
 jsp.error.el.template.deferred=#{...} is im Template Text nicht erlaubt
 jsp.error.fallback.invalidUse=jsp:fallback muss ein direktes Kind von jsp:plugin sein
-jsp.error.file.not.found=JSP-Datei [{0}] nicht gefunden
+jsp.error.file.not.found=Datei [{0}] nicht gefunden
 jsp.error.internal.filenotfound=Interner Fehler: Datei [{0}] nicht gefunden
 jsp.error.invalid.attribute=[{0}] hat ein ungültiges Attribut: [{1}]
 jsp.error.invalid.tagdir=Tag Verzeichnis [{0}] beginnt nicht mit "/WEB-INF/tags"


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 06/06: Backport updates to Chinese translations

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 1b75434a8e0137107436d5deef8338a50437ad76
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:53:35 2020 +0100

    Backport updates to Chinese translations
---
 java/javax/el/LocalStrings_zh_CN.properties        |   1 +
 java/javax/servlet/LocalStrings_zh_CN.properties   |   1 +
 .../servlet/http/LocalStrings_zh_CN.properties     |   2 +
 .../authenticator/LocalStrings_zh_CN.properties    |  16 +++
 .../connector/LocalStrings_zh_CN.properties        |  24 +++++
 .../catalina/core/LocalStrings_zh_CN.properties    | 105 +++++++++++++++++-
 .../catalina/deploy/LocalStrings_zh_CN.properties  |   3 +
 .../catalina/filters/LocalStrings_zh_CN.properties |  19 ++++
 .../ha/deploy/LocalStrings_zh_CN.properties        |  19 ++++
 .../ha/session/LocalStrings_zh_CN.properties       |  28 +++++
 .../catalina/ha/tcp/LocalStrings_zh_CN.properties  |  10 ++
 .../catalina/loader/LocalStrings_zh_CN.properties  |  20 ++++
 .../catalina/manager/LocalStrings_zh_CN.properties |   3 +-
 .../manager/host/LocalStrings_zh_CN.properties     |   2 +-
 .../catalina/realm/LocalStrings_zh_CN.properties   |  35 ++++++
 .../security/LocalStrings_zh_CN.properties         |   6 ++
 .../servlets/LocalStrings_zh_CN.properties         |  19 ++++
 .../catalina/session/LocalStrings_zh_CN.properties |  27 ++++-
 .../catalina/startup/LocalStrings_zh_CN.properties |  59 +++++++---
 .../interceptors/LocalStrings_zh_CN.properties     |   3 +
 .../tribes/tipis/LocalStrings_zh_CN.properties     |   1 +
 .../tribes/util}/LocalStrings_zh_CN.properties     |   2 +-
 .../catalina/users/LocalStrings_zh_CN.properties   |   3 +
 .../catalina/util/LocalStrings_zh_CN.properties    |  15 +++
 .../catalina/valves/LocalStrings_zh_CN.properties  |  39 +++++++
 .../apache/coyote/LocalStrings_zh_CN.properties    |   5 +
 .../coyote/ajp/LocalStrings_zh_CN.properties       |   4 +
 .../coyote/http11/LocalStrings_zh_CN.properties    |   8 ++
 .../http11/filters/LocalStrings_zh_CN.properties   |   2 +
 .../http11/upgrade/LocalStrings_zh_CN.properties   |   4 +
 .../jasper/resources/LocalStrings_zh_CN.properties | 119 +++++++++++++++++++--
 .../apache/naming/LocalStrings_zh_CN.properties    |   5 +
 .../naming/factory/LocalStrings_zh_CN.properties   |   7 ++
 .../webservices}/LocalStrings_zh_CN.properties     |   2 +-
 .../tomcat/util/LocalStrings_zh_CN.properties      |   5 +
 .../tomcat/util/buf/LocalStrings_zh_CN.properties  |   5 +
 .../util/descriptor/LocalStrings_zh_CN.properties  |   5 +
 .../tomcat/util/http/LocalStrings_zh_CN.properties |   4 +
 .../util/http/parser/LocalStrings_zh_CN.properties |   3 +
 .../util/modeler/LocalStrings_zh_CN.properties     |   1 +
 .../tomcat/util/scan/LocalStrings_zh_CN.properties |   2 +
 .../tomcat/websocket/LocalStrings_zh_CN.properties |  40 +++++++
 .../websocket/pojo/LocalStrings_zh_CN.properties   |  10 ++
 .../websocket/server/LocalStrings_zh_CN.properties |   6 ++
 .../WEB-INF/classes/LocalStrings_zh_CN.properties  |   3 +
 45 files changed, 673 insertions(+), 29 deletions(-)

diff --git a/java/javax/el/LocalStrings_zh_CN.properties b/java/javax/el/LocalStrings_zh_CN.properties
index 1803a07..b2b2585 100644
--- a/java/javax/el/LocalStrings_zh_CN.properties
+++ b/java/javax/el/LocalStrings_zh_CN.properties
@@ -14,6 +14,7 @@
 # limitations under the License.
 
 expressionFactory.cannotCreate=无法创建类型为[{0}]的表达式工厂
+expressionFactory.cannotFind=找不到类型为[{0}]的ExpressionFactory
 expressionFactory.readFailed=无法读取[{0}]
 
 objectNotAssignable=无法将类型为[{0}]的对象添加到[{1}]类型的对象数组中
diff --git a/java/javax/servlet/LocalStrings_zh_CN.properties b/java/javax/servlet/LocalStrings_zh_CN.properties
index 7fc4358..60310f3 100644
--- a/java/javax/servlet/LocalStrings_zh_CN.properties
+++ b/java/javax/servlet/LocalStrings_zh_CN.properties
@@ -19,4 +19,5 @@ httpConstraintElement.invalidRolesDeny=使用 DENY 时可能未指定角色
 
 httpMethodConstraintElement.invalidMethod=无效的HTTP.方法
 
+value.false=否
 value.true=true
diff --git a/java/javax/servlet/http/LocalStrings_zh_CN.properties b/java/javax/servlet/http/LocalStrings_zh_CN.properties
index fbbd569..8a3b99e 100644
--- a/java/javax/servlet/http/LocalStrings_zh_CN.properties
+++ b/java/javax/servlet/http/LocalStrings_zh_CN.properties
@@ -14,6 +14,8 @@
 # limitations under the License.
 
 err.cookie_name_blank=Cookie名称不能为null或零长度
+err.cookie_name_is_token=Cookie name[{0}]是一个保留令牌
+err.io.indexOutOfBounds=为大小为[{2}]的数组指定的偏移量[{0}]和/或长度[{1}]无效。
 err.io.nullArray=Null在write方法中传递给字节数组
 err.io.short_read=短.读
 
diff --git a/java/org/apache/catalina/authenticator/LocalStrings_zh_CN.properties b/java/org/apache/catalina/authenticator/LocalStrings_zh_CN.properties
index 69fd28a..0dc5906 100644
--- a/java/org/apache/catalina/authenticator/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/authenticator/LocalStrings_zh_CN.properties
@@ -15,6 +15,8 @@
 
 authenticator.certificates=此请求中没有客户端证书链
 authenticator.changeSessionId=在身份验证时, 会话 ID 从 [{0} 更改为 [{1}]
+authenticator.check.authorize=用户名[{0}]从连接器获得,并被信任为有效。从Tomcat领域获取此用户的角色。
+authenticator.check.authorizeFail=领域无法识别用户[{0}]。创建具有该名称且没有角色的主体。
 authenticator.check.found=已通过身份验证 [{0}]
 authenticator.check.sso=未经过身份验证但找到了SSO会话ID [{0}]。尝试重新验证。
 authenticator.formlogin=对表单登录页的直接引用无效
@@ -31,23 +33,37 @@ basicAuthenticator.invalidCharset=只允许值为null、空字符串或UTF-8
 
 digestAuthenticator.cacheRemove=已从客户端 nonce 缓存中删除有效条目,以便为新条目腾出空间。重播攻击现在是可能的。为防止重播攻击的可能性,请降低nonceValidity或增加nonceCacheSize。此类型的进一步警告将被抑制5分钟。
 
+formAuthenticator.forwardErrorFail=转发到错误页时出现意外错误。
+formAuthenticator.forwardLogin=使用请求方法GET将使用方法[{1}]发出的对[{0}]的请求转发到上下文[{3}]的登录页[{2}]
+formAuthenticator.forwardLoginFail=转发到登录页时出现意外错误。
 formAuthenticator.noErrorPage=没有为上下文[{0}]中的表单身份验证定义错误页
 formAuthenticator.noLoginPage=在环境[{0}]中,未为FORM认证定义登录页面
 
 singleSignOn.debug.associate=SSO将应用程序会话[{1}]与SSO会话[{0}]关联
+singleSignOn.debug.associateFail=SSO无法关联应用程序会话{0},因为SSO会话{1}不存在。
 singleSignOn.debug.cookieCheck=SSO检查SSO cookie
 singleSignOn.debug.cookieNotFound=SSO没有找到SSO cookie
+singleSignOn.debug.deregister=与SSO会话[{1}]关联的SSO过期应用程序会话[{0}]
 singleSignOn.debug.deregisterFail=SSO撤销登记SSO会话[{0}]失败,因为缓存中不包含这个SSO会话
+singleSignOn.debug.deregisterNone=SSO注销了SSO会话[{0}],但未找到关联的应用程序会话
 singleSignOn.debug.hasPrincipal=找到以前经过身份验证的主体[{0}]
 singleSignOn.debug.invoke=SSO为[{0}]处理请求
 singleSignOn.debug.principalCheck=SSO为SSO会话[{0}]寻找缓存的Principal
 singleSignOn.debug.principalFound=SSO 找到了带着认证类型的缓存代理
 singleSignOn.debug.principalNotFound=SSO未找到缓存的Principal,为会话[{0}]擦除SSO cookie
+singleSignOn.debug.register=使用身份验证类型[{2}]的用户[{1}]的SSO注册SSO会话[{0}]。
 singleSignOn.debug.removeSession=SSO 从 SSO session [{1}] 中删除应用程序会话 [{0}]
+singleSignOn.debug.sessionLogout=SSO正在处理SSO会话[{0}]和应用程序会话[{1}]的注销
+singleSignOn.debug.sessionTimeout=SSO正在处理SSO会话[{0}]和应用程序会话[{1}]的超时
 singleSignOn.debug.update=SSO 更新SSO 会话[{0}] 对认证 类型[{1}]
 singleSignOn.sessionExpire.contextNotFound=SSO无法中止[{0}],因为Context未找到
+singleSignOn.sessionExpire.engineNull=SSO无法使会话[{0}]过期,因为引擎为空。
 singleSignOn.sessionExpire.hostNotFound=因为 Host 丢失,SSO 无法使 session [{0}] 失效
 singleSignOn.sessionExpire.managerError=由于会话管理器在检索会话时抛出异常,导致单点登录无法使会话[{0}]失效
 singleSignOn.sessionExpire.managerNotFound=SSO无法使会话[{0}]过期,因为找不到管理器
+singleSignOn.sessionExpire.sessionNotFound=SSO无法使会话[{0}]过期,因为找不到该会话
 
 spnegoAuthenticator.authHeaderNoToken=客户端发送的协商授权 header 未包含 token
+spnegoAuthenticator.authHeaderNotNego=客户端发送的授权头不是以协商开始的。
+spnegoAuthenticator.serviceLoginFail=无法作为服务主体登录
+spnegoAuthenticator.ticketValidateFail=无法验证客户端提供的票证
diff --git a/java/org/apache/catalina/connector/LocalStrings_zh_CN.properties b/java/org/apache/catalina/connector/LocalStrings_zh_CN.properties
index f12fdbc..b2830bf 100644
--- a/java/org/apache/catalina/connector/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/connector/LocalStrings_zh_CN.properties
@@ -13,37 +13,61 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+coyoteAdapter.accesslogFail=尝试向访问日志添加条目时发生异常。
+coyoteAdapter.asyncDispatch=处理异步请求时发生异常
+coyoteAdapter.authenticate=连接器提供的经过身份验证的用户[{0}]。
 coyoteAdapter.authorize=(:使用Tomcat的领域授权用户[{0}]
+coyoteAdapter.checkRecycled.request=遇到未回收的请求并强制回收。
 coyoteAdapter.checkRecycled.response=遇到非回收的相应并强行回收。
 coyoteAdapter.debug=变量[{0}]的值为[{1}]。
+coyoteAdapter.nullRequest=异步分派只能在现有请求上发生
 coyoteAdapter.parsePathParam=无法使用编码[{0}]解析地址参数,url中的该地址参数将被忽略
 
 coyoteConnector.invalidPort=连接器不能启动,因为指定的端口 [{0}]无效
+coyoteConnector.notAsciiSuperset=编码[{0}]不是RFC 7230要求的ASCII超集。连接器将继续使用[{1}]
 coyoteConnector.parseBodyMethodNoTrace=方法TRACE禁止包含实体(详情查看RFC 2616 章节 9.6)
+coyoteConnector.protocolHandlerDestroyFailed=协议处理程序销毁失败
+coyoteConnector.protocolHandlerInitializationFailed=协议处理程序初始化失败
 coyoteConnector.protocolHandlerInstantiationFailed=协议处理程序实例化失败
 coyoteConnector.protocolHandlerPauseFailed=协议处理程序暂停失败
+coyoteConnector.protocolHandlerResumeFailed=协议处理程序恢复失败
 coyoteConnector.protocolHandlerStartFailed=协议处理器启动失败
 coyoteConnector.protocolHandlerStopFailed=协议处理程序.停止失败
 
+coyoteRequest.alreadyAuthenticated=此请求已通过身份验证
 coyoteRequest.attributeEvent=属性事件侦听器引发的异常
 coyoteRequest.authenticate.ise=):提交响应后无法调用authenticate()
 coyoteRequest.changeSessionId=无法更改 session ID。 没有与此请求关联的 session。
 coyoteRequest.chunkedPostTooLarge=由于请求参数数据太大,导致参数不能解析。因为当前请求是块状请求,后续也不会处理。如果应用程序需要接收大的POST请求,可以使用连接器的maxPostSize解决它。
+coyoteRequest.getContextPath.ise=找不到规范上下文路径[{0}]与用户代理[{1}]提供的URI之间的匹配项。
+coyoteRequest.getInputStream.ise=已为此请求调用getReader()
 coyoteRequest.getReader.ise=当前请求已经调用过方法getInputStream()
 coyoteRequest.gssLifetimeFail=为用户主体 [{0}] 获取剩余生命期失败
 coyoteRequest.maxPostSizeExceeded=):大多部分请求包含的参数数据(不包括上载的文件)超过了关联连接器上设置的maxPostSize 的限制
+coyoteRequest.parseParameters=处理发布的参数时引发异常
+coyoteRequest.postTooLarge=未分析参数,因为发布的数据太大。如果应用程序应接受大型post,请使用连接器的maxPostSize属性来解决此问题。
 coyoteRequest.sendfileNotCanonical=无法确定指定用于sendfile的文件[{0}]的规范名称
 coyoteRequest.sessionCreateCommitted=提交响应后无法创建会话
 coyoteRequest.sessionEndAccessFail=在回收请求时,异常触发了对会话的结束访问。
 coyoteRequest.setAttribute.namenull=不能在一个空的名字上调用setAttribute
+coyoteRequest.uploadCreate=根据servlet[{1}]的要求创建临时上载位置[{0}]
+coyoteRequest.uploadCreateFail=无法创建上载位置[{0}]
 coyoteRequest.uploadLocationInvalid=临时上传路径[{0}]无效
 
+coyoteResponse.getOutputStream.ise=已为此响应调用getWriter()
 coyoteResponse.getWriter.ise=当前响应已经调用了方法getOutputStream()
 coyoteResponse.reset.ise=已经提交响应后无法调用reset()
+coyoteResponse.resetBuffer.ise=提交响应后无法重置缓冲区
 coyoteResponse.sendError.ise=响应提交后无法调用sendError()
+coyoteResponse.sendRedirect.ise=提交响应后无法调用sendRedirect()。
 coyoteResponse.sendRedirect.note=<html><body><p>重定向到<a href="{0}">{0}</a></p></body></html>
+coyoteResponse.setBufferSize.ise=写入数据后无法更改缓冲区大小
+
+inputBuffer.streamClosed=关闭的流。
 
 request.asyncNotSupported=当前链的筛选器或servlet不支持异步操作。
+request.fragmentInDispatchPath=调度路径[{0}]中的片段已被删除
+request.notAsync=如果当前请求不在异步模式下,则调用此方法是非法的(即isAsyncStarted()返回false)
 
 requestFacade.nullRequest=请求对象已被回收,不再与此facade关联
 
diff --git a/java/org/apache/catalina/core/LocalStrings_zh_CN.properties b/java/org/apache/catalina/core/LocalStrings_zh_CN.properties
index 2b88e05..79779a5 100644
--- a/java/org/apache/catalina/core/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/core/LocalStrings_zh_CN.properties
@@ -13,74 +13,132 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+applicationContext.addFilter.ise=无法将筛选器添加到上下文[{0}],因为该上下文已初始化
 applicationContext.addListener.iae.cnfe=无法创建类型为 [{0}] 的实例
+applicationContext.addListener.iae.init=无法将类型为[{0}]的实例添加为侦听器
+applicationContext.addListener.iae.sclNotAllowed=一旦调用了第一个ServletContextListener,就不能再添加ServletContextListener。
 applicationContext.addListener.iae.wrongType=指定的类型[{0}]不是预期的侦听器类型之一
+applicationContext.addListener.ise=无法将侦听器添加到上下文[{0}]中,因为该上下文已初始化
 applicationContext.addRole.ise=上下文被初始化后,角色不能再被添加到[{0}]中
 applicationContext.addServlet.ise=无法将servlet添加到上下文[{0}]中,因为该上下文已初始化
 applicationContext.attributeEvent=属性事件监听器引发的异常
+applicationContext.illegalDispatchPath=应用程序试图获取具有非法路径[{0}]的请求分派器,但该路径被拒绝,因为它包含一个编码的目录遍历尝试
 applicationContext.invalidFilterName=由于筛选器名称[{0}]无效,无法添加筛选器定义。
 applicationContext.invalidServletName=由于servlet名称[{0}]无效,无法添加对应servlet的定义。
+applicationContext.lookup.error=在上下文[{1}]中找不到资源[{0}]
 applicationContext.mapping.error=映射中.的错误
+applicationContext.requestDispatcher.iae=路径[{0}]不以“/”字符开头
 applicationContext.resourcePaths.iae=路径[{0}]不以“/”字符开头
+applicationContext.role.iae=要为上下文[{0}]声明的单个角色不能为空,也不能为空字符串
+applicationContext.roles.iae=要为上下文[{0}]声明的角色数组不能为空
 applicationContext.setAttribute.namenull=Name 不能为 null
+applicationContext.setInitParam.ise=初始化上下文后无法设置初始化参数
+applicationContext.setSessionTracking.iae.invalid=该上下文不支持为上下文[{1}]请求的会话跟踪模式[{0}]
 applicationContext.setSessionTracking.iae.ssl=为上下文 [{0}] 请求的 session 跟踪模式包括 SSL 和至少一种其他模式。 SSL可能未配置其他模式。
 applicationContext.setSessionTracking.ise=当上下文正在运行,无法设置上下文[{0}]的会话跟踪模式
 
+applicationDispatcher.allocateException=为servlet[{0}]分配异常
+applicationDispatcher.deallocateException=servlet[{0}]的解除分配异常
+applicationDispatcher.forward.ise=提交响应后无法转发
+applicationDispatcher.isUnavailable=Servlet[{0}]当前不可用
 applicationDispatcher.serviceException=Servlet[{0}]的Servlet.service()抛出异常
+applicationDispatcher.specViolation.request=原始ServletRequest或包装的原始ServletRequest未传递给RequestDispatcher,这违反了SRV.8.2和SRV.14.2.5.1
 applicationDispatcher.specViolation.response=原始的ServletResponse或包装后的ServletResponse未传递给RequestDispatcher,原因:违反了SRV.8.2和SRV.14.2.5.1\n\
 \n
 
+applicationFilterConfig.jmxRegisterFail=类型为[{0}]且名称为[{1}]的筛选器的JMX注册失败
+applicationFilterConfig.jmxUnregister=已完成对类型为[{0}]且名称为[{1}]的筛选器的JMX取消注册。
+applicationFilterConfig.jmxUnregisterFail=类型为[{0}]且名称为[{1}]的筛选器的JMX取消注册失败
 applicationFilterConfig.preDestroy=):为类型为[{1}]的名为[{0}]的筛选器调用preDestroy 失败
 applicationFilterConfig.release=失败的销毁过滤器类型为[{1}]名称为[{0}]
 
+applicationFilterRegistration.nullInitParam=由于名称和/或值为空,无法为筛选器设置初始化参数。名称[{0}],值[{1}]
 applicationFilterRegistration.nullInitParams=由于name和(或)value为null,无法为过滤器设置初始化参数。name为 [{0}],value为 [{1}]
 
+applicationHttpRequest.fragmentInDispatchPath=调度路径[{0}]中的片段已被删除
+
 applicationServletRegistration.setServletSecurity.iae=为部署到名为[{1}]的上下文的Servlet[{0}]指定的空约束
+applicationServletRegistration.setServletSecurity.ise=无法将安全性约束添加到已部署到名称为[{1}]的上下文的servlet [{0}]中,因为上下文已被初始化
+
+applicationSessionCookieConfig.ise=无法将属性{0}添加到上下文{1}的sessioncokieconfig中,因为该上下文已初始化
 
 aprListener.aprInitError=基于APR的本地库加载失败.错误报告为[{0}]
+aprListener.currentFIPSMode=当前FIPS模式:[{0}]。
 aprListener.enterAlreadyInFIPSMode=AprLifecycleListener 配置为强制进入FIPS模式,但库已处于FIPS模式[{0}]
+aprListener.flags=APR功能:IPv6[{0}]、sendfile[{1}]、accept filters[{2}]、random[{3}]。
 aprListener.initializeFIPSFailed=进入FIPS模式失败
 aprListener.initializeFIPSSuccess=成功的进入FIPS 模式
+aprListener.initializedOpenSSL=OpenSSL成功初始化 [{0}]
 aprListener.initializingFIPS=初始化FIPS模式...
+aprListener.requireNotInFIPSMode=AprLifecycleListener配置为要求库已处于FIPS模式,但它未处于FIPS模式
 aprListener.skipFIPSInitialization=已经处于FIPS模式,跳过FIPS初始化
+aprListener.sslInit=无法初始化SSLEngine
 aprListener.tcnInvalid=安装了不兼容的APR(基于Apache Tomcat原生库)版本[{0}],而Tomcat要求版本[{1}]
 aprListener.tcnVersion=安装了基于APR的Apache Tomcat Native库的旧版本[{0}],而Tomcat建议使用[{1}]的最低版本
 aprListener.tooLateForFIPSMode=无法设置FIPSMode:SSL已初始化
+aprListener.tooLateForSSLEngine=无法设置引擎:SSL已初始化
 aprListener.tooLateForSSLRandomSeed=无法设置 SSLRandomSeed:SSL已经初始化
-
+aprListener.wrongFIPSMode=AprLifecycleListener的FIPSMode选项的意外值:[{0}]
+
+asyncContextImpl.asyncDispachError=异步调度时出错
+asyncContextImpl.asyncRunnableError=通过AsyncContext.start()处理异步运行时出错
+asyncContextImpl.dispatchingStarted=异步调度操作已经被调用。不允许在同一异步周期内进行其他异步调度操作。
+asyncContextImpl.fireOnComplete=为任何异步侦听器触发onComplete()事件
+asyncContextImpl.fireOnError=为任何异步侦听器触发onError()事件
+asyncContextImpl.fireOnStartAsync=为任何异步侦听器启动onStartAsync()事件
+asyncContextImpl.fireOnTimeout=为任何异步侦听器触发onTimeout()事件
 asyncContextImpl.noAsyncDispatcher=从ServletContext 返回的调度程序不支持异步调度
+asyncContextImpl.onCompleteError=对类型为[{0}]的侦听器的onComplete()调用失败
+asyncContextImpl.onErrorError=对类型为[{0}]的侦听器的onError()调用失败
+asyncContextImpl.onStartAsyncError=对类型为[{0}]的侦听器的onStartAsync()调用失败
+asyncContextImpl.onTimeoutError=对类型为[{0}]的侦听器的onTimeout()调用失败
 asyncContextImpl.request.ise=调用方法complete()后或者任意一个dispatch()方法调用后,调用getRequest()方法是非法的
 asyncContextImpl.requestEnded=AsyncContext关联的请求已经完成处理。
 asyncContextImpl.response.ise=调用complete()或者任何的dispatch()方法后,调用getResponse()方法是非法的。
 
 containerBase.backgroundProcess.cluster=异常处理集群[{0}]后台进程
+containerBase.backgroundProcess.realm=异常处理领域[{0}]后台进程
 containerBase.backgroundProcess.unexpectedThreadDeath=后台线程[{0}]意外结束
 containerBase.backgroundProcess.valve=处理阀门[{0}]后台进程异常
 containerBase.nullName=容器名称不能为null
 containerBase.threadedStartFailed=子容器启动失败
+containerBase.threadedStopFailed=停止期间子容器失败
 
 defaultInstanceManager.invalidInjection=方法资源注入注解无效
+defaultInstanceManager.restrictedClass=禁止访问类[{0}]。这是一个限制类。必须将web应用程序配置为具有特权才能加载它
 defaultInstanceManager.restrictedContainerServlet=禁止访问类 [{0}]。 它是一个受限制的类(实现了 ContainerServlet 接口)。 必须将 Web 应用程序配置为特权才能加载它
 defaultInstanceManager.restrictedFiltersResource=找不到受限制的过滤器属性文件[{0}]
 defaultInstanceManager.restrictedListenersResource=无法找到RestrictedListener的配置文件[{0}]
+defaultInstanceManager.restrictedServletsResource=找不到受限制的servlets属性文件[{0}]
+defaultInstanceManager.restrictedWrongValue=类名为{1}的受限类属性文件{0}中的值错误。期望值:[restricted],实际值:[{2}]
 
 filterChain.filter=Filter 执行抛出一个异常
 filterChain.servlet=Servlet执行抛出一个异常
 
 jreLeakListener.classToInitializeFail=在tomcat启动期间未能加载类[{0}],以防止可能的内存泄漏。
 jreLeakListener.gcDaemonFail=Tomcat开始预防潜在的内存溢出期间,触发GC守护线程失败,在非Sun JVMs上这是正常的。
+jreLeakListener.jarUrlConnCacheFail=默认情况下无法禁用Jar URL连接缓存。
+jreLeakListener.ldapPoolManagerFail=在Tomcat启动期间未能触发com.sun.jndi.ldap.LdapPoolManager类的创建以防止可能的内存泄漏。这在非Sun jvm上是预期的。
+jreLeakListener.xmlParseFail=尝试在XML解析期间防止内存泄漏时出错。
 
 naming.addEnvEntry=添加环境条目 [{0}]
 naming.addResourceEnvRef=添加资源环境引用 [{0}]
+naming.bindFailed=无法绑定对象:[{0}]
 naming.invalidEnvEntryType=环境条目[{0}]没有一个有效哦的类型
+naming.invalidEnvEntryValue=环境项[{0}]的值无效。
 naming.jmxRegistrationFailed=注册到JMX失败:[{0}]
 naming.namingContextCreationFailed=创建上下文名称失败
 naming.unbindFailed=解绑对象[{0}]失败
 
+noPluggabilityServletContext.notAllowed=Servlet 3.0规范的第4.4节不允许从未在web.xml,web-fragment.xml文件中定义或未用@WebListener注释的ServletContextListener调用此方法。
+
 standardContext.applicationListener=配置应用程序监听器[{0}]错误
 standardContext.applicationSkipped=由于以前的错误,已跳过安装应用程序侦听器
+standardContext.backgroundProcess.instanceManager=异常处理实例管理器[{0}]后台进程
 standardContext.cluster.noManager=未发现管理器。检查是否需要集群管理器。集群配置:[{0}],应用程序分配:[{1}]
+standardContext.configurationFail=一个或多个组件将上下文标记为未正确配置
 standardContext.duplicateListener=当前上下文已经配置了监听器[{0}],重复的定义将被忽略。
+standardContext.errorPage.error=错误页面位置[{0}]必须以“ /”开头
 standardContext.errorPage.required=ErrorPage不能为null
 standardContext.errorPage.warning=警告:在Servlet 2.4中,错误页位置 [{0}] 必须以"/"开头
 standardContext.extensionValidationError=尝试校验必需的应用程序扩展时发生错误
@@ -94,22 +152,37 @@ standardContext.isUnavailable=此应用程序目前不可用
 standardContext.listenerFail=一个或多个listeners启动失败,更多详细信息查看对应的容器日志文件
 standardContext.listenerStart=异常将上下文初始化事件发送到类的侦听器实例.[{0}]
 standardContext.listenerStop=例外情况发送上下文删除事件[{0}],以便列表实例
+standardContext.loadOnStartup.loadException=web应用程序[{0}]中的Servlet[{1}]引发了load()异常
 standardContext.loginConfig.errorPage=表单错误页[{0}]必须以"/"开始
 standardContext.loginConfig.errorWarning=警告:Servlet 2.4中,表单错误页[{0}]必须以"/"开始
 standardContext.loginConfig.loginPage=表单登录页面 [{0}] 必须以''/''开头
 standardContext.loginConfig.loginWarning=警告:在Servlet 2.4 中 Form 登录页[{0}] 必须以 "/" 开头
+standardContext.loginConfig.required=LoginConfig不能为空
 standardContext.manager=配置类为[{0}]的管理器
 standardContext.managerFail=会话管理器无法启动
+standardContext.namingResource.destroy.fail=无法销毁旧的命名资源
 standardContext.namingResource.init.fail=未能初始化新的命名资源
 standardContext.notStarted=名称为[{0}]的上下文还没有启动
+standardContext.notWrapper=上下文的子级必须是包装器
 standardContext.parameter.duplicate=重复的上下文初始化参数[{0}]
+standardContext.parameter.required=参数名和参数值都是必需的
+standardContext.pathInvalid=上下文路径必须是空字符串或以''/''开头,而不能以''/''结尾。路径[{0}]不符合这些条件,已更改为[{1}]
+standardContext.postconstruct.duplicate=类[{0}]的构造后方法定义重复
+standardContext.postconstruct.required=完全限定的类名和方法名都是必需的
 standardContext.predestroy.duplicate=类 [{0}] 的 @PreDestroy 方法定义重复
+standardContext.predestroy.required=完全合格的类名和方法名都是必需的
+standardContext.reloadingCompleted=已完成重新加载名为{0}的上下文
+standardContext.reloadingStarted=已开始重新加载名为[{0}]的上下文
+standardContext.requestListener.requestInit=向类[{0}]的侦听器实例发送请求初始化的生命周期事件的异常
 standardContext.resourcesInit=初始化静态变量错误
 standardContext.resourcesStart=启动静态资源出错
 standardContext.resourcesStop=停止静态资源时出错
+standardContext.sciFail=ServletContainerInitializer处理期间出错
 standardContext.securityConstraint.mixHttpMethod=在相同的web资源集合中不允许混用: <http-method> 和 <http-method-omission>
 standardContext.securityConstraint.pattern=安全约束中的<url-pattern> [{0}] 无效
 standardContext.servletFail=启动时无法加载一个或多个Servlet。 全部的详细信息可在相应的容器日志文件中找到
+standardContext.servletMap.name=Servlet映射指定未知的Servlet名称[{0}]
+standardContext.servletMap.pattern=servlet映射中的<url pattern>[{0}]无效
 standardContext.startFailed=由于之前的错误,Context[{0}]启动失败
 standardContext.startingContext=启动Context[{0}]出现异常
 standardContext.stop.asyncWaitInterrupted=等待卸载延迟毫秒以完成飞行中的异步请求时收到中断。上下文停止将继续,不会有进一步的延迟。
@@ -125,23 +198,53 @@ standardEngine.jvmRouteFail=无法从系统属性设置引擎的jvmRoute 属性
 standardEngine.notHost=Engine的子节点必须是一个Host
 standardEngine.notParent=引擎不能有父容器
 
+standardHost.clientAbort=远程客户端中止请求,IOException:[{0}]。
+standardHost.invalidErrorReportValveClass=无法加载指定的错误报告阀类:[{0}]
 standardHost.noContext=没有配置上下文来处理此请求
 standardHost.notContext=主机的子节点必须有上下文
 standardHost.nullName=主机名是必需的
+standardHost.problematicAppBase=在主机[{0}]上为appBase使用空字符串会将其设置为CATALINA_BASE,这是一个坏主意
+
+standardHostValue.customStatusFailed=无法正确调度自定义错误页[{0}]
+
+standardPipeline.basic.start=启动新基本阀时出错
+standardPipeline.basic.stop=停止旧基本阀时出错
+standardPipeline.valve.destroy=破坏阀门错误
+standardPipeline.valve.start=错误启动阀
+standardPipeline.valve.stop=错误截止阀
 
+standardServer.accept.error=尝试在侦听shutdown命令的套接字上接受IO异常
+standardServer.accept.readError=尝试读取关机命令时发生IO异常
+standardServer.accept.security=试图在侦听shutdown命令的套接字上接受时发生安全错误
 standardServer.accept.timeout=在调用accept()方法之后,侦听shutdown命令的套接字经历了意外的超时[{0}]毫秒。 这是bug 56684的一个例子?
+standardServer.invalidShutdownCommand=收到无效的关闭命令[{0}]
+standardServer.shutdownViaPort=通过关闭端口接收到有效的关闭命令。正在停止服务器实例。
+standardServer.storeConfig.contextError=存储上下文[{0}]配置时出错
+standardServer.storeConfig.error=存储服务器配置时出错
 
+standardService.start.name=正在启动服务[{0}]
 standardService.stop.name=正在停止服务[{0}]
 
 standardWrapper.allocate=分配一个servlet实例错误
+standardWrapper.allocateException=分配异常的servlet [{0}]
+standardWrapper.deallocateException=servlet[{0}]的解除分配异常
+standardWrapper.destroyException=Servlet[{0}]的Servlet.destroy()引发异常
 standardWrapper.destroyInstance=servlet[{0}]实例管理销毁(destroy) 抛出异常
+standardWrapper.initException=Servlet[{0}]的Servlet.init()引发异常
 standardWrapper.instantiate=实例化Servlet类[{0}]异常
 standardWrapper.isUnavailable=Servlet [{0}]当前不可用。
 standardWrapper.notChild=Wrapper容器内部不允许有子容器。
 standardWrapper.notClass=未为servlet[{0}]指定servlet类
+standardWrapper.notContext=包装的父容器必须是上下文
 standardWrapper.notFound=Servlet [{0}] 不可用
+standardWrapper.notServlet=类{0}不是Servlet
 standardWrapper.releaseFilters=发布过滤器异常,servlet:[{0}]
 standardWrapper.serviceException=在路径为[{1}]的上下文中,servlet[{0}]的Servlet.service()引发异常
+standardWrapper.serviceExceptionRoot=在路径为{1}的上下文中,Servlet[{0}]的Servlet.service()引发了具有根本原因的异常{2}
+standardWrapper.unavailable=将servlet[{0}]标记为不可用
+standardWrapper.unloadException=Servlet[{0}]引发unload()异常
 standardWrapper.unloading=无法分配servlet [{0}],因为它没有被加载
+standardWrapper.waiting=正在等待为Servlet[{1}]释放[{0}]实例
 
 threadLocalLeakPreventionListener.containerEvent.error=异常处理容器事件[{0}]
+threadLocalLeakPreventionListener.lifecycleEvent.error=处理生命周期事件[{0}]时发生异常
diff --git a/java/org/apache/catalina/deploy/LocalStrings_zh_CN.properties b/java/org/apache/catalina/deploy/LocalStrings_zh_CN.properties
index 6d7f3a8..02e82bf 100644
--- a/java/org/apache/catalina/deploy/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/deploy/LocalStrings_zh_CN.properties
@@ -13,8 +13,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+namingResources.cleanupCloseFailed=无法为容器[{2}]中的资源[{1}]调用方法[{0}],因此未对该资源执行清理
 namingResources.cleanupCloseSecurity=无法检索容器[{2}]中的资源[{1}]的方法[{0}],因此没有对该资源进行清理
 namingResources.cleanupNoClose=容器[{1}]中的资源[{0}]没有[{2}]方法,因此没有对该资源执行清理
+namingResources.cleanupNoContext=无法检索容器[{0}]的JNDI命名上下文,因此未对该容器执行清理
+namingResources.cleanupNoResource=无法检索容器[{1}]的JNDI资源[{0}],因此未对该资源执行清理。
 namingResources.ejbLookupLink=EJB的引用[{0}]同时指定了ejb-link和lookup-name
 namingResources.envEntryLookupValue=环境参数 [{0}] 指定查询名称和值
 namingResources.mbeanCreateFail=为命名资源[{0}]创建MBean失败
diff --git a/java/org/apache/catalina/filters/LocalStrings_zh_CN.properties b/java/org/apache/catalina/filters/LocalStrings_zh_CN.properties
index 956688b..3cdf7f6 100644
--- a/java/org/apache/catalina/filters/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/filters/LocalStrings_zh_CN.properties
@@ -13,7 +13,10 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+addDefaultCharset.unsupportedCharset=不支持指定的字符集[{0}]
+
 corsFilter.invalidPreflightMaxAge=无法解析 preflightMaxAge
+corsFilter.invalidSupportsCredentials=当allowedOrigins=[*]时,不允许配置supportsCredentials=[true]。
 corsFilter.nullRequest=HttpServletRequest 对象为空
 corsFilter.nullRequestType=CORSRequestType对象为空(null)
 corsFilter.onlyHttp=CORS不支持非HTTP请求或响应
@@ -22,13 +25,22 @@ corsFilter.wrongType2=期望类型为[{0}]或[{1}]的HttpServletRequest对象
 
 csrfPrevention.invalidRandomClass=不能使用class [{0}]创建随机源。
 
+expiresFilter.exceptionProcessingParameter=异常处理配置参数[{0}]:[{1}]
+expiresFilter.expirationHeaderAlreadyDefined=请求[{0}]的响应状态为[{1}]内容类型[{2}],已经定义了到期标头
+expiresFilter.filterInitialized=使用配置[{0}]初始化的筛选器
 expiresFilter.invalidDurationNumber=指令[{1}]中的持续时间(数字)[{0}]无效
+expiresFilter.invalidDurationUnit=指令[{1}]中的持续时间单位无效(年|月|周|天|小时|分钟|秒)[{0}]
 expiresFilter.noDurationFound=在指令[{0}]中找不到持续时间
+expiresFilter.noDurationUnitAfterAmount=在指令[{1}]中的amount[{0}]之后找不到持续时间单位
 expiresFilter.noExpirationConfigured=请求[{0}],其响应状态为[{1}]内容类型[{2}],未配置到期日期
 expiresFilter.noExpirationConfiguredForContentType=没有为 content-type [{0}] 找到过期配置
+expiresFilter.numberError=分析逗号分隔列表[{1}中位置[{0}(基于零)处的数字时发生异常
 expiresFilter.responseAlreadyCommited=请求[{0}],无法对已提交的响应应用ExpiresFilter。
+expiresFilter.setExpirationDate=请求{0},响应状态为{1},内容类型为{2},设置过期日期{3}
+expiresFilter.skippedStatusCode=请求{0},响应状态为{1},内容类型为{1},跳过给定状态的过期头生成。
 expiresFilter.startingPointInvalid=在指令[{1}]中无效的起点(访问|现在|修改|a<秒>|m<秒>)[{0}]
 expiresFilter.startingPointNotFound=起始点(access|now|modification|a<seconds>|m<seconds>)未在指令[{0}]中找到
+expiresFilter.unknownParameterIgnored=忽略值为[{1}]的未知参数[{0}]!
 expiresFilter.unsupportedStartingPoint=不支持的起始点 [{0}]
 expiresFilter.useDefaultConfiguration=对内容类型[{1}]使用默认的[{0}]返回[{2}]
 expiresFilter.useMatchingConfiguration=对内容类型[{2}]返回[{3}]使用[{0}]匹配[{1}]
@@ -40,9 +52,16 @@ http.403=禁止访问指定资源 [{0}] 。
 httpHeaderSecurityFilter.clickjack.invalid=为防点击挟持的响应消息头指定了非法值 [{0}]
 httpHeaderSecurityFilter.committed=在进入HttpHeaderSecurityFilter的时候响应消息已经提交导致不能添加响应消息头
 
+remoteCidrFilter.invalid=为{0}提供的配置无效。有关详细信息,请参阅以前的消息。
 remoteCidrFilter.noRemoteIp=客户端没有 IP 地址,请求被拒绝。
 
 remoteIpFilter.invalidHostHeader=HTTP头 [{1}]中,为Host找到一个无效值 [{0}]
 remoteIpFilter.invalidHostWithPort=HTTP头 [{1}]中的Host值 [{0}]包含一个被忽略的端口号
+remoteIpFilter.invalidNumber=参数[{0}]的数字非法:[{1}]
 
 requestFilter.deny=基于属性:[{1}],[{0}]的请求被拒绝。
+
+restCsrfPreventionFilter.invalidNonce=CSRF nonce验证失败
+
+webDavFilter.xpProblem=WebdavFixFilter:已知XP-x64-SP2客户端不使用WebDAV Servlet
+webDavFilter.xpRootContext=WebdavFixFilter:XP-x64-SP2客户端将仅与根上下文一起工作
diff --git a/java/org/apache/catalina/ha/deploy/LocalStrings_zh_CN.properties b/java/org/apache/catalina/ha/deploy/LocalStrings_zh_CN.properties
index 7bdb390..cd87218 100644
--- a/java/org/apache/catalina/ha/deploy/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/ha/deploy/LocalStrings_zh_CN.properties
@@ -13,8 +13,12 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+farmWarDeployer.alreadyDeployed=webapp[{0}]已部署。
 farmWarDeployer.deleteFail=无法删除 [{0}]
+farmWarDeployer.deployEnd=[{0}]中的部署已完成。
+farmWarDeployer.fileCopyFail=无法从[{0}]复制到[{1}]
 farmWarDeployer.hostOnly=FarmWarDeployer 只有做为 host cluster 的子元素是才生效
+farmWarDeployer.hostParentEngine=FarmWarDeployer只能在[{0}]的父级是引擎时工作!
 farmWarDeployer.mbeanNameFail=无法为引擎[{0}]和主机[{1}]构造MBean对象名
 farmWarDeployer.modInstall=从 [{1}] 安装 webapp [{0}]
 farmWarDeployer.modInstallFail=无法安装 WAR 文件
@@ -23,17 +27,32 @@ farmWarDeployer.msgRxDeploy=接收集群部署路径[{0}],战争[{1}]
 farmWarDeployer.msgRxUndeploy=从路径[{0}]接收未部署群集
 farmWarDeployer.removeFailLocal=从[{0}]本地移除失败
 farmWarDeployer.removeFailRemote=本地从[{0}]删除失败,其他经理有app在服务!
+farmWarDeployer.removeLocal=正在删除webapp[{0}]
 farmWarDeployer.removeLocalFail=无法移除WAR文件
+farmWarDeployer.removeStart=群集范围内删除web应用程序[{0}]
+farmWarDeployer.removeTxMsg=从[{0}]发送群集范围的取消部署
 farmWarDeployer.renameFail=将 [{0}] 重命名为 [{1}] 失败
+farmWarDeployer.sendEnd=发送群集war部署路径[{0}],war[{1}]已完成。
 farmWarDeployer.sendFragment=将群集战争片段路径[{0}],战争[{1}]发送到[{2}]
 farmWarDeployer.sendStart=发送集群war部署路径[{0}],war[{1}]已启动
 farmWarDeployer.servicingDeploy=应用程序[{0}]正在服务。再次触摸WAR文件[{1}]!
 farmWarDeployer.servicingUndeploy=正在处理应用程序[{0}],无法从备份群集节点中删除它
+farmWarDeployer.started=群集FarmWarDeployer已启动。
+farmWarDeployer.stopped=群集FarmWarDeployer已停止。
 farmWarDeployer.undeployEnd=从[{0}]取消部署完成。
 farmWarDeployer.undeployLocal=不能部署本地上下文[{0}]
+farmWarDeployer.watchDir=群集部署正在监视[{0}]的更改
 
+fileMessageFactory.cannotRead=无法读取消息,此工厂正在写入
+fileMessageFactory.cannotWrite=无法写入消息,此工厂正在读取
+fileMessageFactory.closed=工厂已经关闭
 fileMessageFactory.deleteFail=无法删除 [{0}]
+fileMessageFactory.duplicateMessage=收到重复消息。发件人超时是否太低?上下文:[{0}]文件名:[{1}]数据:[{2}]数据长度:[{3}]
+
+fileNewFail=无法创建[{0}]
 
 warWatcher.cantListWatchDir=无法列出WatchDir文件夹 [{0}] 中的文件:检查该路径是否为目录且应用具有读取权限。
 warWatcher.checkWarResult=WarInfo.check() 为[{1}]返回[{0}]
 warWatcher.checkingWar=检查 WAR 文件 [{0}]
+warWatcher.checkingWars=正在检查[{0}]中的wars
+warWatcher.listedFileDoesNotExist=[{1}]中检测到[{0}],但不存在。在[{1}]上检查目录权限?
diff --git a/java/org/apache/catalina/ha/session/LocalStrings_zh_CN.properties b/java/org/apache/catalina/ha/session/LocalStrings_zh_CN.properties
index a0d41fb..cf4fb1e 100644
--- a/java/org/apache/catalina/ha/session/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/ha/session/LocalStrings_zh_CN.properties
@@ -19,38 +19,66 @@ backupManager.startUnable=无法启动BackupManager: [{0}]
 backupManager.stopped=管理者[{0}]正在停止。
 
 deltaManager.createMessage.access=管理器[{0}]:创建会话为会话[{1}]存取消息
+deltaManager.createMessage.accessChangePrimary=管理器{0}:为会话{1}创建更改主节点消息。
+deltaManager.createMessage.allSessionData=管理器[{0}]发送了所有会话数据。
+deltaManager.createMessage.allSessionTransfered=管理器[{0}]发送了所有传输的会话数据
 deltaManager.createMessage.delta=管理器[{0}] ):为会话[{1}]创建增量请求消息
 deltaManager.createMessage.expire=管理器[{0}] (:为会话[{1}]创建会话过期消息
+deltaManager.createMessage.unableCreateDeltaRequest=无法序列化sessionid[{0}]的增量请求
 deltaManager.createSession.newSession=用id[{0}]创建一个扩展会话(DeltaSession),总数为 [{1}]
+deltaManager.dropMessage=管理器[{0}]:将消息[{1}]放入GET_所有会话同步阶段开始日期[{2}]消息日期[{3}]。
+deltaManager.expireSessions=管理器[{0}]关闭时使会话过期
 deltaManager.foundMasterMember=复制主master 成员在上下文中被发现.\n
 deltaManager.loading.cnfe=加载持久化会话 [{0}] 时出现ClassNotFoundException
+deltaManager.loading.existing.session=重载现有会话[{0}]。
 deltaManager.loading.ioe=加载持久 session 时出现 IOException:[{0}]
 deltaManager.managerLoad=从永久存储加载会话时发生异常
+deltaManager.noCluster=启动。。。没有与此上下文关联的群集:[{0}]。
 deltaManager.noContextManager=管理器[{0}]:回复[{1}]发送的“获取所有会话数据”消息,在[{2}] ms后收到“无匹配的上下文管理器”消息
+deltaManager.noMasterMember=启动。。。在域[{1}]没有上下文[{0}]的其他成员
+deltaManager.noMembers=管理器[{0}]:正在跳过状态传输。群集组中没有活动的成员。
 deltaManager.noSessionState=管理者[{0}]:没有收到[{1}]发送的会话状态,在[{2}]毫秒之后超时。
 deltaManager.receiveMessage.accessed=管理器[{0}]:接收会话为会话[{1}]存取消息
 deltaManager.receiveMessage.allSessionDataAfter=Manager [{0}]: session 状态反序列化
 deltaManager.receiveMessage.allSessionDataBegin=管理者[{0}]:接收到所有会话数据状态
+deltaManager.receiveMessage.createNewSession=管理器{0}:已收到会话为会话{1}创建的消息
+deltaManager.receiveMessage.delta=管理器[{0}]:已收到会话[{1}的会话增量消息。
 deltaManager.receiveMessage.delta.unknown=管理器[{0}]:未知会话的接收会话增量[{1}]
+deltaManager.receiveMessage.error=管理器[{0}]:无法通过TCP通道接收消息
+deltaManager.receiveMessage.eventType=管理器[{0}]:从[{2}]接收到类型为[{1}]的SessionMessage
 deltaManager.receiveMessage.expired=管理器[{0}]: 接收到的会话 [{1}] 已过期。
+deltaManager.receiveMessage.noContextManager=从节点[{1}:{2}]接收的管理器[{0}]没有上下文管理器
+deltaManager.receiveMessage.transfercomplete=从节点[{1}:{2}]接收的管理器[{0}]会话状态已传输。
+deltaManager.receiveMessage.unloadingAfter=管理器[{0}]:卸载会话完成
 deltaManager.receiveMessage.unloadingBegin=管理器[{0}]: 开始卸载会话
 deltaManager.registerCluster=将管理器[{0}]注册到名为[{2}]的集群元素[{1}]
 deltaManager.sendMessage.newSession=\ 管理器 [{0}] 发送新的会话 [{1}]
 deltaManager.sessionReceived=管理器[{0}];在[{1}]发送的会话状态在[{2}]毫秒内收到。
+deltaManager.startClustering=在[{0}]启动群集管理器
 deltaManager.stopped=管理器[{0}]已停止
 deltaManager.unableSerializeSessionID=无法序列化会话ID [{0}]
 deltaManager.unloading.ioe=当保存永久回话:[{0}] 时,抛出 IOException
+deltaManager.waitForSessionState=管理器[{0}],正在从[{1}]请求会话状态。如果在[{2}]秒内未收到会话状态,则此操作将超时
 
 deltaRequest.showPrincipal=Principal [{0}] 和session [{1}]产生关联。
 deltaRequest.wrongPrincipalClass=ClusterManager仅支持GenericPrincipal。 你的Realm使用的Principal类为[{0}]。
 
+deltaSession.notifying=通知群集会话过期:primary=[{0}],sessionId[{1}]
+deltaSession.readSession=readObject()正在加载会话[{0}]
 deltaSession.writeSession=writeObject()存储会话[{0}]
 
+jvmRoute.cannotFindSession=找不到会话[{0}]
 jvmRoute.changeSession=会话从[{0}]切换到[{1}]
+jvmRoute.failover=在会话id[{2}]检测到具有不同jvmRoute的故障转移-原始路由:[{0}]新路由:[{1}]
+jvmRoute.foundManager=在[{1}]找到群集管理器[{0}]
 jvmRoute.missingJvmRouteAttribute=没有配置引擎jvmRoute属性!
+jvmRoute.noCluster=已配置JvmRouterBinderValve,但未使用群集。如果使用了PersistentManager,故障转移仍然有效。
 jvmRoute.notFoundManager=没有在 [{0}] 找到Cluster Manager
 jvmRoute.set.orignalsessionid=在请求属性[{0}]值:[{1}]处设置原始会话ID
+jvmRoute.turnoverInfo=周转检查时间[{0}]msec
 jvmRoute.valve.started=JvmRouteBinderValve 启动
 jvmRoute.valve.stopped=JvmRouteBinderValve停止
 
+standardSession.notSerializable=无法序列化会话[{1}]的会话属性[{0}]。
+standardSession.removeAttribute.ise=removeAttribute:会话已失效。
 standardSession.setAttribute.namenull=setAttribute:名称属性不能为空
diff --git a/java/org/apache/catalina/ha/tcp/LocalStrings_zh_CN.properties b/java/org/apache/catalina/ha/tcp/LocalStrings_zh_CN.properties
index ce89c6e..71d3626 100644
--- a/java/org/apache/catalina/ha/tcp/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/ha/tcp/LocalStrings_zh_CN.properties
@@ -13,8 +13,18 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+ReplicationValve.crossContext.add=将跨上下文会话复制容器添加到replicationValve threadlocal
+ReplicationValve.crossContext.registerSession=注册交叉上下文会话id =[{0}]来自上下文[{1}]
+ReplicationValve.crossContext.remove=从replicationValve threadlocal中删除跨上下文会话复制容器
+ReplicationValve.crossContext.sendDelta=从上下文[{0}]发送跨上下文会话增量。
 ReplicationValve.filter.failure=无法编译 filter = [{0}]
+ReplicationValve.filter.loading=正在加载请求筛选器=[{0}]
 ReplicationValve.invoke.uri=在[{0}]上执行同步请求
+ReplicationValve.nocluster=没有为此请求配置群集。
+ReplicationValve.resetDeltaRequest=群集是独立的:在上下文[{0}]处重置会话请求增量
 ReplicationValve.send.failure=无法执行同步请求。
+ReplicationValve.send.invalid.failure=无法通过群集发送会话[id={0}]无效消息。
 ReplicationValve.session.found=上下文[{0}]:找到会话[{1}]但它不是ClusterSession。
+ReplicationValve.session.indicator=上下文[{0}]:请求属性[{2}]中会话[{1}]的优先级为[{3}]。
 ReplicationValve.session.invalid=上下文[{0}]:请求的会话[{1}]在此节点上无效,已删除或未复制。
+ReplicationValve.stats=对于[{2}]请求、[{3}]发送请求、[{4}]跨上下文请求和[{5}]筛选请求,平均请求时间为[{0}]ms,群集开销时间为[{1}]ms(总请求时间为[{6}]ms,总群集请求时间为[{7}]ms)。
diff --git a/java/org/apache/catalina/loader/LocalStrings_zh_CN.properties b/java/org/apache/catalina/loader/LocalStrings_zh_CN.properties
index 1e30d80..eea15d6 100644
--- a/java/org/apache/catalina/loader/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/loader/LocalStrings_zh_CN.properties
@@ -13,16 +13,30 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+webappClassLoader.addExportsRmi=在Java 9上运行时,需要在JVM命令行参数中添加“-add opens=Java.rmi/sun.rmi.transport=ALL-UNNAMED”,以启用rmi目标内存泄漏检测。或者,可以通过禁用RMI目标内存泄漏检测来抑制此警告。
+webappClassLoader.addExportsThreadLocal=在Java 9上运行时,需要在JVM命令行参数中添加“-add opens=Java.base/Java.lang=ALL-UNNAMED”,以启用线程本地内存泄漏检测。或者,可以通过禁用ThreadLocal内存泄漏检测来抑制此警告。
 webappClassLoader.addTransformer=将类文件转换器[{0}]添加到Web应用程序[{1}]。
+webappClassLoader.addTransformer.duplicate=将类文件转换器[{0}]添加到web应用程序[{1}]的重复调用被忽略。
 webappClassLoader.addTransformer.illegalArgument=Web应用程序[{0}]试图添加空类文件转换器。
+webappClassLoader.checkThreadLocalsForLeaks=web应用程序[{0}]创建了一个ThreadLocal,其键类型为[{1}](值为[{2}]),值类型为[{3}](值为[{4}),但在停止web应用程序时未能将其删除。线程将随着时间的推移而更新,以尝试避免可能的内存泄漏
+webappClassLoader.checkThreadLocalsForLeaks.badKey=无法确定类型为[{0}]的键的字符串表示形式
 webappClassLoader.checkThreadLocalsForLeaks.badValue=无法确定类型为 [{0}] 的值的字符串表示形式
 webappClassLoader.checkThreadLocalsForLeaks.unknown=:)未知
 webappClassLoader.checkThreadLocalsForLeaksFail=检查ThreadLocal引用失败,web应用程序:[{0}]
 webappClassLoader.checkThreadLocalsForLeaksNone=web应用程序 [{0}] 创建了1个ThreadLocal变量(键:[{2}] (类型[{1}]) ,值:[{4}](类型[{3}]) )。键仅被ThreadLocal Map弱引用,所以不是内存泄露。
+webappClassLoader.checkThreadLocalsForLeaksNull=web应用程序[{0}]创建了一个ThreadLocal,其键类型为[{1}](值为[{2}])。ThreadLocal已正确设置为null,GC将删除该键
+webappClassLoader.checkThreadsHttpClient=找到使用web应用程序类加载器的HttpClient保持活动线程。通过将线程切换到父类加载器修复。
 webappClassLoader.clearJdbc=Web应用程序 [{0}] 注册了JDBC驱动程序 [{1}],但在Web应用程序停止时无法注销它。 为防止内存泄漏,JDBC驱动程序已被强制取消注册。
+webappClassLoader.clearObjectStreamClassCachesFail=无法清除web应用程序[{0}]的ObjectStreamClass$缓存中的软引用
+webappClassLoader.clearRmi=找到具有存根类类[{0}]和值[{1}]的RMI目标。已强制移除此RMI目标,以防止内存泄漏。
+webappClassLoader.clearRmiFail=无法清除从web应用程序[{0}]的sun.rmi.transport.Target引用的上下文类加载器
+webappClassLoader.clearRmiInfo=找不到类sun.rmi.transport.Target以清除web应用程序[{0}]的上下文类加载器。这在非Sun jvm上是预期的。
 webappClassLoader.getThreadGroupError=无法获得线程组[{0}]的父级。不可能检查所有线程是否存在潜在的内存泄漏。
+webappClassLoader.javaseClassLoaderNull=j2seClassLoader属性不能为空
 webappClassLoader.jdbcRemoveFailed=Web应用程序 [{0}] 的JDBC驱动程序注销失败
+webappClassLoader.loadedByThisOrChildFail=无法完全检查[{0}]实例中的条目,看上下文[{1}]中是否存在潜在的内存泄漏
 webappClassLoader.readError=资源读取错误:不能加载 [{0}].
+webappClassLoader.removeTransformer=已从web应用程序[{1}]中删除类文件转换器[{0}]。
 webappClassLoader.stopThreadFail=为web应用程序[{1}]终止线程[{0}]失败
 webappClassLoader.stopTimerThreadFail=无法终止名为[{0}]的TimerThread,web应用程序:[{1}]
 webappClassLoader.stopped=非法访问:此Web应用程序实例已停止。无法加载[{0}]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。
@@ -31,5 +45,11 @@ webappClassLoader.validationErrorJarPath=无法验证名称为 [{0}] 的 JAR 条
 webappClassLoader.warnTimerThread=Web应用程序[{0}]似乎已通过java.util.Timer API启动了名为[{1}]的TimerThread,但未能将其停止。 为防止内存泄漏,计时器(以及相关联的线程)已被强制取消。
 webappClassLoader.wrongVersion=(无法载入的.类 [{0}])
 
+webappClassLoaderParallel.registrationFailed=将org.apache.catalina.loader.ParallelWebappClassLoader注册为能够并行加载类失败
+
 webappLoader.copyFailure=无法复制资源
+webappLoader.deploy=将类存储库部署到工作目录[{0}]
 webappLoader.mkdirFailure=无法创建目标目录以复制资源
+webappLoader.reloadable=无法将可重载属性设置为[{0}]
+webappLoader.starting=启动此加载程序
+webappLoader.stopping=停止此加载程序
diff --git a/java/org/apache/catalina/manager/LocalStrings_zh_CN.properties b/java/org/apache/catalina/manager/LocalStrings_zh_CN.properties
index 2f5e882..fae4f75 100644
--- a/java/org/apache/catalina/manager/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/manager/LocalStrings_zh_CN.properties
@@ -76,7 +76,7 @@ htmlManagerServlet.jvmTableTitleMemoryPool=内存.池
 htmlManagerServlet.jvmTableTitleTotal=总共
 htmlManagerServlet.jvmTableTitleType=类型
 htmlManagerServlet.jvmTableTitleUsed=已用
-htmlManagerServlet.jvmTotalMemory=总内存
+htmlManagerServlet.jvmTotalMemory=总内存:
 htmlManagerServlet.list=应用程序列表
 htmlManagerServlet.manager=管理器
 htmlManagerServlet.messageLabel=消息:
@@ -101,6 +101,7 @@ htmlManagerServlet.serverVersion=Tomcat.版本
 htmlManagerServlet.title=Tomcat Web应用程序管理者
 
 jmxProxyServlet.noBeanFound=无法找到名为[{0}]的MBean对象
+jmxProxyServlet.noOperationOnBean=在对象名为{2}的操作{0}中找不到参数为{1}]的操作{0},该操作是{3}
 
 managerServlet.alreadyContext=失败 - 应用程序已存在于路径 [{0}]
 managerServlet.deleteFail=失败 - 不能删除[{0}]。这个文件一直存在会出现问题。
diff --git a/java/org/apache/catalina/manager/host/LocalStrings_zh_CN.properties b/java/org/apache/catalina/manager/host/LocalStrings_zh_CN.properties
index 05a1a12..987a1e0 100644
--- a/java/org/apache/catalina/manager/host/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/manager/host/LocalStrings_zh_CN.properties
@@ -54,7 +54,7 @@ htmlHostManagerServlet.addDeployOnStartup=启动.部署
 htmlHostManagerServlet.addDeployXML=部署XML
 htmlHostManagerServlet.addHost=主机
 htmlHostManagerServlet.addManager=管理 App
-htmlHostManagerServlet.addName=名称
+htmlHostManagerServlet.addName=名称:
 htmlHostManagerServlet.addTitle=添加.虚拟主机
 htmlHostManagerServlet.addUnpackWARs=解压WARs
 htmlHostManagerServlet.helpHtmlManager=HTML主机管理器帮助
diff --git a/java/org/apache/catalina/realm/LocalStrings_zh_CN.properties b/java/org/apache/catalina/realm/LocalStrings_zh_CN.properties
index da2ac01..4805fb0 100644
--- a/java/org/apache/catalina/realm/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/realm/LocalStrings_zh_CN.properties
@@ -13,36 +13,64 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+combinedRealm.addRealm=添加[{0}]领域,共有[{1}]个领域。
 combinedRealm.authFail=无法使用域[{1}]对用户[{0}]进行身份验证
+combinedRealm.authStart=正在尝试使用领域[{1}]对用户[{0}]进行身份验证
 combinedRealm.authSuccess=认证用户[{0}],权限[{1}]
+combinedRealm.getPassword=永远不应该调用getPassword()方法
 combinedRealm.getPrincipal=方法getPrincipal()永远不应该被调用
+combinedRealm.realmStartFail=无法启动[{0}]领域
+combinedRealm.unexpectedMethod=对组合域上的方法进行了意外调用
 
+dataSourceRealm.authenticateFailure=用户名[{0}]未成功验证
+dataSourceRealm.authenticateSuccess=用户名[{0}]已成功通过身份验证。
+dataSourceRealm.close=关闭数据库连接时发生异常
 dataSourceRealm.exception=认证异常
 dataSourceRealm.getPassword.exception=获取用户名[{0}]对应的密码失败。
 dataSourceRealm.getRoles.exception=:)检索角色[{0}]异常
 
 jaasCallback.username=返回用户名 [{0}]
 
+jaasRealm.accountExpired=由于帐户过期,用户名[{0}]未通过身份验证
 jaasRealm.authenticateFailure=用户 [{0}] 认证失败
 jaasRealm.authenticateSuccess=用户名 [{0}] 已被成功认证为身份 [{1}] -- 主体也已创建
+jaasRealm.beginLogin=使用应用程序[{1}的LoginContext为用户名[{0}]请求JAASRealm登录
+jaasRealm.checkPrincipal=正在检查主体[{0}[{1}]
+jaasRealm.credentialExpired=由于凭据过期,用户名[{0}]未通过身份验证
 jaasRealm.failedLogin=由于登录失败,用户名 [{0}] 无法授权
 jaasRealm.loginContextCreated=为用户名创建的JAAS 登陆上下文[{0}]
 jaasRealm.loginException=登录异常,认证用户名  [{0}]
+jaasRealm.rolePrincipalAdd=正在将角色主体[{0}]添加到此用户主体的角色
+jaasRealm.rolePrincipalFailure=找不到有效的角色主体。
+jaasRealm.unexpectedError=意外错误
 jaasRealm.userPrincipalFailure=未发现有效的用户Principal
+jaasRealm.userPrincipalSuccess=主体[{0}]是有效的用户类。我们将其用作用户主体。
 
 jdbcRealm.authenticateFailure=用户名称[{0}]未校验成功
+jdbcRealm.authenticateSuccess=用户名[{0}]已成功通过身份验证
 jdbcRealm.close=关闭数据库连接异常
+jdbcRealm.exception=执行身份验证时发生异常
 jdbcRealm.open=打开数据库连接时发生异常
+jdbcRealm.open.invalidurl=驱动程序[{0}]不支持url[{1}]。
 
 jndiRealm.authenticateFailure=用户名[{0}]没有成功认证
 jndiRealm.authenticateSuccess=用户名[{0}]成功认证
 jndiRealm.cipherSuites=启用 [{0}] 作为 TLS 连接的加密套件。
+jndiRealm.close=关闭目录服务器连接时发生异常
+jndiRealm.emptyCipherSuites=给定密码套件的空字符串。使用默认密码套件
 jndiRealm.exception=执行认证异常
+jndiRealm.exception.retry=执行身份验证时发生异常。正在重试。。。
+jndiRealm.invalidHostnameVerifier=[{0}]不是HostnameVerifier的有效类名
+jndiRealm.invalidSslProtocol=给定的协议[{0}]无效。它必须是[{1}]之一
+jndiRealm.invalidSslSocketFactory=[{0}]不是SSLSocketFactory的有效类名。
 jndiRealm.negotiatedTls=使用协议[{0}]协商的TLS连接
 jndiRealm.open=打开目录服务器链接异常
+jndiRealm.tlsClose=关闭tls响应时出现异常
 
 lockOutRealm.authLockedUser=尝试对锁定的用户[{0}]进行身份验证
+lockOutRealm.removeWarning=用户[{0}]在[{1}]秒后从失败的用户缓存中删除,以将缓存大小保持在限制集内
 
+memoryRealm.authenticateFailure=用户名[{0}]未成功通过身份验证
 memoryRealm.authenticateSuccess=用户名称[{0}]认证成功
 memoryRealm.loadExist=内存数据库文件[{0}]无法读取
 memoryRealm.loadPath=从内存数据库文件 [{0}] 加载用户
@@ -51,10 +79,17 @@ memoryRealm.xmlFeatureEncoding=配置Digester以允许XML文件中的java编码
 
 realmBase.algorithm=无效的消息摘要算法[{0}]
 realmBase.authenticateFailure=用户名 [{0}] 认证失败
+realmBase.authenticateSuccess=用户名[{0}]已成功通过身份验证
 realmBase.createUsernameRetriever.ClassCastException=类[{0}] 不是一个X509UsernameRetriever.
+realmBase.credentialNotDelegated=虽然已请求存储,但用户[{0}]的凭据尚未委派
+realmBase.delegatedCredentialFail=无法获取用户[{0}]的委派凭据。
 realmBase.digest=对用户凭证摘要发生错误
 realmBase.forbidden=已拒绝访问所请求的资源
+realmBase.gotX509Username=从X509证书中获取用户名:[{0}]
+realmBase.gssContextNotEstablished=身份验证器实现错误:传递的安全上下文未完全建立
+realmBase.gssNameFail=无法从已建立的GSSContext中提取名称
 realmBase.hasRoleFailure=用户[{0}]没有角色[{1}]
 realmBase.hasRoleSuccess=用户名[{0}] 有角色[{1}]
 
+userDatabaseRealm.lookup=在键[{0}]下查找用户数据库时发生异常
 userDatabaseRealm.noDatabase=未找到key[{0}]对应的UserDatabase组件。
diff --git a/java/org/apache/catalina/security/LocalStrings_zh_CN.properties b/java/org/apache/catalina/security/LocalStrings_zh_CN.properties
index 53f7274..efc7e2d 100644
--- a/java/org/apache/catalina/security/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/security/LocalStrings_zh_CN.properties
@@ -13,4 +13,10 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+SecurityListener.checkUmaskFail=尝试使用umask设置[{0}]启动。生命周期侦听器org.apache.catalina.security.security listener(通常在catalina-BASE/conf/server.xml中配置)已阻止在没有umask的情况下运行Tomcat,其限制至少与[{1}]相同
+SecurityListener.checkUmaskNone=在系统属性[{0}]中找不到umask设置。但是,看来Tomcat在支持umask的平台上运行。系统属性通常在CATALINA_HOME / bin / catalina.sh中设置。生命周期侦听器org.apache.catalina.security.SecurityListener(通常在CATALINA_BASE / conf / server.xml中配置)期望umask的限制至少与[{1}]相同
+SecurityListener.checkUmaskParseFail=无法将值[{0}]分析为有效的umask。
 SecurityListener.checkUmaskSkip=无法确定权限。这表示 Tomcat 正在 Windows 上运行,所以跳过权限检查。
+SecurityListener.checkUserWarning=以用户[{0}]身份运行时尝试启动。作为此用户运行Tomcat已被生命周期侦听器org.apache.catalina.security.security listener(通常在catalina_BASE/conf/server.xml中配置)阻止
+
+SecurityUtil.doAsPrivilege=运行privilegedexception块时发生异常。
diff --git a/java/org/apache/catalina/servlets/LocalStrings_zh_CN.properties b/java/org/apache/catalina/servlets/LocalStrings_zh_CN.properties
index 7d8130b..9d1c47d 100644
--- a/java/org/apache/catalina/servlets/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/servlets/LocalStrings_zh_CN.properties
@@ -13,22 +13,41 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+cgiServlet.emptyEnvVarName=初始化参数中的环境变量名为空[环境变量-]
+cgiServlet.expandCloseFail=无法关闭路径[{0}]处脚本的输入流
+cgiServlet.expandCreateDirFail=无法为脚本扩展创建目标目录[{0}]
 cgiServlet.expandDeleteFail=扩展期间,发生IOException异常后删除文件[{0}]失败
 cgiServlet.expandFail=在路径[{0}] 到[{1}] 展开脚本失败.
+cgiServlet.expandNotFound=无法展开[{0}],因为找不到它。
 cgiServlet.expandOk=从路径[{0}]到[{1}]扩展脚本
+cgiServlet.find.found=找到CGI:name[{0}]、path[{1}]、script name[{2}]和CGI name[{3}]
 cgiServlet.find.location=在 [{0}] 查找文件
 cgiServlet.find.path=在相对于CGI位置[{1}]的路径[{0}]处请求的CGI脚本
+cgiServlet.invalidArgumentDecoded=解码的命令行参数[{0}]与配置的cmdLineArgumentsDecoded模式[{1}]不匹配
+cgiServlet.invalidArgumentEncoded=编码的命令行参数[{0}]与配置的cmdLineArgumentsEncoded模式[{1}]不匹配
+cgiServlet.runBadHeader=标头行[{0}]错误
 cgiServlet.runFail=处理CGI发生I/O问题
 cgiServlet.runHeaderReaderFail=I/O 问题关闭请求头读操作
 cgiServlet.runInvalidStatus=无效状态 [{0}]
 cgiServlet.runOutputStreamFail=关闭输出流时发生I/O问题
 cgiServlet.runReaderInterrupt=对于标准错误的读线程,中断并等待。
+cgiServlet.runStdErr=标准行:[{0}]。
+cgiServlet.runStdErrCount=在stderr上收到了[{0}]行
 cgiServlet.runStdErrFail=I/O标准错误问题
 
+defaultServlet.blockExternalEntity=阻止访问publicId[{0}]和systemId[{0}]的外部实体。
+defaultServlet.blockExternalEntity2=阻止访问名为{0}、publicId[{1}、baseURI[{2}]和systemId[{3}]的外部实体。
 defaultServlet.blockExternalSubset=用名称[{0}]和baseURI[{1}]阻止对外部子集的访问
+defaultServlet.missingResource=请求的资源[{0}]不可用
 defaultServlet.noResources=找不到静态资源
+defaultServlet.skipfail=读取失败,因为只有[{0}]个字节可用,但需要跳过[{1}]个字节才能到达请求范围的开始
+defaultServlet.xslError=XSL转换器错误
 
 directory.filename=文件名
+directory.lastModified=上次修改时间。
+directory.parent=最多[{0}]
 directory.size=大小
+directory.title=[{0}]的目录列表
 
+webdavservlet.enternalEntityIgnored=请求包含对PublicID[{0}]和SystemID[{1}]的外部实体的引用,该引用被忽略。
 webdavservlet.jaxpfailed=JAXP 初始化失败
diff --git a/java/org/apache/catalina/session/LocalStrings_zh_CN.properties b/java/org/apache/catalina/session/LocalStrings_zh_CN.properties
index a362627..b082234 100644
--- a/java/org/apache/catalina/session/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/session/LocalStrings_zh_CN.properties
@@ -18,44 +18,67 @@ JDBCStore.checkConnectionClassNotFoundException=找不到 JDBC 驱动程序类 [
 JDBCStore.checkConnectionDBClosed=数据库连接为空或已关闭。正在尝试重新连接。
 JDBCStore.checkConnectionDBReOpenFail=重新打开数据库失败,数据库可能已经宕机。
 JDBCStore.checkConnectionSQLException=发生 SQL 异常 [{0}]
+JDBCStore.close=关闭数据库连接[{0}]时发生异常
+JDBCStore.commitSQLException=关闭前提交连接的SQLException
 JDBCStore.loading=正在从数据库[{1}]加载会话[{0}]
 JDBCStore.missingDataSourceName=没有给出有效的 JNDI 名称。
+JDBCStore.removing=正在删除数据库{1}上的会话{0}]
 JDBCStore.saving=保存Session [{0}] 到数据库 [{1}]
 JDBCStore.wrongDataSource=无法打开 JNDI 数据源 [{0}]
 
+fileStore.createFailed=无法创建用于存储会话数据的目录[{0}]。
 fileStore.deleteFailed=无法删除阻止创建会话存储位置的文件 [{0}]
 fileStore.deleteSessionFailed=无法删除不再需要的文件[{0}]
+fileStore.loading=正在从文件[{1}]加载会话[{0}]
+fileStore.removing=正在删除文件{1}处的会话{0}]
 fileStore.saving=保存会话[{0}]到文件[{1}]
 
 managerBase.createSession.ise=createSession:活跃session过多
+managerBase.sessionAttributeNameFilter=已跳过名为[{0}]的会话属性,因为它与名称筛选器[{1}]不匹配。
+managerBase.sessionAttributeValueClassNameFilter=已跳过名为[{0}]的会话属性,因为值类型[{1}]与筛选器[{2}]不匹配
 managerBase.sessionNotFound=找不到会话 [{0}]
+managerBase.sessionTimeout=无效的会话超时设置[{0}]
 managerBase.setContextNotNew=如果Manager未处于NEW状态,则调用setContext()以更改与Manager关联的Context是非法的
 
+persistentManager.backupMaxIdle=正在将会话[{0}]备份到存储区,空闲时间为[{1}]秒。
 persistentManager.deserializeError=错误反序列化会话[{0}]: [{1}]
+persistentManager.loading=正在加载[{0}]持久化会话
+persistentManager.serializeError=错误的序列化会话 [{0}]:[{1}]
 persistentManager.storeKeysException=不能从 session存储中获取session ID 的列表,假设存储为空
 persistentManager.storeSizeException=无法确定 session 存储区的会话数,假定存储区为空
 persistentManager.swapIn=在表单存储中,交换会话[{0}]
+persistentManager.swapInException=交换期间存储区中出现异常:[{0}]
+persistentManager.swapInInvalid=交换会话[{0}]无效。
 persistentManager.swapMaxIdle=交换会话[{0}]以存储,空闲为[{1}]秒
 persistentManager.swapTooManyActive=太多活跃会话,替换闲置 [{1}] 秒的会话 [{0}]
 persistentManager.tooManyActive=活跃会话太多,[{0}],寻找闲置的会话来交换
+persistentManager.unloading=正在保存[{0}]持续会话
 
 standardManager.deletePersistedFileFail=读取持久会话后无法删除[{0}]。 此文件的持续存在可能导致将来尝试持续会话失败。
+standardManager.loading=正在从[{0}]加载持久化会话
 standardManager.managerLoad=从持久化存储加载会话发生异常
 standardManager.managerUnload=卸载会话到持久存储的异常
 standardManager.unloading=保存持久化会话到[{0}]
+standardManager.unloading.debug=卸载持续会话
 standardManager.unloading.nosessions=没有要卸载的持久会话
 
 standardSession.attributeEvent=会话属性事件侦听器引发异常
+standardSession.bindingEvent=会话绑定事件侦听器引发异常
 standardSession.getAttribute.ise=getAttribute: 会话已失效
 standardSession.getAttributeNames.ise=getAttributeNames:会话已失效
 standardSession.getCreationTime.ise=getCreataionTime:会话已经无效
 standardSession.getLastAccessedTime.ise=getLastAccessedTime: 会话已失效
 standardSession.getThisAccessedTime.ise=getThisAccessedTime:会话已经失效
 standardSession.getValueNames.ise=getValueNames:会话已经失效
+standardSession.invalidate.ise=无效:会话已无效。
+standardSession.isNew.ise=isNew:会话已失效
 standardSession.logoutfail=当回话将过期登出用户异常
 standardSession.notDeserializable=无法反序列化会话 [{1}] 的属性 [{0}]
 standardSession.notSerializable=不能序列化会话[{1}]的属性[{0}]
-standardSession.principalNotDeserializable=无法反序列化Principal对象,会话:[{0}]
-standardSession.principalNotSerializable=无法序列化Principal对象,会话:[{0}]
+standardSession.principalNotDeserializable=无法为会话[{0}]反序列化Principal对象
+standardSession.principalNotSerializable=无法为会话[{0}]序列化Principal对象
 standardSession.removeAttribute.ise=删除属性:会话已失效
 standardSession.sessionEvent=会话时间监听抛出异常
+standardSession.setAttribute.iae=setAttribute:不可序列化的属性[{0}]。
+standardSession.setAttribute.ise=setAttribute:会话[{0}]已无效
+standardSession.setAttribute.namenull=setAttribute:name参数不能为空
diff --git a/java/org/apache/catalina/startup/LocalStrings_zh_CN.properties b/java/org/apache/catalina/startup/LocalStrings_zh_CN.properties
index 7053c31..a5483d8 100644
--- a/java/org/apache/catalina/startup/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/startup/LocalStrings_zh_CN.properties
@@ -13,10 +13,14 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+catalina.configFail=无法从[{0}]加载服务器配置
 catalina.noCluster=由于[{0}]未找到群集Ruleset。已禁用群集配置。
 catalina.serverStartFail=所必需的服务组件启动失败,所以无法启动Tomcat
+catalina.shutdownHookFail=关闭挂钩在尝试停止服务器时遇到错误
+catalina.stopServer=未配置关闭端口。通过OS信号关闭服务器。服务器未关闭。
 
 contextConfig.altDDNotFound=未找到 alt-dd 文件 [{0}]
+contextConfig.annotationsStackOverflow=由于StackOverflower错误,无法完成对web应用程序[{0}]的批注的扫描。可能的根本原因包括-Xss的设置过低和非法的循环继承依赖项。正在处理的类层次结构是[{1}]
 contextConfig.applicationMissing=web.xml文件丢失,只使用默认。
 contextConfig.applicationParse=解析应用程序的web.xml错误,位置:[{0}]
 contextConfig.applicationPosition=发生在第[{0}]行,属性[{1}]
@@ -48,10 +52,12 @@ contextConfig.missingRealm=对应的认证领域未配置
 contextConfig.processAnnotationsDir.debug=使用注解 [{0}]扫描目录中的类文件
 contextConfig.processAnnotationsJar.debug=扫描jar文件中注解[{0}]的类文件
 contextConfig.processAnnotationsWebDir.debug=扫描 web 应用程序目录下含有 [{0}] 注解的 class 文件
+contextConfig.resourceJarFail=无法处理在URL[{0}]处找到的JAR,以便将静态资源包含在名为[{1}]的上下文中
 contextConfig.role.auth=在标签<auth-constraint>的子标签<security-role>中没有定义角色名[{0}]
 contextConfig.role.link=<role-link>中使用的安全角色[{0}]未被定义在<security-role>中
 contextConfig.role.runas=<run-as> 中使用的安全角色名 [{0}],未在 <security-role> 中定义
 contextConfig.sci.debug=无法为[{0}]处理ServletContainerInitializer,很可能是由于丢失了一个使用@HandlesTypes注解定义的类
+contextConfig.sci.info=无法处理[{0}]的ServletContainerInitializer。这很可能是由于@handleTypes注释中定义的类丢失所致。为完整堆栈跟踪启用调试级别日志记录。
 contextConfig.servletContainerInitializerFail=无法检测到上下文名称为[{0}]的ServletContainerInitializers
 contextConfig.start=ContextConfig:开始处理
 contextConfig.stop=ContextConfig:停止处理
@@ -63,7 +69,8 @@ contextConfig.xmlSettings=上下文[{0}]将解析web.xml和web-fragment.xml文
 embedded.notmp=在[{0}]找不到指定的临时文件夹
 
 engineConfig.cce=生命周期事件数据对象[{0}]不是一个引擎(Engine)
-engineConfig.stop=配置引擎,处理进程停止。
+engineConfig.start=EngineConfig:处理开始。
+engineConfig.stop=引擎配置:处理进程停止
 
 expandWar.copy=错误的拷贝[{0}] to [{1}]
 expandWar.createFailed=无法创建文件夹[{0}]。
@@ -71,48 +78,74 @@ expandWar.deleteFailed=[{0}] 无法被彻底删除。其余残留文件可能会
 expandWar.illegalPath=归档[{0}]格式错误,将被忽略:条目包含非扩展到[{2}]的非法路径[{1}],因为它超出了定义的docBase [{3}]
 expandWar.missingJarEntry=无法获得 JarEntry [{0}] 的输入流 - WAR 文件是否已损坏?
 
+failedContext.start=无法处理全局,每个主机或特定于上下文的context.xml文件,因此无法启动[{0}]上下文。
+
 hostConfig.appBase=主机[{0}]的应用程序基础[{1}]不存在或不是目录。deployOnStartUp和autoDebug已设置为false,以防止部署错误。其他错误仍然可能发生。
+hostConfig.canonicalizing=试图取消部署[{1}]时,无法确定[{0}]的规范路径
+hostConfig.cce=生命周期事件数据对象[{0}]不是主机
 hostConfig.context.remove=移除上下文[{0}]错误
+hostConfig.context.restart=上下文[{0}]重新启动时出错。
+hostConfig.createDirs=无法为部署创建目录:[{0}]
+hostConfig.deploy.error=部署web应用程序目录[{0}]时发生异常
+hostConfig.deployDescriptor=正在部署部署描述符[{0}]。
 hostConfig.deployDescriptor.blocked=(:未部署上下文路径为[{0}]的Web应用程序,因为它包含一个部署描述符[{1}],该描述符可能包含安全部署应用程序所需的配置,但此主机的DeployXML设置阻止了部署描述符的处理。应该在[{2}]创建适当的描述符来部署此应用程序。
 hostConfig.deployDescriptor.error=部署描述符[{0}]时出错
 hostConfig.deployDescriptor.finished=部署描述符[{0}]的部署已在[{1}]ms内完成
 hostConfig.deployDescriptor.localDocBaseSpecified=(:在主机appBase 中指定了docBase [{0}],将被忽略
+hostConfig.deployDescriptor.threaded.error=等待部署描述符的多线程部署完成时出错
 hostConfig.deployDir=把web 应用程序部署到目录 [{0}]
 hostConfig.deployDir.error=无法部署应用目录 [{0}]
+hostConfig.deployDir.finished=Web应用程序目录[{0}]的部署已在[{1}]毫秒内完成
+hostConfig.deployDir.threaded.error=等待目录的多线程部署完成时出错
+hostConfig.deployWar=正在部署web应用程序存档文件[{0}]
 hostConfig.deployWar.error=部署 Web 应用程序 archive [{0}] 时出错
+hostConfig.deployWar.finished=web应用程序存档文件[{0}]的部署已在[{1}]ms内完成
 hostConfig.deployWar.hiddenDir=将忽略目录[{0}],因为WAR [{1}]优先,unpackWAR为false
 hostConfig.deployWar.threaded.error=等待WAR文件的多线程部署完成时出错
 hostConfig.deploying=部署发现的web应用
 hostConfig.docBaseUrlInvalid=所提供的部署目录无法用URL来表示
+hostConfig.expand=正在扩展web应用程序存档文件[{0}]
 hostConfig.expand.error=解压WEB应用程序文件[{0}]时异常
 hostConfig.ignorePath=忽略appBase中的路径[{0}]以进行自动部署
+hostConfig.illegalWarName=战争名称[{0}]无效。存档将被忽略
+hostConfig.jmx.register=注册上下文[{0}]失败。
 hostConfig.jmx.unregister=移除注册上下文[{0}]失败
+hostConfig.reload=重新加载上下文[{0}]
+hostConfig.resourceNotAbsolute=无法从上下文[{0}]中删除资源,因为[{1}]不是绝对路径
 hostConfig.start=HostConfig: 开始处理
 hostConfig.stop=:)Host配置:停止处理
+hostConfig.undeploy=正在取消部署上下文[{0}]
+hostConfig.undeployVersion=正在取消部署没有活动会话的旧版本上下文[{0}]
+
+passwdUserDatabase.readFail=无法从/etc/passwd获取完整的用户集
 
 tomcat.addWebapp.conflictChild=无法在[{0}]处部署到上下文路径[{1}],因为存在上下文[{2}]
 tomcat.addWebapp.conflictFile=由于现有文件[{2}]的存在,无法在[{0}]将战争部署到上下文路径[{1}]
+tomcat.baseDirMakeFail=无法创建用作基本目录的目录{0}
 tomcat.baseDirNotDir=基本目录指定的位置[{0}]不是一个目录
 tomcat.defaultMimeTypeMappingsFail=无法加载默认MIME类型
 
 userConfig.database=加载用户数据库异常
+userConfig.deploy=正在为用户[{0}]部署web应用程序
 userConfig.deploy.threaded.error=等待用户目录的多线程部署完成时出错
 userConfig.deploying=正在部署用户 web 应用程序
 userConfig.error=为用户 [{0}]部署web应用发生错误
 userConfig.start=用户配置:处理开始
+userConfig.stop=UserConfig:处理停止
 
-versionLoggerListener.arg=命令行参数:[{0}]
-versionLoggerListener.catalina.base=CATALINA_BASE:[{0}]
-versionLoggerListener.catalina.home=CATALINA_HOME:         {0}
+versionLoggerListener.arg=命令行参数:{0}
+versionLoggerListener.catalina.base=CATALINA_BASE:     {0}
+versionLoggerListener.catalina.home=CATALINA_HOME:     {0}
 versionLoggerListener.env=环境变量:[{0}] = [{1}]
-versionLoggerListener.java.home=Java 环境变量:         {0}
-versionLoggerListener.os.arch=架构:                  {0}
-versionLoggerListener.os.version=OS.版本:               {0}
-versionLoggerListener.prop=系统属性:       {0} = {1}
-versionLoggerListener.serverInfo.server.built=服务器构建:            {0}
-versionLoggerListener.serverInfo.server.number=服务器版本号(:{0}
-versionLoggerListener.serverInfo.server.version=Server.服务器版本:     {0}
-versionLoggerListener.vm.vendor=JVM.供应商:            {0}
-versionLoggerListener.vm.version=JVM 版本:              {0}
+versionLoggerListener.java.home=Java 环境变量:     {0}
+versionLoggerListener.os.arch=架构:              {0}
+versionLoggerListener.os.name=操作系统名称:      {0}
+versionLoggerListener.os.version=OS.版本:           {0}
+versionLoggerListener.prop=系统属性:            {0} = {1}
+versionLoggerListener.serverInfo.server.built=服务器构建:        {0}
+versionLoggerListener.serverInfo.server.number=服务器版本号(:     {0}
+versionLoggerListener.serverInfo.server.version=Server.服务器版本: {0}
+versionLoggerListener.vm.vendor=JVM.供应商:        {0}
+versionLoggerListener.vm.version=Java虚拟机版本:    {0}
 
 webAnnotationSet.invalidInjection=方法资源注入注解无效。
diff --git a/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_zh_CN.properties b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_zh_CN.properties
index 046e7ec..84439d2 100644
--- a/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_zh_CN.properties
@@ -13,8 +13,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+encryptInterceptor.algorithm.required=加密算法是必需的,充分说明,例如AES / CBC / PKCS5Padding
+encryptInterceptor.algorithm.unsupported-mode=EncryptInterceptor不支持分组密码模式[{0}]
 encryptInterceptor.decrypt.error.short-message=解密消息失败: 结尾消息提前结束
 encryptInterceptor.decrypt.failed=无法解密信息
 encryptInterceptor.encrypt.failed=无法加密信息
 encryptInterceptor.init.failed=初始化EncryptInterceptor失败
+encryptInterceptor.key.required=需要加密密钥
 encryptInterceptor.tcpFailureDetector.ordering=加密拦截器必须位于TCP故障检测器的上游。请重新订购加密拦截器,将其列在通道拦截器管道中的TCP故障检测器之前。
diff --git a/java/org/apache/catalina/tribes/tipis/LocalStrings_zh_CN.properties b/java/org/apache/catalina/tribes/tipis/LocalStrings_zh_CN.properties
index 0097340..271174d 100644
--- a/java/org/apache/catalina/tribes/tipis/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/tribes/tipis/LocalStrings_zh_CN.properties
@@ -13,6 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+lazyReplicatedMap.unableReplicate.backup=无法将备份密钥:[{0}]复制到备份:[{1}]。原因:[{2}]
 lazyReplicatedMap.unableReplicate.proxy=不能复制proxy key:[{0}]到备份:[{1}]. 原因是:[{2}]
 
 replicatedMap.member.disappeared=成员[{0}]消失,关联的键值实体会重新关联到一个新的节点。
diff --git a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties b/java/org/apache/catalina/tribes/util/LocalStrings_zh_CN.properties
similarity index 88%
copy from java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
copy to java/org/apache/catalina/tribes/util/LocalStrings_zh_CN.properties
index 623a146..ce175a3 100644
--- a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/tribes/util/LocalStrings_zh_CN.properties
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-modules.readDescriptorsError=读取描述文件出错
+uuidGenerator.createRandom=使用[{0}]创建用于UUID生成的SecureRandom实例花费了[{1}]毫秒。
diff --git a/java/org/apache/catalina/users/LocalStrings_zh_CN.properties b/java/org/apache/catalina/users/LocalStrings_zh_CN.properties
index 5f8358b..834c503 100644
--- a/java/org/apache/catalina/users/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/users/LocalStrings_zh_CN.properties
@@ -15,8 +15,11 @@
 
 memoryUserDatabase.fileNotFound=指定用户数据库[{0}]未找到
 memoryUserDatabase.notPersistable=用户数据库不可持久化 - 对目录没有写入权限
+memoryUserDatabase.nullGroup=指定的组名为空或零长度。将忽略组。
 memoryUserDatabase.nullRole=指定的角色名为Null或着长度为0。角色将被忽略,
 memoryUserDatabase.nullUser=Null或者零长度的用户名称,忽略这个用户。
 memoryUserDatabase.readOnly=用户数据库已被设为只读。修改无法保存
 memoryUserDatabase.renameNew=无法将新文件重命名为 [{0}]
 memoryUserDatabase.renameOld=原文件无法改名为[{0}]
+memoryUserDatabase.writeException=向[{0}]写入IOException
+memoryUserDatabase.xmlFeatureEncoding=配置digester以允许在XML文件中使用java编码名称时发生异常。只支持IANA编码名称。
diff --git a/java/org/apache/catalina/util/LocalStrings_zh_CN.properties b/java/org/apache/catalina/util/LocalStrings_zh_CN.properties
index adc17eb..4ad7254 100644
--- a/java/org/apache/catalina/util/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/util/LocalStrings_zh_CN.properties
@@ -19,20 +19,35 @@ customObjectInputStream.logRequired=使用日志记录进行类名过滤需要
 customObjectInputStream.nomatch=类不能匹配合适的表达式,因为类被允许反序列化
 
 extensionValidator.extension-not-found-error=ExtensionValidator[{0}][{1}]: 请求的拓展[{2}]未找到。
+extensionValidator.extension-validation-error=扩展验证程序[{0}]:找不到[{1}]所需的扩展。
+extensionValidator.failload=加载扩展名[{0}]失败
 extensionValidator.web-application-manifest=web 应用程序清单
 
 introspection.classLoadFailed=加载 class [{0}] 失败
 
+lifecycleBase.alreadyDestroyed=在调用destroy()之后,在组件[{0}]上调用了destroy()方法。第二个呼叫将被忽略。
 lifecycleBase.alreadyStarted=在调用start()之后,在组件[{0}]上调用start()方法。第二个电话将被忽略。
+lifecycleBase.alreadyStopped=在调用stop()之后,对组件[{0}]调用了stop()方法。第二个调用将被忽略。
+lifecycleBase.destroyFail=未能销毁组件[{0}]
 lifecycleBase.destroyStopFail=在失败组件[{0}]上调用Stop()以触发清理,但也失败了
 lifecycleBase.initFail=初始化组件[{0}]失败。
+lifecycleBase.invalidTransition=无效的生命周期转变被尝试 [{0}]) 组件 [{1}] 状态 [{2}]
 lifecycleBase.setState=设置状态从[{0}]到[{1}]
+lifecycleBase.startFail=无法启动组件[{0}]
+lifecycleBase.stopFail=无法停止组件[{0}]
 
 lifecycleMBeanBase.registerFail=在组件初始化期间,无法注册名为{1}的对象{0}]
 
 netmask.cidrNegative=CIDR [{0}]为负数。
+netmask.cidrNotNumeric=CIDR[{0}]不是数字
 netmask.cidrTooBig=CIDR[{0}]大于地址长度[{1}]
 netmask.invalidAddress=地址 [{0}] 无效
 
+parameterMap.locked=不允许修改锁定的参数映射
+
+resourceSet.locked=不允许修改锁定的资源集
+
+sessionIdGeneratorBase.createRandom=使用[{0}]创建会话ID生成的SecureRandom实例花费了[{1}]毫秒。
+sessionIdGeneratorBase.random=初始化类{0}的随机数生成器时发生异常。回到java.secure.SecureRandom
 sessionIdGeneratorBase.randomAlgorithm=使用算法[{0}]初始化随机数生成器时发生异常
 sessionIdGeneratorBase.randomProvider=使用程序提供的初始化随机数生成器异常[{0}]
diff --git a/java/org/apache/catalina/valves/LocalStrings_zh_CN.properties b/java/org/apache/catalina/valves/LocalStrings_zh_CN.properties
index cb17f90..ad710fb 100644
--- a/java/org/apache/catalina/valves/LocalStrings_zh_CN.properties
+++ b/java/org/apache/catalina/valves/LocalStrings_zh_CN.properties
@@ -13,17 +13,28 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+accessLogValve.alreadyExists=无法将访问日志从{0}重命名为{1},文件已存在
 accessLogValve.closeFail=关闭访问日志文件失败
+accessLogValve.deleteFail=未能删除旧的访问日志[{0}]
 accessLogValve.invalidLocale=无法将区域设置设为 [{0}]
 accessLogValve.invalidPortType=端口类型 [{0}] 无效,使用服务器(本地)端口
+accessLogValve.openDirFail=无法为访问日志创建目录[{0}]。
 accessLogValve.openFail=无法打开访问日志文件[{0}]。
+accessLogValve.renameFail=无法将访问日志从[{0}]重命名为[{1}]。
 accessLogValve.rotateFail=失败的循环切割访问日志.
+accessLogValve.unsupportedEncoding=未能将编码设置为[{0}],将使用系统默认字符集。
 
 errorReportValve.description=描述
+errorReportValve.exception=例外情况
 errorReportValve.exceptionReport=异常报告
 errorReportValve.message=消息
+errorReportValve.noDescription=没有可用的描述
 errorReportValve.note=):注意
+errorReportValve.rootCause=根本原因。
 errorReportValve.rootCauseInLogs=主要问题的全部 stack 信息可以在 server logs 里查看
+errorReportValve.statusHeader=HTTP状态 {0} - {1}
+errorReportValve.statusReport=状态报告
+errorReportValve.type=类型
 errorReportValve.unknownReason=未知的原因
 
 http.400.desc=由于被认为是客户端对错误(例如:畸形的请求语法、无效的请求信息帧或者虚拟的请求路由),服务器无法或不会处理当前请求。
@@ -47,11 +58,15 @@ http.408.reason=请求超时
 http.409.desc=由于和目标资源对当前状态发生冲突,所以请求无法完成。
 http.409.reason=冲突
 http.410.desc=原始服务器上不再可以访问目标资源,并且此条件可能是永久性的。
+http.410.reason=跑了。
+http.411.desc=服务器拒绝接受没有定义内容长度的请求。
 http.411.reason=所需长度
 http.412.desc=在服务器上测试时,请求头字段中给出的一个或多个条件被评估为false。
 http.412.reason=前置条件失败
+http.413.desc=服务器拒绝处理请求,因为请求负载大于服务器愿意或能够处理的负载
 http.413.reason=有效载荷过大
 http.414.desc=服务器拒绝为请求提供服务,因为请求目标比服务器愿意解释的要长。
+http.414.reason=URI太长
 http.415.desc=源服务器拒绝服务请求,因为有效负载的格式在目标资源上此方法不支持。
 http.415.reason=不支持的媒体类型
 http.416.desc=(:请求的范围头字段中的任何范围都没有与选定资源的当前范围重叠,或者请求的范围集由于无效范围或小范围或重叠范围的过度请求而被拒绝。
@@ -59,6 +74,9 @@ http.416.reason=范围不满足
 http.417.desc=(:至少有一个入站服务器无法满足请求的Expect头字段中给定的期望。
 http.417.reason=期望的失败
 http.421.desc=请求被定向到一台无法响应的服务器
+http.421.reason=错误的请求。
+http.422.desc=服务器了解请求实体的内容类型,请求实体的语法正确,但无法处理包含的指令。
+http.422.reason=不可处理实体
 http.423.desc=源或目标资源的方法被锁
 http.423.reason=已锁定
 http.424.desc=这个方法不能在这个资源上执行,因为请求操作依赖另一个操作,但是另一个操作失败了。
@@ -66,31 +84,52 @@ http.424.reason=失败的依赖项
 http.426.desc=服务器拒绝使用当前协议执行请求,但可能愿意在客户端升级到其他协议后执行。
 http.426.reason=需要升级
 http.428.desc=原始服务器要求请求是有条件的。
+http.428.reason=要求先决条件
+http.429.desc=用户在给定的时间内发送了太多请求(“速率限制”)
 http.429.reason=请求过多
+http.431.desc=服务器不愿意处理该请求,因为它的头字段太大。
 http.431.reason=请求头的字段太大
 http.451.desc=服务器出于法律原因拒绝了此请求。
+http.451.reason=因法律原因无法获得。
 http.500.desc=服务器遇到一个意外的情况,阻止它完成请求。
+http.500.reason=内部服务器错误
+http.501.desc=服务器不支持完成请求所需的功能。
+http.501.reason=未实现
 http.502.desc=服务器在充当网关或代理时, 在尝试完成请求时, 从它访问的入站服务器收到无效响应。
+http.502.reason=坏网关
 http.503.desc=由于临时过载或计划维护,服务器当前无法处理请求,这可能会在一些延迟后得到缓解。
+http.503.reason=服务不可用。
 http.504.desc=服务器在充当网关或代理时,没有从上游服务器接收到完成请求所需访问的及时响应。
 http.504.reason=网关超时
+http.505.desc=服务器不支持或拒绝支持请求消息中使用的主要HTTP版本。
 http.505.reason=HTTP 版本不支持
 http.506.desc=服务器内部配置错误:选取的变体资源配置为自身去处理透明的内容协商,因此在协商进程中不是一个合适的终点。
+http.506.reason=变体也协商
 http.507.desc=无法对资源执行该方法,因为服务器无法存储成功完成请求所需的表示。
 http.507.reason=存储空间.不足
+http.508.desc=服务器终止了一个操作,因为它在处理“深度:无限”请求时遇到无限循环
 http.508.reason=监测到循环回路
+http.510.desc=请求中未满足访问资源的策略
 http.510.reason=没有.扩展
 http.511.desc=客户端需要进行身份验证才能获得网络访问权限。
+http.511.reason=需要网络身份验证
 
+jdbcAccessLogValve.close=无法关闭数据库。
+jdbcAccessLogValve.exception=执行插入访问项时发生异常
+
+remoteCidrValve.invalid=为{0}提供的配置无效。有关详细信息,请参阅以前的消息
 remoteCidrValve.noRemoteIp=客户端没有IP地址。请求被拒绝。
 
 remoteIpValve.invalidHostHeader=在HTTP请求头[{1}]中发现Host的无效值[{0}]
+remoteIpValve.invalidHostWithPort=HTTP头[{1}]中的主机值[{0}]包含将被忽略的端口号
 remoteIpValve.invalidPortHeader=HTTP标头[{1}]中的端口找到的值[{0}]无效
 
 requestFilterValve.configInvalid=为Remote [Addr | Host]阀门提供了一个或多个无效配置设置,阻止Valve及其父容器启动
 requestFilterValve.deny=根据[{1}]配置拒绝[{0}]的请求
 
+sslValve.certError=无法处理证书字符串[{0}]以创建java.security.cert.X509Certificate对象
 sslValve.invalidProvider=与此{[0}]请求关联的连接器上指定的SSL提供程序无效。 无法处理证书数据。
 
 stuckThreadDetectionValve.notifyStuckThreadCompleted=线程[{0}](id=[{3}])之前报告为卡住,但是已经完成。它活跃了大概[{1}]毫秒。{2,选择,0#|0< 仍有[{2}]个被Valve监控的线程可能卡住}
 stuckThreadDetectionValve.notifyStuckThreadDetected=线程[{0}](id=[{6}])已处于活动状态[{1}]毫秒(自[{2}]起),以便为[{4}]提供相同的请求,并且可能被卡住(此StuckThreadDetectionValve的配置阈值为[{5}]秒)。总共有{3}个线程受此阀监视,可能被卡住。
+stuckThreadDetectionValve.notifyStuckThreadInterrupted=线程[{0}](id=[{5}])已被中断,因为它在[{1}]毫秒(自[{2}]起)内处于活动状态,以便为[{3}]提供相同的请求,并且可能被卡住(此StuckThreadDetectionValve的配置中断阈值为[{4}]秒)。
diff --git a/java/org/apache/coyote/LocalStrings_zh_CN.properties b/java/org/apache/coyote/LocalStrings_zh_CN.properties
index 733f5dc..a2f68b8 100644
--- a/java/org/apache/coyote/LocalStrings_zh_CN.properties
+++ b/java/org/apache/coyote/LocalStrings_zh_CN.properties
@@ -13,7 +13,9 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+abstractConnectionHandler.error=读取请求时出错,忽略
 abstractConnectionHandler.ioexception.debug=正常的 IOException,忽略
+abstractConnectionHandler.oome=无法完成请求的处理
 abstractConnectionHandler.socketexception.debug=(:SocketException是正常的,忽略
 
 abstractProcessor.fallToDebug=注意:更多的请求解析错误将以DEBUG级别日志进行记录。
@@ -21,6 +23,9 @@ abstractProcessor.hostInvalid=[{0}] 是无效主机
 
 abstractProtocolHandler.destroy=正在摧毁协议处理器 [{0}]
 abstractProtocolHandler.init=初始化协议处理器 [{0}]
+abstractProtocolHandler.pause=暂停ProtocolHandler[{0}]
+abstractProtocolHandler.resume=正在恢复ProtocolHandler[{0}]
+abstractProtocolHandler.setAttribute=使用值[{1}]设置属性[{0}]
 abstractProtocolHandler.start=开始协议处理句柄[{0}]
 abstractProtocolHandler.stop=正在停止ProtocolHandler [{0}]
 
diff --git a/java/org/apache/coyote/ajp/LocalStrings_zh_CN.properties b/java/org/apache/coyote/ajp/LocalStrings_zh_CN.properties
index a7dd421..dc0b6b9 100644
--- a/java/org/apache/coyote/ajp/LocalStrings_zh_CN.properties
+++ b/java/org/apache/coyote/ajp/LocalStrings_zh_CN.properties
@@ -13,13 +13,17 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+ajpMessage.invalidPos=请求读取的字节位于位置[{0}],该位置超出了AJP消息的结尾
+
 ajpmessage.invalid=收到无效的带有签名[{0}]的消息
+ajpmessage.invalidLength=接收到长度为[{0}]的无效消息。
 ajpmessage.null=不能赋空值
 ajpmessage.overflow=在缓冲区[{1}]位置添加[{0}]字节时发生溢出错误
 
 ajpprocessor.certs.fail=):证书转换失败
 ajpprocessor.failedsend=失败的发送AJP消息
 ajpprocessor.header.error=头部信息解析失败
+ajpprocessor.header.tooLong=已收到长度为[{0}]的头消息,但packetSize仅为[{1}]
 ajpprocessor.request.prepare=准备请求错误
 ajpprocessor.request.process=处理请求错误
 
diff --git a/java/org/apache/coyote/http11/LocalStrings_zh_CN.properties b/java/org/apache/coyote/http11/LocalStrings_zh_CN.properties
index 101a584..aed1a1d 100644
--- a/java/org/apache/coyote/http11/LocalStrings_zh_CN.properties
+++ b/java/org/apache/coyote/http11/LocalStrings_zh_CN.properties
@@ -13,23 +13,31 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+http11processor.fallToDebug=注意:HTTP请求解析错误的进一步发生将记录在DEBUG级别。
 http11processor.header.parse=解析 HTTP 请求 header 错误
+http11processor.request.finish=完成请求时出错
 http11processor.request.inconsistentHosts=请求行中指定的主机与主机头不一致。
 http11processor.request.invalidScheme=HTTP请求包含具有无效方案的绝对URL
 http11processor.request.invalidTransferEncoding=HTTP请求包含了一个无效的Transfer-Encoding头
 http11processor.request.invalidUri=HTTP请求包含一个无效的URI
 http11processor.request.invalidUserInfo=HTTP 请求包含带有无效 userinfo 的绝对 URI
 http11processor.request.multipleContentLength=请求包含了多个content-length请求头参数
+http11processor.request.multipleHosts=请求包含多个主机头
 http11processor.request.noHostHeader=http/1.1请求没有提供主机头
+http11processor.request.nonNumericContentLength=请求包含一个具有非数字值的内容长度头
 http11processor.request.prepare=准备请求时出错
 http11processor.request.process=错误的处理请求
 http11processor.response.finish=错误完成相应
+http11processor.sendfile.error=使用sendfile发送数据时出错。可能是由于起点/终点的请求属性无效引起的
 http11processor.socket.info=获取socket信息异常
 
 iib.eof.error=套接字读取到意外的EOF
+iib.invalidHttpProtocol=在HTTP协议中发现无效字符
 iib.invalidPhase=无效的请求行解析阶段[{0}]
+iib.invalidRequestTarget=在请求目标中找到无效字符。有效字符在RFC 7230和RFC 3986中定义
 iib.invalidheader=HTTP header行 [{0}] 不符合RFC 7230并且已被忽略。
 iib.invalidmethod=在方法名称中发现无效的字符串, HTTP 方法名必须是有效的符号.
 iib.parseheaders.ise.error=意外状态:已解析标头。 缓冲池不回收?
+iib.requestheadertoolarge.error=请求头太大
 
 iob.responseheadertoolarge.error=尝试将更多数据写入响应标头,而不是缓冲区中有可用空间。 增加连接器上的maxHttpHeaderSize或将更少的数据写入响应头。
diff --git a/java/org/apache/coyote/http11/filters/LocalStrings_zh_CN.properties b/java/org/apache/coyote/http11/filters/LocalStrings_zh_CN.properties
index b9ecd33..7661321 100644
--- a/java/org/apache/coyote/http11/filters/LocalStrings_zh_CN.properties
+++ b/java/org/apache/coyote/http11/filters/LocalStrings_zh_CN.properties
@@ -16,9 +16,11 @@
 chunkedInputFilter.eos=读取请求主体时流的意外结束
 chunkedInputFilter.eosTrailer=读取 trailer 头时出现意外的流结束
 chunkedInputFilter.error=没有数据可用由于先前的错误
+chunkedInputFilter.invalidCrlf=行尾序列无效(找到除CR或LF以外的字符)
 chunkedInputFilter.invalidCrlfCRCR=无效的结束的行序列(CRCR)
 chunkedInputFilter.invalidCrlfNoCR=无效的行尾结束符序列(LF前缺少CR)
 chunkedInputFilter.invalidCrlfNoData=无效的行尾序列(没有可读取的数据)
+chunkedInputFilter.invalidHeader=无效的块
 chunkedInputFilter.maxExtension=超过最大扩展数
 chunkedInputFilter.maxTrailer=超过最大数
 
diff --git a/java/org/apache/coyote/http11/upgrade/LocalStrings_zh_CN.properties b/java/org/apache/coyote/http11/upgrade/LocalStrings_zh_CN.properties
index 15f4986..3e35ba7 100644
--- a/java/org/apache/coyote/http11/upgrade/LocalStrings_zh_CN.properties
+++ b/java/org/apache/coyote/http11/upgrade/LocalStrings_zh_CN.properties
@@ -14,6 +14,10 @@
 # limitations under the License.
 
 upgrade.sis.isFinished.ise=当 ServletInputStream 不处于非阻塞模式时调用 isFinished() 是非法的(即必须首先调用 setReadListener())
+upgrade.sis.isReady.ise=当ServletInputStream未处于非阻塞模式时,调用isReady()是非法的(即必须首先调用setReadListener())
 upgrade.sis.read.ise=在非阻塞模式下调用任何read()方法而不首先通过调用isready()检查是否有可用的数据是非法的
+upgrade.sis.readListener.null=向setReadListener()传递null是非法的
 upgrade.sis.readListener.set=在同一个upgraded连接上调用多次setReadListener()函数是非法的
+upgrade.sos.canWrite.ise=当ServletOutputStream未处于非阻塞模式时,调用canWrite()是非法的(即必须首先调用setWriteListener)
 upgrade.sos.writeListener.null=对setWriteListener()传递null是非法的
+upgrade.sos.writeListener.set=对于同一个升级的连接,多次调用setWriteListener()是非法的
diff --git a/java/org/apache/jasper/resources/LocalStrings_zh_CN.properties b/java/org/apache/jasper/resources/LocalStrings_zh_CN.properties
index fbb301a..483f0f6 100644
--- a/java/org/apache/jasper/resources/LocalStrings_zh_CN.properties
+++ b/java/org/apache/jasper/resources/LocalStrings_zh_CN.properties
@@ -15,65 +15,113 @@
 
 jasper.error.emptybodycontent.nonempty=根据 TLD,[{0}] 标签必须为空,但不是
 
+jsp.engine.info=Jasper JSP{0}引擎
 jsp.error.action.isnottagfile=[{0}]行为只能用于标签文件
 jsp.error.action.istagfile=标签文件中不能使用[{0}]功能
 jsp.error.attempt_to_clear_flushed_buffer=错误:尝试清空已刷新的缓冲区
 jsp.error.attr.quoted=应引用属性值
+jsp.error.attribute.custom.non_rt_with_expr=根据标记文件中的TLD或attribute指令,attribute[{0}]不接受任何表达式
 jsp.error.attribute.deferredmix=不能在同一属性值中同时使用 ${} 和 #{} EL 表达式
 jsp.error.attribute.duplicate=属性限定名在元素中必须是唯一的
+jsp.error.attribute.invalidPrefix=属性前缀[{0}]与任何导入的标记库都不对应
 jsp.error.attribute.noequal=期望的符号是等号
 jsp.error.attribute.noescape=属性值[{0}]引用[{1}],在值内使用时必须被转义。
+jsp.error.attribute.noquote=需要引号。
 jsp.error.attribute.nowhitespace=JSP 规范要求一个属性名字前有空格
+jsp.error.attribute.null_name=空属性名
+jsp.error.attribute.standard.non_rt_with_expr=[{1}]标准操作的[{0}]属性不接受任何表达式
+jsp.error.attribute.unterminated=[{0}]的属性值未正确终止
 jsp.error.bad.scratch.dir=你指定的 scratchDir:[{0}] 不可用。
+jsp.error.badStandardAction=无效的标准操作。
 jsp.error.bad_attribute=属性[{0}]无效为tag[{1}] 通过TLD
+jsp.error.bad_tag=在用前缀[{1}]导入的标记库中未定义标记[{0}]
+jsp.error.beans.nomethod=在类型为[{1}]的bean中找不到读取属性[{0}]的方法
+jsp.error.beans.nomethod.setproperty=在类型为[{2}]的bean中找不到用于写入类型为[{1}]的属性[{0}]的方法
 jsp.error.beans.noproperty=在[{1}]类型bean中找不到任何有关属性[{0}]的信息
 jsp.error.beans.nullbean=尝试获取一个bean 操作在一个空对象上.
 jsp.error.beans.property.conversion=无法将字符串[{0}]转换为属性[{2}]的类[{1}]:[{3}]
 jsp.error.beans.propertyeditor.notregistered=属性编辑器未注册到属性编辑管理器
+jsp.error.beans.setproperty.noindexset=无法设置索引属性。
+jsp.error.bug48498=无法显示JSP提取。可能是由于XML解析器错误(有关详细信息,请参阅TomcatBug48498)。
+jsp.error.classname=无法从.class文件确定类名
+jsp.error.coerce_to_type=无法将值[{2}]强制为属性[{0}]的类型[{1}]。
+jsp.error.compilation=编译文件时出错:[{0}[{1}]
 jsp.error.compiler=没有可用的Java编译器
+jsp.error.compiler.config=没有可用于配置选项的Java编译器compilerClassName:[{0}]和compiler:[{1}]
 jsp.error.config_pagedir_encoding_mismatch=jsp属性组[{0}]中指定的页编码与page指令[{1}]中指定的页编码不同
 jsp.error.corresponding.servlet=生成的servlet错误:\n
 jsp.error.could.not.add.taglibraries=不能增加一个或者多个tag 库.
 jsp.error.data.file.processing=处理文件 [{0}] 错误
+jsp.error.data.file.read=读取文件[{0}]时出错
+jsp.error.data.file.write=写入数据文件时出错
+jsp.error.deferredmethodandvalue=“deferredValue”和“deferredMethod”不能同时为“true”
+jsp.error.deferredmethodsignaturewithoutdeferredmethod=如果“deferredMethod”不是“true”,则无法指定方法签名
 jsp.error.deferredvaluetypewithoutdeferredvalue=如果“deferredValue”的值不是“true”的话,不能指定一个值类型
+jsp.error.directive.isnottagfile=[{0}]指令只能在标记文件中使用
+jsp.error.directive.istagfile=[{0}]指令不能在标记文件中使用
 jsp.error.duplicate.name.jspattribute=标准或自定义操作中指定的属性[{0}]也显示为随附的jsp:属性中name属性的值
+jsp.error.duplicateqname=找到具有重复限定名[{0}]的属性。属性限定名在元素中必须是唯一的。
+jsp.error.dynamic.attributes.not.implemented=[{0}]标记声明它接受动态属性,但未实现所需的接口
+jsp.error.el.parse=[{0}]:[{1}]
 jsp.error.el.template.deferred=#{...} 不允许出现在模板文本中
 jsp.error.el_interpreter_class.instantiation=加载或实例化ELInterpreter类[{0}]失败
 jsp.error.fallback.invalidUse=jsp:fallback必须是jsp:plugin的直接子代
+jsp.error.file.already.registered=文件[{0}]的递归包含
 jsp.error.file.cannot.read=无法读取文件 [{0}]
 jsp.error.file.not.found=文.件[{0}] 未找到
 jsp.error.flush=刷新数据时发生异常
+jsp.error.fragmentwithtype=无法同时指定“片段”和“类型”属性。如果存在“片段”,则“类型”固定为“ {0}”
+jsp.error.function.classnotfound=找不到在TLD中为函数[{1}]指定的类[{0}]:[{2}]
 jsp.error.include.exception=无法包含[{0}]
 jsp.error.include.tag=无效的jsp:include标签
 jsp.error.internal.filenotfound=内部错误:找不到文件 [{0}]
 jsp.error.invalid.attribute=[{0}]有一个无效属性:[{1}]
+jsp.error.invalid.bean=useBean类属性[{0}]的值无效。
+jsp.error.invalid.directive=无效指令
+jsp.error.invalid.expression=[{0}]包含无效表达式:[{1}]
+jsp.error.invalid.implicit=[{0}]处标记文件的隐式TLD无效
+jsp.error.invalid.implicit.version=[{0}]处标记文件的隐式TLD中定义的JSP版本无效。
 jsp.error.invalid.scope=非法的scope属性值:[{0}](必须是page、request、session或application中的一个)
 jsp.error.invalid.tagdir=标签文件目录 [{0}] 不以"/WEB-INF/tags"开头
 jsp.error.invalid.version=为标签 [{0}] 定义了无效的 JSP 版本号
 jsp.error.ise_on_clear=当缓存大小等于0时调用clear()函数是非法的
+jsp.error.java.line.number=在生成的java文件中的第:[{0}]行发生错误:[{1}]
 jsp.error.javac=Javac异常
+jsp.error.javac.env=环境:
 jsp.error.jspbody.emptybody.only=标签[{}]的标签体内智能包含jsp:attribute
 jsp.error.jspbody.invalidUse=JSP:主体必须是标准或自定义操作的子元素
 jsp.error.jspbody.required=如果使用 jsp:attribute,则必须使用 jsp:body 为 [{0}] 指定标记正文。
 jsp.error.jspc.missingTarget=缺少目标:必须指定-webapp或-uriroot或一个或多个jsp页
+jsp.error.jspc.no_uriroot=未指定uriroot,无法用指定的JSP文件定位
+jsp.error.jspc.uriroot_not_dir=-uriroot选项必须指定一个预先存在的目录
 jsp.error.jspelement.missing.name=XML强制性约束:属性name缺失。
 jsp.error.jspoutput.conflict=&lt; jsp:output&gt;:非法使多个[{0}]出现不同的值(旧:[{1}],新:[{2}])
 jsp.error.jspoutput.doctypenamesystem=&lt;jsp:output&gt;: 'doctype-root-element' 和 'doctype-system' 必须一起出现
+jsp.error.jspoutput.doctypepublicsystem=&amp;lt;jsp:output&amp;gt;:如果显示“doctype public”属性,则必须显示“doctype system”属性
+jsp.error.jspoutput.invalidUse=&amp;lt;jsp:output&amp;gt;不能在标准语法中使用
 jsp.error.jspoutput.nonemptybody=&lt;jsp:output&gt;不能有正文
 jsp.error.jsptext.badcontent='&lt;',当出现在&lt; jsp:text&gt;的主体中时,必须封装在CDATA中
 jsp.error.lastModified=无法确定文件 [{0}] 的最后修改日期
 jsp.error.library.invalid=根据库[{0}](:[{1}],jsp页无效
+jsp.error.literal_with_void=为属性[{0}]指定了一个文本值,该属性定义为返回类型为void的延迟方法。在这种情况下,JSP.2.3.4不允许使用文本值。
 jsp.error.loadclass.taghandler=无法为TAG [{1}]加载标记处理程序类[{0}]
 jsp.error.location=行.: [{0}], 列: [{1}]
 jsp.error.mandatory.attribute=[{0}]: 强制性属性 [{1}] 缺失。
+jsp.error.missing.tagInfo=TLD中缺少[{0}]的TagInfo对象
 jsp.error.missing_attribute=根据TLD或标记文件,标记[{1}]必须使用属性[{0}]
+jsp.error.missing_var_or_varReader=缺少“var”或“varReader”属性
+jsp.error.namedAttribute.invalidUse=jsp:属性必须是标准或自定义操作的子元素
+jsp.error.needAlternateJavaEncoding=默认java编码[{0}]在java平台上无效。可以通过JspServlet的“javaEncoding”参数指定备用项。
 jsp.error.nested.jspattribute=jsp:attribute标准操作不能嵌套在另一个jsp:attribute标准操作中
 jsp.error.nested.jspbody=JSP:体标准动作不能嵌套在另一个jsp:body 或者 jsp:属性标准动作中
 jsp.error.nested_jsproot=嵌套的&lt;jsp:root&gt;
+jsp.error.no.more.content=在需要更多分析时到达内容结尾:标记嵌套错误?
 jsp.error.no.scratch.dir=JSP引擎未配置scratch文件夹。\n\
 请在对应上下文Context的servlets.properties文件中添加"jsp.initparams=scratchdir=<dir-name>"。
 jsp.error.no.scriptlets=脚本( &lt;%!, &lt;jsp声明, &lt;%=, &lt;jsp表达式, &lt;%, &lt;jsp脚本变量 )不允许出现在这里
 jsp.error.noFunction=无法使用指定的前缀找到函数[{0}]
+jsp.error.noFunctionMethod=在类{2}中找不到函数{1}的方法{0}]
+jsp.error.non_null_tei_and_var_subelems=标记{0}有一个或多个变量子元素和返回一个或多个变量信息的TagExtraInfo类
 jsp.error.not.in.template=在模板文本体中, [{0}] 是不允许的.
 jsp.error.outputfolder=无输出目录
 jsp.error.overflow=错误:JSP缓冲区溢出
@@ -103,87 +151,140 @@ jsp.error.page.multi.pageencoding=页指令不能有多次出现的页编码
 jsp.error.page.noSession=无法访问不参与任何会话的页中的会话作用域
 jsp.error.param.invalidUse=jsp:param 不能在jsp:include、jsp:forward或jsp:params等元素外使用
 jsp.error.paramexpected=使用“name”和“value”属性期望“jsp:param”标准操作
+jsp.error.params.emptyBody=jsp:params必须至少包含一个嵌套的jsp:param
 jsp.error.params.invalidUse=参数jsp:params必须是jsp:plugin的直接孩子参数
+jsp.error.parse.error.in.TLD=标记库描述符中的分析错误:[{0}]
 jsp.error.parse.xml=无法解析 XML 文件 [{0}]
+jsp.error.parse.xml.line=文件[{0}]上的XML解析错误:(第[{1}]行,第[{2}]行)
 jsp.error.parse.xml.scripting.invalid.body=[{0}]元素的主体不能包含任何XML元素
 jsp.error.plugin.badtype=jsp:plugin中“type”属性的值非法:必须是“bean”或“applet”
 jsp.error.plugin.nocode=代码未定义在jsp:plugin中
 jsp.error.plugin.notype=jsp:plugin中未声明type
 jsp.error.plugin.wrongRootElement=[{0}] 中的根元素的名称与 [{1}] 的不同
+jsp.error.prefix.refined=尝试将前缀[{0}]重新定义为[{1}],但当前作用域中已将其定义为[{2}]。
 jsp.error.prefix.use_before_dcl=tag指令中设置的前缀[{0}]之前已被[{1}]文件[{2}]行的一个action使用
 jsp.error.prolog_config_encoding_mismatch=XML prolog [{0}]中指定的页面编码与jsp-property-group [{1}]中指定的页面编码不同
 jsp.error.prolog_pagedir_encoding_mismatch=指定在XML语言[{0}]的网页编码是不同于指定在网页的指令[{1}]。
 jsp.error.quotes.unterminated=未终结的引号
 jsp.error.scripting.variable.missing_name=无法从属性[{0}]确定脚本变量名称
+jsp.error.security=上下文的安全初始化失败
+jsp.error.servlet.destroy.failed=JSP页面的Servlet.destroy()期间出现异常
+jsp.error.setLastModified=无法设置文件[{0}]的上次修改日期
 jsp.error.signature.classnotfound=无法找到TLD中方法签名中为函数[{1}]指定的类[{0}]。[{2}]
 jsp.error.simpletag.badbodycontent=对于一下简单的标记符,用于类[{0}]的标记描述符指定了一个无效的body内容(JSP)中
 jsp.error.single.line.number=JSP文件:[{1}] 的第 [{0}] 行发生了一个错误
 jsp.error.stream.close.failed=流.关闭失败
 jsp.error.stream.closed=流.关闭
+jsp.error.tag.conflict.attr=Tag指令:具有多个具有不同值的属性{0}的重复出现是非法的(旧的:[{1},新的:[{2}])
+jsp.error.tag.conflict.deferredsyntaxallowedasliteral=Tag指令:具有多个具有不同值的“deferredSyntaxAllowedAsLiteral”(旧值:[{0}),新值:[{1})的重复出现是非法的。
 jsp.error.tag.conflict.iselignored=TAG指令:多次出现不同值的“isELIgnored”(旧:[{0}],New:[{1}])
 jsp.error.tag.conflict.language=标签指令:非法出现多次出现的具有不同值的“语言”(旧:[{0}],新:[{1}])
 jsp.error.tag.conflict.trimdirectivewhitespaces=标签指令:非法地多次出现具有不同值的“trimDirectiveWhitespaces”(旧值:[{0}),新值:[{1}])
 jsp.error.tag.invalid.deferredsyntaxallowedasliteral=标签指令):deferredSyntaxAllowedAsLiteral的值无效
 jsp.error.tag.invalid.iselignored=Tag指令:对isELIgnored来说是无效值
-jsp.error.tag.invalid.trimdirectivewhitespaces=TAG指令:trimDirectiveWhitespaces的值无效
+jsp.error.tag.invalid.trimdirectivewhitespaces=Tag指令:trimDirectiveWhitespaces的值无效
+jsp.error.tag.language.nonjava=标记指令:无效的语言属性。
+jsp.error.tag.multi.pageencoding=Tag指令不能多次出现pageencoding
 jsp.error.tagdirective.badbodycontent=标签指令中的无效的内容体[{0}]
+jsp.error.tagfile.badSuffix=在文件路径[{0}]下找不到".tag"的后缀
+jsp.error.tagfile.illegalPath=非法的标记文件路径:[{0}],必须以“/WEB-INF/tags”或“/META-INF/tags”开头。
+jsp.error.tagfile.missingPath=未指定标记文件的路径
 jsp.error.tagfile.nameFrom.badAttribute=属性指令(在行[{1}]中声明并且其name属性为[{0}],此name-from-attribute属性的值)必须是java.lang.String类型,是“required”而不是一个“rtexprvalue”。
 jsp.error.tagfile.nameFrom.noAttribute=找不到具有值[{0}]的name属性的属性指令,该属性是name-from-attribute属性的值。
+jsp.error.tagfile.nameNotUnique=[{0}]的值与第[{2}]行中的[{1}]的值相同。
 jsp.error.taglibDirective.absUriCannotBeResolved=无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[{0}]
+jsp.error.taglibDirective.both_uri_and_tagdir=同时指定了“uri”和“tagdir”属性
 jsp.error.taglibDirective.missing.location='uri'和'tagdir' 属性均未指定。
 jsp.error.tei.invalid.attributes=来自TagExtraInfo的[{0}]的验证错误消息
 jsp.error.teiclass.instantiation=无法加载或实例化TagExtraInfo类:[{0}]。
 jsp.error.text.has_subelement=&LT; JSP:文本&GT; 不得有任何子元素
+jsp.error.tld.fn.duplicate.name=标记库[{1}]中的函数名[{0}]重复
 jsp.error.tld.fn.invalid.signature=TLD中函数签名的语法无效。 标签库:[{0}],功能:[{1}]
+jsp.error.tld.invalid_tld_file=无效的tld文件:[{0}],有关详细信息,请参阅JSP规范第7.3.1节。
 jsp.error.tld.mandatory.element.missing=TLD [{1}] 中强制 TLD 元素 [{0}] 不存在或为空
 jsp.error.tld.missing_jar=丢失了包含TLD的JAR资源[{0}]
+jsp.error.tld.unable_to_get_jar=无法获取包含TLD:[{1}]的JAR资源[{0}]
 jsp.error.tlv.invalid.page=):[{0}]和[{1}]的TagLibraryValidator的验证错误消息
+jsp.error.tlvclass.instantiation=未能加载或实例化TagLibraryValidator类:[{0}]
+jsp.error.unable.compile=无法为JSP编译类
 jsp.error.unable.deleteClassFile=无法删除class文件[{0}]
 jsp.error.unable.load=无法加载JSP的相关类
 jsp.error.unable.renameClassFile=无法重命名类文件[{0}]为[{1}]
 jsp.error.unable.to_find_method=不能为属性:[{0}]找到setter 方法.
 jsp.error.unavailable=JSP已被标记为不可用
 jsp.error.unbalanced.endtag=结束标签&lt;/{0}不对称
+jsp.error.undeclared_namespace=使用未声明的命名空间[{0}]遇到自定义标记
 jsp.error.unknown_attribute_type=属性[{0}]的未知属性类型[{1}]。
 jsp.error.unsupported.encoding=不支持的编码:[{0}]
+jsp.error.unterminated=未终止的[{0}]标记。
+jsp.error.usebean.duplicate=useBean:重复的bean名称:[{0}]
+jsp.error.usebean.noSession=当JSP页声明(通过page指令)useBean不参与会话时,useBean使用会话作用域是非法的
+jsp.error.var_and_varReader=只有一个“var”或“varReader”能被指定
+jsp.error.variable.alias=必须在variable指令中指定属性和别名属性中的name或none
 jsp.error.variable.both.name=不能在变量指令的属性属性中同时指定给定的名称和名称
 jsp.error.variable.either.name=必须在变量指令中指定 name-given 或 name-from-attribute 属性
 jsp.error.xml.badStandardAction=无效、标准的action: [{0}]
+jsp.error.xml.bad_tag=在与uri[{1}]关联的标记库中未定义标记[{0}]
 jsp.exception=在 [{1}] 行处理 [{0}] 时发生异常
 jsp.info.ignoreSetting=因为 SecurityManager 被启用,忽略 [{1}] 的 [{0}] 的设置
+jsp.message.dont.modify.servlets=重要提示:不要修改生成的servlet
 jsp.message.jsp_added=增加JSP 为路径[{0}]为上下文[{1}]的队列
+jsp.message.jsp_queue_created=用长度[{0}]上下文[{1}]创建了jsp队列
 jsp.message.jsp_queue_update=在上下文[{1}]队列中更新路径为[{0}]的JSP
 jsp.message.jsp_removed_excess=从上下文[{1}]的队列中移除额外在路径[{0}]中JSP,
 jsp.message.jsp_removed_idle=在[{2}]毫秒之后删除上下文[{1}]中路径[{0}]的空闲JSP
 jsp.message.jsp_unload_check=在context[{0}]中检查未加载的jsp,jsp总共:[{1}]队列长度[{2}]
+jsp.message.parent_class_loader_is=父类加载器是:[{0}]
+jsp.message.scratch.dir.is=JSP引擎的Scratch目录是:[{0}]
 jsp.tldCache.noTldSummary=至少有一个JAR被扫描用于TLD但尚未包含TLD。 为此记录器启用调试日志记录,以获取已扫描但未在其中找到TLD的完整JAR列表。 在扫描期间跳过不需要的JAR可以缩短启动时间和JSP编译时间。
+jsp.warning.bad.urlpattern.propertygroup=web.xml中url模式子元素中的值[{0}]错误
+jsp.warning.checkInterval=警告:initParam checkInterval的值无效。将使用默认值“300”秒
+jsp.warning.classDebugInfo=警告:initParam classdebuginfo的值无效。将使用默认值“false”
+jsp.warning.compiler.classfile.delete.fail=未能删除生成的类文件[{0}]
 jsp.warning.compiler.classfile.delete.fail.unknown=删除生成的class文件失败
+jsp.warning.compiler.javafile.delete.fail=未能删除生成的Java文件[{0}]
+jsp.warning.development=警告:initParam开发的值无效。将使用默认值“true”。
 jsp.warning.displaySourceFragment=警告:displaySourceFragment初始化参数时参数值无效,将使用默认的值“true”
 jsp.warning.dumpSmap=警告:初始化堆内存的值无效。将使用“false”的默认值
 jsp.warning.enablePooling=警告:initParam enablePooling的值无效。将使用默认值“true”
 jsp.warning.fork=警告:initParam的值无效。将使用“true”的默认值
+jsp.warning.genchararray=警告:initParam genstringascharray的值无效。将使用默认值“false”
+jsp.warning.jspIdleTimeout=警告:initParam jspIdleTimeout的值无效。将使用默认值“-1”
+jsp.warning.keepgen=警告:initParam keepgenerated的值无效。将使用默认值“false”
+jsp.warning.mappedFile=警告:initParam mappedFile的值无效。将使用默认值“false”
+jsp.warning.maxLoadedJsps=警告:initParam maxLoadedJsps的值无效。将使用默认值“-1”。
+jsp.warning.modificationTestInterval=警告:initParam modificationTestInterval的值无效。将使用默认值“4”秒
 jsp.warning.noJarScanner=警告:ServletContext中没有设置org.apache.tomcat.JarScaner。回到默认的JarScaner实现。
+jsp.warning.quoteAttributeEL=警告:initParam quoteattribeel的值无效。将使用默认值“false”
+jsp.warning.recompileOnFail=警告:initParam recompileOnFail的值无效。将使用默认值“false”
 jsp.warning.suppressSmap=警告:suppressSmap的初始化参数无效。将使用默认值“false”
+jsp.warning.unknown.sourceVM=忽略未知源VM[{0}]
+jsp.warning.unknown.targetVM=忽略未知目标VM[{0}]
+jsp.warning.unsupported.sourceVM=不支持的源VM[{0}]请求,使用[{1}]
+jsp.warning.unsupported.targetVM=不支持请求的目标VM[{0}],使用[{1}]
+jsp.warning.xpoweredBy=警告:initParam xpoweredBy的值无效。将使用默认值“false”
 
 jspc.delete.fail=无法删除文件 [{0}]
 jspc.error.fileDoesNotExist=文件参数 [{0}] 不存在
-jspc.webfrg.footer=\n\
-</web-fragment>\n\
+jspc.error.generalException=错误文件[{0}]生成以下常规异常:
+jspc.generation.result=生成在[{1}]毫秒内完成,出现[{0}]个错误
+jspc.implicit.uriRoot=uriRoot隐式设置为[{0}]
+jspc.webfrg.footer=</web-fragment>\n\
 \n
-jspc.webinc.footer=\n\
-<!--\n\
+jspc.webinc.footer=<!--\n\
 由Apache Tomcat JSPC自动创建的内容结束。\n\
 -->\n\
 \n
-jspc.webinc.header=\n\
-<!--\n\
+jspc.webinc.header=<!--\n\
 由 Apache Tomcat JspC 自动生成。\n\
 -->\n\
 \n
 jspc.webinc.insertEnd=<!-- JSPC servlet 映射结束 -->
 jspc.webinc.insertStart=<!-- JSPC servlet 映射开始 -->
-jspc.webxml.footer=\n\
-</web-app>\n\
+jspc.webxml.footer=</web-app>\n\
 \n
 
+org.apache.jasper.compiler.ELParser.invalidQuotesForStringLiteral=字符串文本[{0}]无效。它必须包含在单引号或双引号中。
+org.apache.jasper.compiler.ELParser.invalidQuoting=表达式[{0}]无效。在带引号的字符串中,只有[],['']和[“]可以用[]转义。
+
 xmlParser.skipBomFail=解析XML输入流时,跳过BOM失败。
diff --git a/java/org/apache/naming/LocalStrings_zh_CN.properties b/java/org/apache/naming/LocalStrings_zh_CN.properties
index 7bae775..822482f 100644
--- a/java/org/apache/naming/LocalStrings_zh_CN.properties
+++ b/java/org/apache/naming/LocalStrings_zh_CN.properties
@@ -17,8 +17,13 @@ contextBindings.noContextBoundToCL=没有绑定到此类加载器的命名上下
 contextBindings.noContextBoundToThread=没有绑定到此线程的命名上下文
 contextBindings.unknownContext=未知.上下文名:[{0}]
 
+namingContext.alreadyBound=名称[{0}]已在此上下文中绑定
 namingContext.contextExpected=上下文Context未绑定名称name
 namingContext.failResolvingReference=解析引用时意外异常
+namingContext.invalidName=名称无效
+namingContext.nameNotBound=名称[{0}]未在此上下文中绑定。找不到[{1}]。
+namingContext.noAbsoluteName=无法为此命名空间生成绝对名称
+namingContext.readOnly=上下文是只读的
 
 selectorContext.methodUsingName=用[{1}]的name属性调用方法[{0}]
 selectorContext.methodUsingString=使用字符串[{1}]调用方法[{0}]
diff --git a/java/org/apache/naming/factory/LocalStrings_zh_CN.properties b/java/org/apache/naming/factory/LocalStrings_zh_CN.properties
index fb99e01..4891b49 100644
--- a/java/org/apache/naming/factory/LocalStrings_zh_CN.properties
+++ b/java/org/apache/naming/factory/LocalStrings_zh_CN.properties
@@ -13,13 +13,20 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+dataSourceLinkFactory.badWrapper=不是类型[{0}]的包装
+
 factoryBase.factoryClassError=无法加载资源工厂类
 factoryBase.factoryCreationError=无法创建资源工厂实例
 factoryBase.instanceCreationError=无法创建资源实例
 
+lookupFactory.circularReference=找到一个涉及[{0}]的循环引用
 lookupFactory.createFailed=无法创建JNDI查找工厂类实例
 lookupFactory.loadFailed=无法加载JNDI查找工厂类
 lookupFactory.typeMismatch=期望JNDI引用[{0}]的类型为[{1}],但查找[{2}]返回类型为[{3}]的对象
 
+resourceFactory.factoryCreationError=无法创建资源工厂实例
+
+resourceLinkFactory.invalidGlobalContext=调用方提供的全局上下文无效
 resourceLinkFactory.nullType=引用全局资源 [{1}] 的本地资源链接 [{0}] 未指定所需的属性类型
 resourceLinkFactory.unknownType=引用全局资源[{1}]的本地资源链接[{0}]指定了未知类型[{2}]
+resourceLinkFactory.wrongType=引用全局资源[{1}]的本地资源链接[{0}]应返回[{2}]的实例,但返回了[{3}]的实例
diff --git a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties b/java/org/apache/naming/factory/webservices/LocalStrings_zh_CN.properties
similarity index 93%
copy from java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
copy to java/org/apache/naming/factory/webservices/LocalStrings_zh_CN.properties
index 623a146..08d3248 100644
--- a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
+++ b/java/org/apache/naming/factory/webservices/LocalStrings_zh_CN.properties
@@ -13,4 +13,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-modules.readDescriptorsError=读取描述文件出错
+serviceProxy.portNotFound=找不到端口组件ref[{0}]
diff --git a/java/org/apache/tomcat/util/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/LocalStrings_zh_CN.properties
index 6a3d8d9..fc1e6b7 100644
--- a/java/org/apache/tomcat/util/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/LocalStrings_zh_CN.properties
@@ -18,8 +18,13 @@ diagnostics.vmInfoClassCompilation=:)class汇编
 diagnostics.vmInfoClassLoading=类加载中
 diagnostics.vmInfoGarbageCollectors=垃圾收集器[{0}]
 diagnostics.vmInfoLogger=日志记录器(Logger)信息
+diagnostics.vmInfoMemory=内存信息
+diagnostics.vmInfoMemoryManagers=内存管理器[{0}]
+diagnostics.vmInfoMemoryPools=内存池[{0}]
 diagnostics.vmInfoOs=操作系统信息
+diagnostics.vmInfoPath=路径信息
 diagnostics.vmInfoRuntime=运行时信息
+diagnostics.vmInfoStartup=启动参数
 diagnostics.vmInfoSystem=系统.属性
 diagnostics.vmInfoThreadCounts=线程数
 diagnostics.vmInfoThreadMxBean=ThreadMXBean功能
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/buf/LocalStrings_zh_CN.properties
index 6d0140e..6863c23 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings_zh_CN.properties
@@ -13,5 +13,10 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+b2cConverter.unknownEncoding=不支持字符编码[{0}]
+
 uDecoder.convertHexDigit.notHex=[{0}] 不是十六进制数字
+uDecoder.eof=文件结尾(EOF)
+uDecoder.noSlash=不允许使用编码的斜杠字符
 uDecoder.urlDecode.conversionError=使用编码[{1}]解码[{0}]失败
+uDecoder.urlDecode.missingDigit=无法解码[{0}],因为%字符必须后跟两个十六进制数字。
diff --git a/java/org/apache/tomcat/util/descriptor/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/descriptor/LocalStrings_zh_CN.properties
index 37298fe..c7bc72e 100644
--- a/java/org/apache/tomcat/util/descriptor/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/descriptor/LocalStrings_zh_CN.properties
@@ -14,3 +14,8 @@
 # limitations under the License.
 
 digesterFactory.missingSchema=XML模型[{0}]未找到,如果XML校验功能开启了的话,这很可能终止XML校验
+
+localResolver.unresolvedEntity=不能解决XML资源[{0}]与公共ID[{1}],系统ID[{2}]和基础URI[{3}]到一个已知,当地的实体。
+
+xmlErrorHandler.error=非致命错误[{0}]报告正在处理[{1}]。
+xmlErrorHandler.warning=警告[{0}]报告处理[{1}]。
diff --git a/java/org/apache/tomcat/util/http/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/http/LocalStrings_zh_CN.properties
index 0176bac..ab661ef 100644
--- a/java/org/apache/tomcat/util/http/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/http/LocalStrings_zh_CN.properties
@@ -13,6 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+cookies.fallToDebug=␣注意:将在调试级别记录进一步出现的Cookie错误。
 cookies.invalidCookieToken=Cookie:cookie无效。值不是令牌或引用值
 cookies.invalidSpecial=Cookies:未知特殊的Cookie
 cookies.maxCountFail=检测到超过Cookie最大允许的数量[{0}]
@@ -22,8 +23,11 @@ headers.maxCountFail=检测到超过了允许设置的最大header 数[{0}]
 parameters.bytes=开始处理输入[{0}]
 parameters.copyFail=无法创建以调试日志记录为目的的原始参数值的副本
 parameters.decodeFail.debug=字符解码失败.参数 [{0}]和值 [{1}]被忽略
+parameters.decodeFail.info=字符解码失败。值为[{1}]的参数[{0}]已被忽略。请注意,此处引用的名称和值可能由于解码失败而损坏。使用调试级别日志记录查看原始的、未损坏的值。
 parameters.emptyChunk=忽略空参数块
 parameters.fallToDebug=注:更多的参数错误将以DEBUG级别日志进行记录。
+parameters.invalidChunk=从字节[{0}]开始到字节[{1}]结束的无效块,忽略值[{2}]
 parameters.maxCountFail=检测到单个请求([{0}])的最大请求参数数(GET加POST)。 超出此限制的任何参数都被忽略。 要更改此限制,请在Connector上设置maxParameterCount属性。
 parameters.maxCountFail.fallToDebug=注意:更多的错误信息只在debug级别日志中记录
+parameters.multipleDecodingFail=字符解码失败。总共检测到[{0}]个失败,但只记录了第一个失败。为此记录器启用调试级别日志记录以记录所有故障。
 parameters.noequal=):参数从位置[{0}]开始,到位置[{1}]结束,值为[{2}],后面没有“=”字符
diff --git a/java/org/apache/tomcat/util/http/parser/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/http/parser/LocalStrings_zh_CN.properties
index caa6cbb..7f249be 100644
--- a/java/org/apache/tomcat/util/http/parser/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/http/parser/LocalStrings_zh_CN.properties
@@ -14,6 +14,8 @@
 # limitations under the License.
 
 http.closingBracket=在非IPv6主机名中找到了右括号']'。
+http.illegalAfterIpv6=不允许字符[{0}]跟随主机名中的IPv6地址。
+http.illegalCharacterDomain=字符[{0}]在域名中永远无效。
 http.illegalCharacterIpv4=字符[{0}]为非法的IPv4地址。
 http.illegalCharacterIpv6=字符[{0}]为非法的IPv6地址。
 http.invalidCharacterDomain.afterColon=字符 [{0}] 在域名中的冒号后无效。
@@ -35,3 +37,4 @@ http.singleColonStart=一个IPv6地址也许不是以单个冒号":"开头的。
 http.tooFewHextets=一个IPv6地址必须包含8个16进制数,但是这个IP地址包含了[(0)]个16进制数,并且无“::”序列表示一个或多个0个16进制数
 http.tooManyColons=IPv6地址不能包含超过2个连续冒号字符。
 http.tooManyDoubleColons=一个IPv6地址只能包含一个 '::' 序列。
+http.tooManyHextets=IPv6地址包含[{0}]个十六进制数,但有效的IPv6地址不能超过8个。
diff --git a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
index 623a146..01e2a23 100644
--- a/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/modeler/LocalStrings_zh_CN.properties
@@ -13,4 +13,5 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+modules.digesterParseError=分析注册表数据时出错
 modules.readDescriptorsError=读取描述文件出错
diff --git a/java/org/apache/tomcat/util/scan/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/util/scan/LocalStrings_zh_CN.properties
index 9a0b85d..3dab0f6 100644
--- a/java/org/apache/tomcat/util/scan/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/util/scan/LocalStrings_zh_CN.properties
@@ -18,5 +18,7 @@ jarScan.classloaderJarNoScan=跳过classpath路径[{0}]下的jar包扫描。
 jarScan.classloaderJarScan=从classpath扫描JAR[{0}]
 jarScan.classloaderStart=在类加载器层次结构中扫描JAR
 jarScan.jarUrlStart=正在扫描URL [{0}] 上的JAR文件
+jarScan.webinflibFail=无法从/WEB-INF/lib扫描JAR[{0}]。
 jarScan.webinflibJarNoScan=没有扫描到/WEB-INF/lib目录下的JAR [{0}]
+jarScan.webinflibJarScan=从/WEB-INF/lib扫描JAR[{0}]
 jarScan.webinflibStart=扫描./WEB-INF/lib 中的JARs
diff --git a/java/org/apache/tomcat/websocket/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/websocket/LocalStrings_zh_CN.properties
index 246d8fa..a829fb0 100644
--- a/java/org/apache/tomcat/websocket/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/websocket/LocalStrings_zh_CN.properties
@@ -16,34 +16,55 @@
 asyncChannelGroup.createFail=无法为WebSocket客户端创建专用的异步通道组,这是防止复杂类加载程序环境(如JavaEE容器)中内存泄漏所必需的
 
 asyncChannelWrapperSecure.closeFail=干净的关闭通道失败
+asyncChannelWrapperSecure.concurrentRead=不允许并发读取操作
+asyncChannelWrapperSecure.concurrentWrite=不允许并发写操作
 asyncChannelWrapperSecure.eof=意外的流结尾
 asyncChannelWrapperSecure.statusUnwrap=unwrap()操作后SSLEngineResult 的意外状态
+asyncChannelWrapperSecure.statusWrap=wrap()操作后SSLEngineResult的意外状态
+asyncChannelWrapperSecure.tooBig=结果[{0}]太大,无法表示为整数
+asyncChannelWrapperSecure.wrongStateRead=尝试完成读取操作时,发现指示正在进行读取的标志为false(应该为true)
+asyncChannelWrapperSecure.wrongStateWrite=尝试完成写操作时,发现指示正在进行写操作的标志为false(应该为true)
 
 backgroundProcessManager.processFailed=后台进程失败
 
 caseInsensitiveKeyMap.nullKey=不允许 Key 是 Null
 
+futureToSendHandler.timeout=等待[{0}[{1}]完成后操作超时。
+
 perMessageDeflate.alreadyClosed=转换器已经关闭且可能永远不会使用
 perMessageDeflate.deflateFailed=无法压缩这个WebSocket压缩结构
 perMessageDeflate.duplicateParameter=重复定义的扩展参数[{0}]
 perMessageDeflate.invalidWindowSize=为[{0}]指定了[{1}]大小的无效窗口。 有效值是从8到15(包括8和15)的整数。
+perMessageDeflate.unknownParameter=定义了未知的扩展参数[{0}]
+
+transformerFactory.unsupportedExtension=不支持扩展名[{0}]。
 
+util.invalidMessageHandler=提供的消息处理程序没有onMessage(对象)方法。
 util.invalidType=无法强制值[{0}]转为[{1}]类型(不支持次类型)。
 util.notToken=一个非法的扩展参数被指定为名称[{0}]和值[{0}]
 util.unknownDecoderType=无法识别该解码器类型[{0}]
 
+wsFrame.bufferTooSmall=没有异步消息支持,并且缓冲区太小。缓冲区大小:[{0}],消息大小:[{1}]
 wsFrame.byteToLongFail=提供了太多字节([{0}]),转换成一个长的字节。
 wsFrame.closed=在一个关闭的控制帧后受到了一个新的帧.
 wsFrame.controlFragmented=接收到分段的控制帧,但控制帧可能不被分割。
 wsFrame.controlNoFin=发送一个没有设置的控制帧。控制帧不允许使用连续帧。
 wsFrame.controlPayloadTooBig=以大于125字节的最大允许值的大小[{0}]的有效载荷发送控制帧。
+wsFrame.invalidOpCode=用无法识别的操作码[{0}]发送了WebSocket帧
+wsFrame.invalidUtf8=接收到无法解码为UTF-8的WebSocket文本帧,因为它包含无效的字节序列
 wsFrame.invalidUtf8Close=接收到一个WebSocket关闭帧,其关闭原因包含无效的UTF-8字节序列
+wsFrame.ioeTriggeredClose=发生不可恢复的IOException,因此连接已关闭。
+wsFrame.messageTooBig=消息的长度为[{0}]个字节,但消息处理程序的限制为[{1}]个字节。
+wsFrame.noContinuation=当需要延续帧时启动了新消息。
 wsFrame.notMasked=客户端帧未被屏蔽,但必须屏蔽所有客户端帧
+wsFrame.oneByteCloseCode=客户端发送了一个包含无效单字节有效负载的关闭帧。
 wsFrame.partialHeaderComplete=接收到WebSocket帧. fin [{0}], rsv [{1}], OpCode [{2}], payload 长度 [{3}]
 wsFrame.sessionClosed=无法处理客户端数据,因为会话已被关闭
 wsFrame.textMessageTooBig=解码的文本消息对于输出缓冲区太大,终结点不支持部分消息
 wsFrame.wrongRsv=对于具有opCode [{1}]的消息,客户端帧将保留位设置为[{0}],此端点不支持
 
+wsFrameClient.ioe=从发送的服务器上读取数据失败
+
 wsHandshakeRequest.invalidUri=字符串  [{0}] 不能用来组成一个有效的URI
 wsHandshakeRequest.unknownScheme=请求中的计划[{0}]未识别
 
@@ -51,29 +72,48 @@ wsRemoteEndpoint.changeType=发送分段消息时,所有片段必须是相同
 wsRemoteEndpoint.closed=由于 WebSocket session 已关闭,消息将不会被发送
 wsRemoteEndpoint.closedDuringMessage=因为 WebSocket session 被关闭,消息的剩余部分将不会被送达
 wsRemoteEndpoint.closedOutputStream=由于OutputStream已关闭,不应该调用此方法。
+wsRemoteEndpoint.closedWriter=此方法不能调用,因为编写器已关闭。
 wsRemoteEndpoint.flushOnCloseFailed=会话关闭后仍然启用批处理消息。无法刷新剩余的批量消息
+wsRemoteEndpoint.invalidEncoder=无法实例化类型为[{0}]的指定编码器
 wsRemoteEndpoint.noEncoder=没有为类 [{0}] 的对象指定编码器
 wsRemoteEndpoint.nullData=无效空的data 参数
+wsRemoteEndpoint.nullHandler=无效的空处理程序参数
 wsRemoteEndpoint.tooMuchData=ping或pong不应该发送超过125字节
 wsRemoteEndpoint.wrongState=远程 endpoint 处于 [{0}] 状态,是被调用方法的无效状态
 
 wsSession.closed=WebSocket会话[{0}]已关闭,并且在关闭的会话上不能调用任何方法(除了close())
 wsSession.created=创建WebSocket session [{0}]。
 wsSession.doClose=关闭 WebSocket session [{1}]
+wsSession.duplicateHandlerBinary=已配置二进制消息处理程序
 wsSession.duplicateHandlerPong=已经配置了pong消息处理器
 wsSession.duplicateHandlerText=已配置文本消息处理器
+wsSession.flushFailOnClose=会话关闭时刷新批处理邮件失败
 wsSession.instanceNew=endpoint 实例注册失败
+wsSession.invalidHandlerTypePong=一个pong消息处理程序必须实现MessageHandler.Whole
+wsSession.messageFailed=无法写入完整消息,因为WebSocket连接已关闭
+wsSession.removeHandlerFailed=无法删除处理程序[{0}],因为它未在此会话中注册
 wsSession.sendCloseFail=给远程端点发送关闭消息失败,session:[{0}]
+wsSession.timeout=WebSocket会话[{0}]超时已过期
 wsSession.unknownHandler=无法添加消息处理程序[{0}],因为它是针对无法识别的类型[{1}]
+wsSession.unknownHandlerType=无法添加消息处理程序[{0}],因为它被包装为无法识别的类型[{1}]。
 
 wsWebSocketContainer.asynchronousSocketChannelFail=无法打开与服务器的连接
+wsWebSocketContainer.defaultConfiguratorFail=无法创建默认配置程序。
+wsWebSocketContainer.endpointCreateFail=未能创建类型为[{0}]的本地终结点
 wsWebSocketContainer.failedAuthentication=无法处理http响应代码[{0}]。服务器不接受身份验证头。
+wsWebSocketContainer.httpRequestFailed=启动WebSocket连接的HTTP请求失败
 wsWebSocketContainer.invalidExtensionParameters=服务器用客户端无法支持的扩展参数响应
+wsWebSocketContainer.invalidHeader=无法分析HTTP头,因为在[{0}]中没有冒号来分隔头名称和头值。已跳过标题。
+wsWebSocketContainer.invalidStatus=来自服务器[{0}]的HTTP响应不允许HTTP升级到WebSocket
+wsWebSocketContainer.invalidSubProtocol=WebSocket服务器为Sec-WebSocket-Protocol标头返回了多个值
+wsWebSocketContainer.maxBuffer=此实现将缓冲区的最大大小限制为Integer.MAX_VALUE
 wsWebSocketContainer.missingAnnotation=无法使用POJO类[{0}],因为它未添加注解@ClientEndpoint
 wsWebSocketContainer.missingLocationHeader=处理HTTP响应码 [{0}] 失败。响应头缺少Location
 wsWebSocketContainer.missingWWWAuthenticateHeader=无法处理HTTP响应代码[{0}]。 缺少WWW-Authenticate标头作为响应
 wsWebSocketContainer.pathNoHost=URI中未指定主机
+wsWebSocketContainer.pathWrongScheme=不支持方案[{0}]。支持的方案是ws和wss
 wsWebSocketContainer.proxyConnectFail=失败连接到已配置的代理 [{0}]。HTTP 响应码是 [{1}]
+wsWebSocketContainer.redirectThreshold=循环位置头[{0}]检测到/达到最大重定向数[{1}]的最大值[{2}]
 wsWebSocketContainer.sessionCloseFail=ID 为 [{0}] 的session 没有彻底关闭
 wsWebSocketContainer.shutdown=web应用程序正在停止
 wsWebSocketContainer.sslEngineFail=无法创建SSLEngine以支持SSL/TLS连接
diff --git a/java/org/apache/tomcat/websocket/pojo/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/websocket/pojo/LocalStrings_zh_CN.properties
index 4b74f50..3147f4a 100644
--- a/java/org/apache/tomcat/websocket/pojo/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/websocket/pojo/LocalStrings_zh_CN.properties
@@ -13,23 +13,33 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+pojoEndpointBase.closeSessionFail=在错误处理期间无法关闭WebSocket会话
 pojoEndpointBase.onCloseFail=):无法为类型为[{0}]的POJO调用POJO端点的onClose方法
 pojoEndpointBase.onError=在错误发生后,没有为[{0}]配置错误处理
+pojoEndpointBase.onErrorFail=无法为类型为[{0}]的POJO调用POJO端点的onError方法
 pojoEndpointBase.onOpenFail=无法为类型为[{0}]的POJO调用POJO端点的onOpen方法
 
 pojoEndpointServer.getPojoInstanceFail=创建类型为 [{0}] 的 POJO 实例失败
 
 pojoMessageHandlerWhole.decodeIoFail=解码消息时出现IO错误
+pojoMessageHandlerWhole.maxBufferSize=此实现支持的最大消息大小为Integer.MAX_VALUE
 
+pojoMethodMapping.decodePathParamFail=未能将路径参数值[{0}]解码为预期的类型[{1}]
 pojoMethodMapping.duplicateAnnotation=类[{1}]上存在的重复注释[{0}]
 pojoMethodMapping.duplicateLastParam=用OnMessage注释的类[{1}]的方法[{0}]上存在多个布尔参数(最后的)
+pojoMethodMapping.duplicateMessageParam=类[{1}]的方法[{0}]上存在多个消息参数,该方法已用OnMessage进行了注释。
 pojoMethodMapping.duplicatePongMessageParam=使用OnMessage注释的类[{1}]的方法[{0}]上存在多个PongMessage参数
+pojoMethodMapping.duplicateSessionParam=类[{1}]的方法[{0}]上存在多个会话参数,该方法使用OnMessage进行了注释
 pojoMethodMapping.invalidDecoder=这个特定类型的解码器[{0}]无法被实例化
 pojoMethodMapping.methodNotPublic=注解方法[{0}]不为公共方法
 pojoMethodMapping.noDecoder=在用onMessage注释的类[{1}]的方法[{0}]上找不到消息参数的解码器。
+pojoMethodMapping.noPayload=用OnMessage注释的类{1}的方法{0}上不存在有效负载参数
 pojoMethodMapping.onErrorNoThrowable=):类[{1}]的方法[{0}]上不存在用OnError注释的抛出参数
 pojoMethodMapping.paramWithoutAnnotation=在类[{2}]的方法[{1}]上找到了类型为[{0}]的参数,该方法没有@PathParam 注释
+pojoMethodMapping.partialInputStream=类[{1}]的方法[{0}]中存在无效的InputStream和boolean参数,该方法使用OnMessage进行了批注
 pojoMethodMapping.partialObject=用onMessage注释的类[{1}]的方法[{0}]中存在无效的对象和布尔参数
+pojoMethodMapping.partialPong=用OnMessage注释的类[{1}]的方法[{0}]上存在无效的PongMessage和布尔参数
+pojoMethodMapping.partialReader=用OnMessage注释的类[{1}]的方法[{0}]中存在无效的读取器和布尔参数
 pojoMethodMapping.pongWithPayload=类[{1}]的方法[{0}]中存在无效的PongMessage 和消息参数,该方法是用onMessage注释的
 
 pojoPathParam.wrongType=不允许将类型[{0}]作为路径参数。用@PathParam注释的参数只能是字符串、Java原语或盒装版本。
diff --git a/java/org/apache/tomcat/websocket/server/LocalStrings_zh_CN.properties b/java/org/apache/tomcat/websocket/server/LocalStrings_zh_CN.properties
index e67db5f..44a3589 100644
--- a/java/org/apache/tomcat/websocket/server/LocalStrings_zh_CN.properties
+++ b/java/org/apache/tomcat/websocket/server/LocalStrings_zh_CN.properties
@@ -13,19 +13,25 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+serverContainer.addNotAllowed=一旦尝试使用以前注册的终结点之一,就不能再注册其他终结点
 serverContainer.configuratorFail=无法为[{1}]类型的POJO创建类型[{0}]的配置程序
 serverContainer.duplicatePaths=多个端点可能不能发不到同一个路径[{0}]:已经存在的端点[{1}]和新的端点[{2}]
 serverContainer.encoderFail=无法创建[{0}]类型的编码器
 serverContainer.failedDeployment=由于以前的部署失败,不允许将WebSocket终结点部署到主机[{1}]中路径为[{0}]的Web应用程序
+serverContainer.missingAnnotation=无法部署POJO类[{0}],因为它没有用@ServerEndpoint进行注释
 serverContainer.servletContextMissing=没有指定ServletContext
 
 upgradeUtil.incompatibleRsv=指定扩展名具有不兼容的RSV位使用
 
+uriTemplate.duplicateParameter=参数[{0}]在不允许的路径中出现多次
+uriTemplate.emptySegment=路径[{0}]包含一个或多个不允许的空段
 uriTemplate.invalidPath=路径 [{0}] 无效。
+uriTemplate.invalidSegment=段[{0}]在提供的路径[{1}]中无效
 
 wsFrameServer.bytesRead=将[{0}]个字节读入输入缓冲区,准备进行处理
 wsFrameServer.onDataAvailable=进入方法
 
+wsHttpUpgradeHandler.destroyFailed=销毁WebSocket HttpUpgradeHandler时无法关闭WebConnection
 wsHttpUpgradeHandler.noPreInit=在容器调用init()之前,必须调用preinit()方法来配置WebSocket HttpUpgradeHandler。通常,这意味着创建WsHttpUpgradeHandler 实例的servlet也应该调用preinit()
 
 wsRemoteEndpointServer.closeFailed=无法完全关闭ServletOutputStream 连接
diff --git a/webapps/examples/WEB-INF/classes/LocalStrings_zh_CN.properties b/webapps/examples/WEB-INF/classes/LocalStrings_zh_CN.properties
index a7e0c93..fa9f447 100644
--- a/webapps/examples/WEB-INF/classes/LocalStrings_zh_CN.properties
+++ b/webapps/examples/WEB-INF/classes/LocalStrings_zh_CN.properties
@@ -19,6 +19,7 @@ cookies.name=名.称:
 cookies.no-cookies=你的浏览器未发送任何cookie
 cookies.set=你刚刚将以下cookie发送到你的浏览器:
 cookies.title=cookie示例
+cookies.value=值:
 
 helloworld.title=你好,世界.
 
@@ -32,12 +33,14 @@ requestinfo.label.requesturi=请求 URI (:
 requestinfo.title=请求信息范例
 
 requestparams.firstname=姓:
+requestparams.lastname=姓氏:
 requestparams.no-params=没有参数,请输入一些
 requestparams.params-in-req=参数在请求中.
 requestparams.title=请求参数示例
 
 sessions.adddata=将数据添加到你的会话中
 sessions.created=已创建的:
+sessions.data=以下数据在您的会话中:
 sessions.dataname=会话属性名:
 sessions.datavalue=会话属性值:
 sessions.id=会话ID:


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[tomcat] 03/06: Back-port updates to French translations

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit 85e500ccd83495d20224f1db553049ab60cc8b47
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Mon May 4 17:52:40 2020 +0100

    Back-port updates to French translations
---
 .../org/apache/catalina/connector/LocalStrings_fr.properties |  1 +
 java/org/apache/jasper/resources/LocalStrings_fr.properties  | 12 ++++--------
 java/org/apache/naming/LocalStrings_fr.properties            |  2 +-
 java/org/apache/tomcat/util/buf/LocalStrings_fr.properties   |  2 ++
 4 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/java/org/apache/catalina/connector/LocalStrings_fr.properties b/java/org/apache/catalina/connector/LocalStrings_fr.properties
index ee2310b..3d5ba85 100644
--- a/java/org/apache/catalina/connector/LocalStrings_fr.properties
+++ b/java/org/apache/catalina/connector/LocalStrings_fr.properties
@@ -25,6 +25,7 @@ coyoteAdapter.parsePathParam=Impossible de parser les paramètres du chemin en u
 
 coyoteConnector.cannotRegisterProtocol=Impossible d''enregistrer le MBean pour le Protocol
 coyoteConnector.invalidPort=Le connecteur ne peut pas démarrer, parce que la valeur spécifiée du port [{0}] n''est pas valide
+coyoteConnector.notAsciiSuperset=L''encodage [{0}] n''inclut pas l''ASCII comme requis par la RFC 7230, le connecteur va continuer à utiliser [{1}]
 coyoteConnector.parseBodyMethodNoTrace=La méthode "TRACE" NE PEUT PAS contenir une entité (voir RFC 2616 Section 9.6)
 coyoteConnector.protocolHandlerDestroyFailed=La destruction du gestionnaire de protocole a échoué
 coyoteConnector.protocolHandlerInitializationFailed=L'initialisation du gestionnaire de protocole a échoué
diff --git a/java/org/apache/jasper/resources/LocalStrings_fr.properties b/java/org/apache/jasper/resources/LocalStrings_fr.properties
index bb8681a..e59d0da 100644
--- a/java/org/apache/jasper/resources/LocalStrings_fr.properties
+++ b/java/org/apache/jasper/resources/LocalStrings_fr.properties
@@ -315,8 +315,7 @@ et où les options sont:\n\
 \    -target <version>     Fixe l'argument -target pour le compilateur (par défaut 1.6)\n\
 \    -threadCount <count>  Nombre de threads à utiliser pour la compilation\n\
 \                          ("2.0C" veut dire deux threads par cœur)\n
-jspc.webfrg.footer=\n\
-</web-fragment>\n\
+jspc.webfrg.footer=</web-fragment>\n\
 \n
 jspc.webfrg.header=<?xml version="1.0" encoding="{0}"?>\n\
 <web-fragment xmlns="http://java.sun.com/xml/ns/javaee"\n\
@@ -331,20 +330,17 @@ jspc.webfrg.header=<?xml version="1.0" encoding="{0}"?>\n\
 Crée automatiquement par JspC de Apache Tomcat.\n\
 -->\n\
 \n
-jspc.webinc.footer=\n\
-<!--\n\
+jspc.webinc.footer=<!--\n\
 Fin du contenu généré automatiquement par JspC de Apache Tomcat.\n\
 -->\n\
 \n
-jspc.webinc.header=\n\
-<!--\n\
+jspc.webinc.header=<!--\n\
 Créé automatiquement par JspC de Apache Tomcat.\n\
 -->\n\
 \n
 jspc.webinc.insertEnd=<!-- Fin des mappings des Servlets JSPC -->
 jspc.webinc.insertStart=<!-- Début des mappings des Servlets JSPC -->
-jspc.webxml.footer=\n\
-</web-app>\n\
+jspc.webxml.footer=</web-app>\n\
 \n
 jspc.webxml.header=<?xml version="1.0" encoding="{0}"?>\n\
 <web-app xmlns="http://java.sun.com/xml/ns/javaee"\n\
diff --git a/java/org/apache/naming/LocalStrings_fr.properties b/java/org/apache/naming/LocalStrings_fr.properties
index 33dd57d..eb297c8 100644
--- a/java/org/apache/naming/LocalStrings_fr.properties
+++ b/java/org/apache/naming/LocalStrings_fr.properties
@@ -27,4 +27,4 @@ namingContext.readOnly=Le Contexte est en lecture seule
 
 selectorContext.methodUsingName=Appel de la méthode [{0}] avec le nom [{1}]
 selectorContext.methodUsingString=Appel de la méthode [{0}] avec la String [{1}]
-selectorContext.noJavaUrl=Ce Contexte doit être accédé par une URL commençant par 'java:'
+selectorContext.noJavaUrl=Ce Contexte doit être accédé par une URL commençant par 'java :'
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings_fr.properties b/java/org/apache/tomcat/util/buf/LocalStrings_fr.properties
index 5abe4ec..f68a451 100644
--- a/java/org/apache/tomcat/util/buf/LocalStrings_fr.properties
+++ b/java/org/apache/tomcat/util/buf/LocalStrings_fr.properties
@@ -15,6 +15,8 @@
 
 b2cConverter.unknownEncoding=L''encodage de caractères [{0}] n''est pas supporté
 
+encodedSolidusHandling.invalid=La valeur [{0}] n''est pas reconnue
+
 uDecoder.convertHexDigit.notHex=[{0}] n''est pas un chiffre hexadécimal
 uDecoder.eof=Fin de fichier (EOF)
 uDecoder.noSlash=Un caractère slash encodé n'est pas autorisé


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org