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

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

commit d0b994717449d2d64b3c7ae37d1e3d8b546d4c98
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu Aug 15 14:33:02 2019 +0100

    Add German translations to the standard Tomcat distribution
    
    Includes back-port of updates and additions from 9.0.x
---
 build.xml                                          | 10 +++
 java/javax/el/LocalStrings_de.properties           | 22 +++++++
 java/javax/servlet/LocalStrings_de.properties      | 20 ++++++
 java/javax/servlet/http/LocalStrings_de.properties | 16 +++++
 .../authenticator/LocalStrings_de.properties       | 23 +++++++
 .../jaspic/LocalStrings_de.properties              | 18 +++++
 .../catalina/connector/LocalStrings_de.properties  | 27 ++++++++
 .../catalina/core/LocalStrings_de.properties       | 59 +++++++++++++++++
 .../catalina/deploy/LocalStrings_de.properties     | 17 +++++
 .../catalina/filters/LocalStrings_de.properties    | 32 +++++++++
 .../ha/authenticator/LocalStrings_de.properties    | 16 +++++
 .../catalina/ha/deploy/LocalStrings_de.properties  | 23 +++++++
 .../catalina/ha/session/LocalStrings_de.properties | 26 ++++++++
 .../catalina/ha/tcp/LocalStrings_de.properties     | 20 ++++++
 .../catalina/loader/LocalStrings_de.properties     | 19 ++++++
 .../catalina/manager/LocalStrings_de.properties    | 19 +++++-
 .../manager/host/LocalStrings_de.properties        | 36 ++++++++++
 .../catalina/mapper/LocalStrings_de.properties     | 19 ++++++
 .../catalina/realm/LocalStrings_de.properties      | 52 +++++++++++++++
 .../catalina/security/LocalStrings_de.properties   | 16 +++++
 .../catalina/servlets/LocalStrings_de.properties   | 20 ++++++
 .../catalina/session/LocalStrings_de.properties    | 31 +++++++++
 .../catalina/startup/LocalStrings_de.properties    | 47 +++++++++++++
 .../group/interceptors/LocalStrings_de.properties  | 32 +++++++++
 .../catalina/tribes/io/LocalStrings_de.properties  | 20 ++++++
 .../tribes/membership/LocalStrings_de.properties   | 24 +++++++
 .../tribes/tipis/LocalStrings_de.properties        | 20 ++++++
 .../tribes/transport/LocalStrings_de.properties    | 16 +++++
 .../transport/bio/LocalStrings_de.properties       | 18 +++++
 .../transport/nio/LocalStrings_de.properties       | 24 +++++++
 .../tribes/util/LocalStrings_de.properties         | 16 +++++
 .../catalina/users/LocalStrings_de.properties      | 16 +++++
 .../catalina/util/LocalStrings_de.properties       | 29 ++++++++
 .../catalina/valves/LocalStrings_de.properties     | 47 +++++++++++++
 .../webresources/LocalStrings_de.properties        | 16 +++++
 java/org/apache/coyote/LocalStrings_de.properties  | 27 ++++++++
 .../apache/coyote/ajp/LocalStrings_de.properties   | 18 +++++
 .../coyote/http11/LocalStrings_de.properties       | 23 +++++++
 .../http11/filters/LocalStrings_de.properties      | 18 +++++
 .../http11/upgrade/LocalStrings_de.properties      | 18 +++++
 .../apache/coyote/http2/LocalStrings_de.properties | 42 ++++++++++++
 .../jasper/resources/LocalStrings_de.properties    | 77 ++++++++++++++++++++++
 java/org/apache/naming/LocalStrings_de.properties  | 20 ++++++
 .../factory/webservices/LocalStrings_de.properties | 16 +++++
 .../tomcat/dbcp/dbcp2/LocalStrings_de.properties   | 16 +++++
 .../apache/tomcat/util/LocalStrings_de.properties  | 18 +++++
 .../tomcat/util/buf/LocalStrings_de.properties     | 16 +++++
 .../tomcat/util/compat/LocalStrings_de.properties  | 16 +++++
 .../util/descriptor/web/LocalStrings_de.properties | 20 ++++++
 .../util/digester/LocalStrings_de.properties       | 16 +++++
 .../tomcat/util/http/LocalStrings_de.properties    | 24 +++++++
 .../util/http/parser/LocalStrings_de.properties    | 22 +++++++
 .../tomcat/util/net/LocalStrings_de.properties     | 48 ++++++++++++++
 .../util/net/jsse/LocalStrings_de.properties       | 25 +++++++
 .../util/net/openssl/LocalStrings_de.properties    | 36 ++++++++++
 .../tomcat/util/scan/LocalStrings_de.properties    | 16 +++++
 .../tomcat/websocket/LocalStrings_de.properties    | 36 ++++++++++
 .../websocket/pojo/LocalStrings_de.properties      | 22 +++++++
 .../websocket/server/LocalStrings_de.properties    | 22 +++++++
 res/maven/mvn-pub.xml                              |  1 +
 res/maven/tomcat-i18n-de.pom                       | 35 ++++++++++
 webapps/docs/changelog.xml                         |  5 ++
 .../WEB-INF/classes/LocalStrings_de.properties     | 28 ++++++++
 63 files changed, 1544 insertions(+), 3 deletions(-)

diff --git a/build.xml b/build.xml
index 64c06b5..70e6d84 100644
--- a/build.xml
+++ b/build.xml
@@ -849,6 +849,16 @@
       filesId="files.tomcat-dbcp" />
 
     <!-- i18n JARs -->
+    <jar jarfile="${tomcat.build}/lib/tomcat-i18n-de.jar"
+      manifest="${tomcat.manifests}/default.manifest">
+      <fileset dir="${tomcat.classes}">
+        <include name="**/LocalStrings_de.properties" />
+      </fileset>
+      <zipfileset file="${tomcat.manifests}/default.notice"
+        fullpath="META-INF/NOTICE" />
+      <zipfileset file="${tomcat.manifests}/default.license"
+        fullpath="META-INF/LICENSE" />
+    </jar>
     <jar jarfile="${tomcat.build}/lib/tomcat-i18n-es.jar"
       manifest="${tomcat.manifests}/default.manifest">
       <fileset dir="${tomcat.classes}">
diff --git a/java/javax/el/LocalStrings_de.properties 
b/java/javax/el/LocalStrings_de.properties
new file mode 100644
index 0000000..0147116
--- /dev/null
+++ b/java/javax/el/LocalStrings_de.properties
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+elProcessor.defineFunctionInvalidClass=Die Klasse [{0}] ist nicht öffentlich
+elProcessor.defineFunctionInvalidMethod=Die Methode [{0}] der Klasse [{1}] ist 
nicht public static
+
+expressionFactory.cannotFind=Kann die ExpressionFactory mit dem Typ ''[{0}]'' 
nicht finden
+
+importHandler.classNotFound=Die Klasse [{0}] konnte nicht importiert werden, 
da sie nicht gefunden werden konnte
+importHandler.invalidClassNameForStatic=Ungültige Klasse [{0}] für angegebenen 
static import [{1}]
diff --git a/java/javax/servlet/LocalStrings_de.properties 
b/java/javax/servlet/LocalStrings_de.properties
new file mode 100644
index 0000000..e91efd3
--- /dev/null
+++ b/java/javax/servlet/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+err.not_iso8859_1=Kein ISO 8859-1 Zeichen: [{0}]
+
+httpMethodConstraintElement.invalidMethod=Ungültige HTTP-Methode
+
+value.true=wahr
diff --git a/java/javax/servlet/http/LocalStrings_de.properties 
b/java/javax/servlet/http/LocalStrings_de.properties
new file mode 100644
index 0000000..d96d13a
--- /dev/null
+++ b/java/javax/servlet/http/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+http.method_not_implemented=Methode [{0}] ist von diesem Servlet für diese URI 
nicht implementiert
diff --git a/java/org/apache/catalina/authenticator/LocalStrings_de.properties 
b/java/org/apache/catalina/authenticator/LocalStrings_de.properties
new file mode 100644
index 0000000..e5cdbcf
--- /dev/null
+++ b/java/org/apache/catalina/authenticator/LocalStrings_de.properties
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+authenticator.certificates=Keine Client Zertifikatskette im Request
+authenticator.check.found=Bereits authentifiziert [{0}]
+authenticator.jaspicCleanSubjectFail=Konnte JASPIC Subject nicht leeren.
+authenticator.jaspicServerAuthContextFail=Kontte keine JASPIC 
ServerAuthContext Instanz erhalten
+
+singleSignOn.debug.cookieCheck=SSO prüfe nach SSO Cookie
+singleSignOn.debug.principalFound=SSO fand Principal [{0}] mut Authentication 
Typ [{1}] im Cache
+singleSignOn.sessionExpire.hostNotFound=SSO kann Session [{0}] nicht ablaufen 
lassen, da der Host nicht gefunden werden konnte
diff --git 
a/java/org/apache/catalina/authenticator/jaspic/LocalStrings_de.properties 
b/java/org/apache/catalina/authenticator/jaspic/LocalStrings_de.properties
new file mode 100644
index 0000000..5f4657e
--- /dev/null
+++ b/java/org/apache/catalina/authenticator/jaspic/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+authConfigFactoryImpl.zeroLengthAppContext=Ein leerer Name für einen 
Applikationskontext ist nicht erlaubt.
+
+persistentProviderRegistrations.existsDeleteFail=Die temporäre Datei [{0}] 
existiert bereits und kann nicht gelöscht werden
diff --git a/java/org/apache/catalina/connector/LocalStrings_de.properties 
b/java/org/apache/catalina/connector/LocalStrings_de.properties
new file mode 100644
index 0000000..d1826ce
--- /dev/null
+++ b/java/org/apache/catalina/connector/LocalStrings_de.properties
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+coyoteAdapter.checkRecycled.response=Eine nicht recycelte Antwort wurde 
erkannt und recylet
+coyoteAdapter.debug=Die Variable [{0}] hat den Wert [{1}]
+coyoteAdapter.parsePathParam=Das Parsen der Pfadparameter ist schlug mit der 
Kodierung [{0}] fehl. Die Parameter im Pfad werden ignoriert
+
+coyoteConnector.invalidEncoding=Das Encoding [{0}] wird von der JRE nicht 
erkannt. Der Konnektor wird weiterhin [{1}] nutzen
+coyoteConnector.invalidPort=Der Konnektor kann nicht starten, da der als Port 
angegebene Wert [{0}] nicht gültig ist.
+coyoteConnector.protocolHandlerStartFailed=Der Start des Protokoll-Handlers 
ist fehlgeschlagen
+
+coyoteRequest.filterAsyncSupportUnknown=Es konnte nicht ermittelt werden ob 
einer der Filter asyncrone Bearbeitung nicht unterstützt
+coyoteRequest.gssLifetimeFail=Die verbleibende Lebenzeit für den Principal 
[{0}] konnte nicht ermittelt werden.
+
+responseFacade.nullResponse=Das Response Objekt ist wiederverwendet worden und 
nicht mehr mit der Facade verknüpft.
diff --git a/java/org/apache/catalina/core/LocalStrings_de.properties 
b/java/org/apache/catalina/core/LocalStrings_de.properties
new file mode 100644
index 0000000..0c5aecd
--- /dev/null
+++ b/java/org/apache/catalina/core/LocalStrings_de.properties
@@ -0,0 +1,59 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+applicationContext.addJspFile.iae=Die JSP Datei [{0}] ist nicht gültig.
+applicationContext.addListener.iae.cnfe=Eine Instanz vom Typ [{0}] konnte 
nicht erzeugt werden
+applicationContext.addListener.iae.wrongType=Der spezifierte Typ [{0}] ist 
keiner der erwarteten Typen für einen Listener
+applicationContext.addRole.ise=Es können keine Rollen zu dem Context [{0}] 
hinzugefügt werden, da er nicht initialisiert wurde
+applicationContext.invalidServletName=Kann Servlet-Definition nicht 
hinzunehmen, da der Servlet Name [{0}] ungültig ist.
+applicationContext.setAttribute.namenull=Der Name darf nicht 'null' sein.
+
+applicationFilterRegistration.nullInitParams=Kann Initialisierungs Parameter 
für Filter nicht setzen, da Name oder Wert null sind. Name [{0}], Wert [{0}]
+
+aprListener.initializingFIPS=FIPS-Modus wird initialisiert...
+
+containerBase.backgroundProcess.cluster=Ausnahme beim Abarbeiten des Cluster 
[{0}] Hintergrundprozesses
+containerBase.backgroundProcess.unexpectedThreadDeath=Unerwarteter Tod des 
Hintergrund-Threads [{0}]
+
+defaultInstanceManager.invalidInjection=Ungültige ressource injection 
Annotation
+
+filterChain.filter=Während der Filter Bearbeitung trat eine Exception auf
+
+jreLeakListener.ldapPoolManagerFail=Konnte die Erzeugung der Klasse 
com.sun.jndi.ldap.LdapPoolManager während des Starts von Tomcat nicht auslösen. 
Dies sollte zur Vermeidung von Memory-Leaks dienen. Der Fehlschlag ist ein 
erwartetes Verhalten bei nicht-Sun JVMs.
+
+naming.addEnvEntry=Füge Umgebungseintrag [{0}] hinzu
+naming.namingContextCreationFailed=Erzeugung des Naming-Contexts ist 
fehlgeschlagen: [{0}]
+naming.wsdlFailed=Die WSDL Datei [{0}] wurde nicht gefunden.
+
+standardContext.filterStart=Ausnahme beim Starten des Filters [{0}]
+standardContext.invalidWrapperClass=[{0}] ist keine Unterklasse von 
StandardWrapper
+standardContext.isUnavailable=Die Anwendung ist derzeit nicht verfügbar
+standardContext.listenerStart=Fehler beim Senden der ''Context Initialized'' 
Benachrichtigung an den Listener aus der Klasse [{0}]
+standardContext.loginConfig.errorPage=Formularfehlerseite [{0}] muss mit einem 
''/'' beginnen
+standardContext.loginConfig.errorWarning=WARNING: Form Fehler Seite [{0}] muss 
bei Servlet 2.4 mit einem ''/'' starten
+standardContext.manager=Habe einen Manager der Klasse [{0}] konfiguriert
+standardContext.notStarted=Context mit Name [{0}] wurde noch nicht gestartet
+standardContext.parameter.duplicate=Doppelter Parameter [{0}] zur Kontext 
Initialisierung
+standardContext.securityConstraint.mixHttpMethod=<http-method> und 
<http-method-ommission> dürfen nicht in derselben Web-Ressource-Kollektion 
verwendet werden
+standardContext.securityConstraint.pattern=Ungültiges <url-pattern> [{0}] im 
Security Constraint
+standardContext.startingContext=Ausnahme beim Starten des Kontextes [{0}]
+
+standardEngine.notParent=Engine kann keinen Eltern-Container haben
+
+standardHost.nullName=Hostname wird benötigt
+
+standardWrapper.isUnavailable=Das Servlet [{0}] ist zur Zeit nicht verfügbar
+standardWrapper.notFound=Servlet [{0}] ist nicht verfügbar
+standardWrapper.unloading=Das Servlet [{0}] kann nicht allokiert werden, weil 
es entladen wurde
diff --git a/java/org/apache/catalina/deploy/LocalStrings_de.properties 
b/java/org/apache/catalina/deploy/LocalStrings_de.properties
new file mode 100644
index 0000000..935232c
--- /dev/null
+++ b/java/org/apache/catalina/deploy/LocalStrings_de.properties
@@ -0,0 +1,17 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+namingResources.cleanupCloseSecurity=Kann Methode [{0}] für Ressource [{1}] in 
Container [{2}] nicht laden. Daher wird diese Ressource nicht aufgeräumt.
+namingResources.ejbLookupLink=Die EJB Referenz [{0}] spezifiziert beides, 
einen ejb-link und einen lookup-name
diff --git a/java/org/apache/catalina/filters/LocalStrings_de.properties 
b/java/org/apache/catalina/filters/LocalStrings_de.properties
new file mode 100644
index 0000000..f0b132b
--- /dev/null
+++ b/java/org/apache/catalina/filters/LocalStrings_de.properties
@@ -0,0 +1,32 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+corsFilter.invalidPreflightMaxAge=preflightMaxAge konnte nicht geparst werden.
+corsFilter.nullRequestType=CORSRequestType Objekt ist null
+
+csrfPrevention.invalidRandomClass=Kann keine Zufallsquelle mithilfe der Klasse 
[{0}] generieren
+
+expiresFilter.noExpirationConfigured=Request [{0}] mit Response Status [{1}] 
und Content-Type [{2}], es wurde keine Gültigkeitsdauer konfiguriert
+expiresFilter.noExpirationConfiguredForContentType=Keine Konfiguration für 
Expire von Content-Type [{0}] gefunden
+expiresFilter.numberError=Ausnahme beim Parsen einer Zahl an Position [{0}] 
(mit Null beginnend) in Komma-separierter Liste [{1}]
+expiresFilter.unsupportedStartingPoint=Nicht unterstützter Startpunkt [{0}]
+
+http.403=Zugriff auf die angeforderte Resource [{0}] wurde verboten.
+
+httpHeaderSecurityFilter.clickjack.invalid=Es wurde ein ungültiger Wert [{0}] 
für den Anti-Click-Jacking Header angegeben
+
+remoteCidrFilter.noRemoteIp=Client verfügt über keine IP Adresse. Zugriff 
verweigert.
+
+requestFilter.deny=Anfrage für  [{0}] abgelehnt wegen Eigenschaft  [{1}]
diff --git 
a/java/org/apache/catalina/ha/authenticator/LocalStrings_de.properties 
b/java/org/apache/catalina/ha/authenticator/LocalStrings_de.properties
new file mode 100644
index 0000000..482dc1e
--- /dev/null
+++ b/java/org/apache/catalina/ha/authenticator/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+clusterSingleSignOn.clusterLoad.fail=ClusterSingleSignOn Fehler bei clusterLoad
diff --git a/java/org/apache/catalina/ha/deploy/LocalStrings_de.properties 
b/java/org/apache/catalina/ha/deploy/LocalStrings_de.properties
new file mode 100644
index 0000000..362b1a1
--- /dev/null
+++ b/java/org/apache/catalina/ha/deploy/LocalStrings_de.properties
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+farmWarDeployer.modInstall=Installiere Webapplikation [{0}] von [{1}]
+farmWarDeployer.modInstallFail=WAR-Datei konnte nicht installiert werden
+farmWarDeployer.msgIoe=Die Farm-Deploy-Datei-Nachricht kann nicht gelesen 
werden.
+farmWarDeployer.servicingUndeploy=Applikation [{0}] ist noch aktiv und kann 
nicht vom Backup-Cluster-Knoten entfernt werden
+farmWarDeployer.undeployEnd=Undeployment von [{0}] beendet.
+
+warWatcher.cantListWatchDir=Dateien in WatchDir [{0}] können nicht gelistet 
werdenm: Prüfen Sie dass Lesezugriff auf das Verzeichnis besteht
+warWatcher.checkingWar=WAR-Datei [{0}] wird geprüft.
diff --git a/java/org/apache/catalina/ha/session/LocalStrings_de.properties 
b/java/org/apache/catalina/ha/session/LocalStrings_de.properties
new file mode 100644
index 0000000..1b93cc2
--- /dev/null
+++ b/java/org/apache/catalina/ha/session/LocalStrings_de.properties
@@ -0,0 +1,26 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+deltaManager.foundMasterMember=Für den Kontext [{0}] wurde der 
Replikationsmaster [{1}] gefunden
+deltaManager.noContextManager=Manager [{0}]: Als Antwort auf eine um [{1}] 
gesendete  "Hole alle Sitzungsdaten"-Nachricht, wurde nach [{2}] ms eine "Kein 
passender Context-Manager"-Nachricht empfangen.
+deltaManager.receiveMessage.allSessionDataBegin=Manager [{0}]: alle 
Sitzungsdaten empfangen
+deltaManager.receiveMessage.delta.unknown=Manager [{0}]: Habe Session-Delta 
für unbekannte Session [{1}] empfangen
+deltaManager.receiveMessage.unloadingBegin=Manager [{0}]: Beginne die Sessions 
zu entladen
+deltaManager.unloading.ioe=IOExceptio während des Speichers der Persisted 
Sessions: [{0}]
+
+deltaRequest.removeUnable=Kann Element nicht entfernen:
+deltaRequest.wrongPrincipalClass=Der ClusterManager unterstützt nur 
GenericPrincipal. Ihr Realm benutzt die Principal Klasse [{0}].
+
+jvmRoute.valve.started=JvmRouteBinderValve gestartet
diff --git a/java/org/apache/catalina/ha/tcp/LocalStrings_de.properties 
b/java/org/apache/catalina/ha/tcp/LocalStrings_de.properties
new file mode 100644
index 0000000..ca8a9bb
--- /dev/null
+++ b/java/org/apache/catalina/ha/tcp/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ReplicationValve.filter.failure=Kann Filter [{0}] nicht kompilieren
+ReplicationValve.session.indicator=Context [{0}]: Primärität der Session [{1}] 
in Request Attribut [{2}] ist [{3}].
+
+simpleTcpCluster.clustermanager.notImplement=Manager [{0}] implementiert nicht 
ClusterManager. Das Hinzufügen dieses Managers zum Cluster wurde daher 
abgebrochen.
+simpleTcpCluster.stopUnable=Cluster kann nicht gestoppt werden.
diff --git a/java/org/apache/catalina/loader/LocalStrings_de.properties 
b/java/org/apache/catalina/loader/LocalStrings_de.properties
new file mode 100644
index 0000000..ef2aa92
--- /dev/null
+++ b/java/org/apache/catalina/loader/LocalStrings_de.properties
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+webappClassLoader.checkThreadLocalsForLeaks.unknown=Unbekannt
+webappClassLoader.readError=Fehler beim Lesen einer Ressource: Konnte [{0}] 
nicht laden
+webappClassLoader.superCloseFail=Fehler beim Aufruf von close() auf der 
Super-Klasse
+webappClassLoader.validationErrorJarPath=Kann JAR-Eintrag mit Namen [{0}] 
nicht validieren
diff --git a/java/org/apache/catalina/manager/LocalStrings_de.properties 
b/java/org/apache/catalina/manager/LocalStrings_de.properties
index 20eca2b..21eb39d 100644
--- a/java/org/apache/catalina/manager/LocalStrings_de.properties
+++ b/java/org/apache/catalina/manager/LocalStrings_de.properties
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-htmlManagerServlet.appsAvailable=Verfügbar
+htmlManagerServlet.appsAvailable=gestartet
 htmlManagerServlet.appsExpire=Lösche Sitzungen
 htmlManagerServlet.appsName=Anzeigename
 htmlManagerServlet.appsPath=Kontext Pfad
@@ -24,6 +24,9 @@ htmlManagerServlet.appsStop=Stop
 htmlManagerServlet.appsTasks=Kommandos
 htmlManagerServlet.appsTitle=Anwendungen
 htmlManagerServlet.appsUndeploy=Entfernen
+htmlManagerServlet.connectorStateProcessingTime=Verarbeitungszeit:
+htmlManagerServlet.connectorStateTableTitleRequest=Anfrage
+htmlManagerServlet.connectorStateTableTitleVHost=VHost
 htmlManagerServlet.deployButton=Installieren
 htmlManagerServlet.deployConfig=XML Konfigurationsdatei URL:
 htmlManagerServlet.deployPath=Kontext Pfad (optional):
@@ -36,15 +39,23 @@ htmlManagerServlet.deployUploadNoFile=FEHLER - Hochladen 
fehlgeschlagen, keine D
 htmlManagerServlet.deployUploadNotWar=FEHLER - Hochgeladene Datei [{0}] muss 
ein .war sein
 htmlManagerServlet.deployUploadWarExists=FEHLER - WAR Datei [{0}] existiert 
bereits auf Server
 htmlManagerServlet.deployWar=WAR oder Verzeichnis URL:
+htmlManagerServlet.diagnosticsSslConnectorCertsButton=Zertifikate
+htmlManagerServlet.diagnosticsSslConnectorCertsText=Liste die konfigurierten 
TLS Virtual Hosts und deren Zertifikats-Ketten.
+htmlManagerServlet.diagnosticsSslConnectorTrustedCertsButton=Vertrauenswürdige 
Zertifikate
 htmlManagerServlet.expire.explain=mit Inaktivität &ge;
 htmlManagerServlet.expire.unit=Minuten
 htmlManagerServlet.helpHtmlManager=Hilfeseite HTML Manager (englisch)
 htmlManagerServlet.helpHtmlManagerFile=../docs/html-manager-howto.html
 htmlManagerServlet.helpManager=Hilfeseite Manager (englisch)
 htmlManagerServlet.helpManagerFile=../docs/manager-howto.html
+htmlManagerServlet.jvmFreeMemory=Freier Speicher:
+htmlManagerServlet.jvmTableTitleMaximum=Maximum
+htmlManagerServlet.jvmTableTitleType=Typ
 htmlManagerServlet.list=Anwendungen auflisten
 htmlManagerServlet.manager=Manager
 htmlManagerServlet.messageLabel=Nachricht:
+htmlManagerServlet.noManager=-
+htmlManagerServlet.serverIPAddress=IP-Adresse
 htmlManagerServlet.serverJVMVendor=JVM Hersteller
 htmlManagerServlet.serverJVMVersion=JVM Version
 htmlManagerServlet.serverOSArch=OS Architektur
@@ -60,6 +71,7 @@ managerServlet.exception=FEHLER - Ausnahme aufgetreten [{0}]
 managerServlet.invalidPath=FEHLER - Ungültiger Kontext Pfad [{0}] angegeben
 managerServlet.listed=OK - Auflistung der Webanwendungen für virtuellen Server 
[{0}]
 managerServlet.listitem={0}:{1}:{2}:{3}
+managerServlet.mkdirFail=Fehler - Das Verzeichnis [{0}] konnte nicht erstellt 
werden.
 managerServlet.noCommand=FEHLER - Es wurde kein Kommando angegeben
 managerServlet.noContext=FEHLER - Es existiert kein Kontext für Pfad [{0}]
 managerServlet.noGlobal=FEHLER - Keine globalen JNDI Ressourcen verfügbar
@@ -71,12 +83,13 @@ managerServlet.resourcesType=OK - Auflistung globaler 
Ressourcen von Typ [{0}]
 managerServlet.saveFail=FEHLER - Speichern der Konfiguration fehlgeschlagen: 
[{0}]
 managerServlet.sessiondefaultmax=Voreingestellter Sitzungsablauf nach maximal 
[{0}] Minuten Inaktivität
 managerServlet.sessions=OK - Sitzungs-Informationen für Anwendung mit Kontext 
Pfad [{0}]
-managerServlet.sessiontimeout=[{0}] Minuten: [{1}] Sitzungen
-managerServlet.sessiontimeout.expired=[{0}] Minuten: expired [{1}] Sitzungen
+managerServlet.sessiontimeout=Inaktiv für [{0}] Minuten: [{1}] Sitzungen
+managerServlet.sessiontimeout.expired=Inaktiv für [{0}] Minuten: [{1}] 
Sitzungen sind abgelaufen
 managerServlet.sessiontimeout.unlimited=unlimited Minuten: [{0}] Sitzungen
 managerServlet.startFailed=FEHLER - Anwendung mit Kontext Pfad [{0}] konnte 
nicht gestartet werden
 managerServlet.started=OK - Anwendung mit Kontext Pfad [{0}] gestartet
 managerServlet.stopped=OK - Anwendung mit Kontext Pfad [{0}] gestoppt
+managerServlet.trustedCertsNotConfigured=Für diesen virtuellen Host wurden 
keine vertrauenswürdige Zertifikate konfiguriert
 managerServlet.undeployed=OK - Anwendung mit Kontext Pfad [{0}] entfernt
 managerServlet.unknownCommand=FEHLER - Unbekanntes Kommando [{0}]
 
diff --git a/java/org/apache/catalina/manager/host/LocalStrings_de.properties 
b/java/org/apache/catalina/manager/host/LocalStrings_de.properties
new file mode 100644
index 0000000..fbc87c3
--- /dev/null
+++ b/java/org/apache/catalina/manager/host/LocalStrings_de.properties
@@ -0,0 +1,36 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+hostManagerServlet.listed=OK - Hosts aufgelistet
+hostManagerServlet.managerXml=FAIL - Konnte manager.xml nicht installieren
+hostManagerServlet.start=start: Starte Host mit Name [{0}]
+hostManagerServlet.stopFailed=FEHLER - der Host [{0}] konnte nicht gestoppt 
werden
+
+htmlHostManagerServlet.addAutoDeploy=AutoDeploy
+htmlHostManagerServlet.addDeployOnStartup=DeployOnStartup
+htmlHostManagerServlet.addHost=Host
+htmlHostManagerServlet.addManager=Manager-Anwendung
+htmlHostManagerServlet.addTitle=Füge virtuellen Host hinzu
+htmlHostManagerServlet.helpHtmlManager=HTML Host-Manager-Hilfe
+htmlHostManagerServlet.helpHtmlManagerFile=../docs/html-host-manager-howto.html
+htmlHostManagerServlet.helpManager=Host-Manager-Hilfe
+htmlHostManagerServlet.hostName=Hostname
+htmlHostManagerServlet.hostTasks=Kommandos
+htmlHostManagerServlet.hostsRemove=Entferne
+htmlHostManagerServlet.hostsStart=Start
+htmlHostManagerServlet.hostsStop=Stopp
+htmlHostManagerServlet.manager=Host-Manager
+htmlHostManagerServlet.messageLabel=Nachricht:
+htmlHostManagerServlet.serverOSArch=Betriebssystemarchitektur
diff --git a/java/org/apache/catalina/mapper/LocalStrings_de.properties 
b/java/org/apache/catalina/mapper/LocalStrings_de.properties
new file mode 100644
index 0000000..4bf02a4
--- /dev/null
+++ b/java/org/apache/catalina/mapper/LocalStrings_de.properties
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+mapper.addHostAlias.success=Alias [{0}] für Host [{1}] registriert
+
+mapperListener.pauseContext=Registriere Context [{0}] als neu geladen für 
Service [{1}]
+mapperListener.registerWrapper=Registriere Wrapper [{0}] im Context [{1}] für 
Service [{2}]
diff --git a/java/org/apache/catalina/realm/LocalStrings_de.properties 
b/java/org/apache/catalina/realm/LocalStrings_de.properties
new file mode 100644
index 0000000..938b795
--- /dev/null
+++ b/java/org/apache/catalina/realm/LocalStrings_de.properties
@@ -0,0 +1,52 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+combinedRealm.authFail=Kann Benutzer [{0}] mit Realm [{1}] nicht authentisieren
+combinedRealm.authSuccess=Authentifizierter Benutzer [{0}] mit Realm [{1}]
+
+dataSourceRealm.authenticateFailure=Benutzername [{0}] konnte NICHT 
authentifiziert werden
+dataSourceRealm.authenticateSuccess=Benutzername [{0}] konnte erfolgreich 
authentifiziert werden
+dataSourceRealm.getPassword.exception=Ausnahme beim Holen des Passwortes für 
[{0}]
+dataSourceRealm.getRoles.exception=Ausnahme beim Holen der Rollen für [{0}]
+
+jaasRealm.accountExpired=Benutzername [{0}] konnte auf Grund eines 
abgelaufenen Kontos NICHT authentifiziert werden
+jaasRealm.authenticateFailure=Benutzername [{0}] konnte NICHT authentifiziert 
werden
+jaasRealm.credentialExpired=Benutzername [{0}] konnte auf Grund abgelaufener 
Zugangsdaten NICHT authentifiziert werden
+jaasRealm.failedLogin=Benutzername [{0}] konnte auf Grund einer fehlerhaften 
Anmeldung NICHT authentifiziert werden
+jaasRealm.loginContextCreated=JAAS LoginContext für Benutzername [{0}] erzeugt
+
+jdbcRealm.authenticateFailure=Benutzername [{0}] konnte NICHT authentifiziert 
werden
+jdbcRealm.authenticateSuccess=Benutzername [{0}] konnte erfolgreich 
authentifiziert werden
+
+jndiRealm.authenticateFailure=Benutzername [{0}] konnte NICHT authentifiziert 
werden
+jndiRealm.authenticateSuccess=Benutzername [{0}] konnte erfolgreich 
authentifiziert werden
+
+lockOutRealm.authLockedUser=Es wurde versucht den gesperrten Benutzer [{0}] zu 
authentifizieren
+
+memoryRealm.authenticateFailure=Benutzername [{0}] konnte NICHT 
authentifiziert werden
+memoryRealm.authenticateSuccess=Benutzername [{0}] konnte erfolgreich 
authentifiziert werden.\n
+memoryRealm.loadExist=Datei [{0}] für Memory Database kann nicht gelesen werden
+
+realmBase.authenticateFailure=Benutzername [{0}] konnte NICHT authentifiziert 
werden
+realmBase.authenticateSuccess=Benutzername [{0}] konnte erfolgreich 
authentifiziert werden
+realmBase.createUsernameRetriever.ClassCastException=Klasse [{0}] ist keine 
X509UsernameRetriever Klasse.
+realmBase.credentialHandler.customCredentialHandler=Konnte die Property [{0}] 
nicht auf den Wert [{1}] setzen, da ein CredentialHandler konfiguriert wurde
+realmBase.digest=Fehler beim Anwenden des Digest auf die Benutzer-Credentials
+realmBase.forbidden=Zugriff auf die gewünschte Resource wurde verweigert.
+realmBase.gotX509Username=Benutzername aus dem X.509 Zertifikate extrahiert: 
[{0}]
+realmBase.hasRoleFailure=Benutzername [{0}] hat NICHT die Rolle [{1}]
+realmBase.hasRoleSuccess=Benutzername [{0}] hat die Rolle [{1}]
+
+userDatabaseRealm.noDatabase=Keine UserDatabase Komponente unter dem Schlüssel 
[{0}] gefunden
diff --git a/java/org/apache/catalina/security/LocalStrings_de.properties 
b/java/org/apache/catalina/security/LocalStrings_de.properties
new file mode 100644
index 0000000..9d394ce
--- /dev/null
+++ b/java/org/apache/catalina/security/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+SecurityListener.checkUmaskSkip=Kann die umask nicht ermitteln. Es scheint 
Tomcat läuft auf Windows. Überspringe den umask Test.
diff --git a/java/org/apache/catalina/servlets/LocalStrings_de.properties 
b/java/org/apache/catalina/servlets/LocalStrings_de.properties
new file mode 100644
index 0000000..90226e4
--- /dev/null
+++ b/java/org/apache/catalina/servlets/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cgiServlet.runInvalidStatus=Ungültiger Status [{0}]
+cgiServlet.runOutputStreamFail=I/O Probleme beim Schließen des Ausgabestroms
+cgiServlet.runReaderInterrupt=Das Warten auf den STDERR Lesethread wurde 
unterbrochen
+
+directory.filename=Dateiname
diff --git a/java/org/apache/catalina/session/LocalStrings_de.properties 
b/java/org/apache/catalina/session/LocalStrings_de.properties
new file mode 100644
index 0000000..822c5bd
--- /dev/null
+++ b/java/org/apache/catalina/session/LocalStrings_de.properties
@@ -0,0 +1,31 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+JDBCStore.missingDataSourceName=Kein gültiger JNDI Namen wurde übergeben.
+JDBCStore.saving=Speichere Session [{0}] in Datenbank [{1}]
+
+fileStore.deleteFailed=Kann Datei [{0}] nicht löschen. Das verhindert das 
Erzeugen des Ablageortes für die Session-Ablage
+
+managerBase.contextNull=Der Context muss auf einen nicht-null Wert gesetzt 
sein, bevor der Manager benutzt werden kann
+
+persistentManager.storeKeysException=Kann die Liste der Session IDs für die 
Sessions in der Session-Ablage nicht ermitteln, nehme an, dass die Ablage leer 
ist.
+persistentManager.storeSizeException=Konnte die Anzahl der Sessions im 
Session-Store nicht ermitteln, gehe davon aus, dass der Store leer ist.
+persistentManager.swapTooManyActive=Lagere Session [{0}] aus, Untätig seit 
[{1}] Sekunden und zu viele Sessions aktiv
+
+standardManager.loading.exception=Ausnahme beim Laden der persistierten 
Sitzungen
+standardManager.managerLoad=Ausnahme beim Laden der Sitzungen aus dem 
Persistenten Speicher
+standardManager.managerUnload=Fehler beim Entladen der Session zu persistenten 
Speicher
+
+standardSession.notSerializable=Kann Session Attribut [{0}] für Sitzung [{1}] 
nicht serialisieren
diff --git a/java/org/apache/catalina/startup/LocalStrings_de.properties 
b/java/org/apache/catalina/startup/LocalStrings_de.properties
new file mode 100644
index 0000000..a20d375
--- /dev/null
+++ b/java/org/apache/catalina/startup/LocalStrings_de.properties
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+catalina.serverStartFail=Tomcat kann nicht starten, da eine benötigte Server 
Komponente Startprobleme hat
+
+contextConfig.altDDNotFound=alt-dd Datei [{0}] konnte nicht gefunden werden
+contextConfig.applicationUrl=Kann die URL für web.xml der Applikation nicht 
ermitteln
+contextConfig.authenticatorConfigured=Es wurde ein Authenticator für Methode 
[{0}] konfiguriert
+contextConfig.contextMissing=Fehlende context.xml: [{0}]
+contextConfig.defaultMissing=Keine globale web.xml gefunden
+contextConfig.defaultPosition=Vorgekommen in Zeile [{0}] Spalte [{1}]
+contextConfig.inputStreamWebResource=Kann Annotationen für Web Ressource [{0}] 
nicht verarbeiten
+contextConfig.missingRealm=Es wurde kein Realm konfiguriert gegen den man sich 
authentifizieren kann
+contextConfig.processAnnotationsDir.debug=Durchsuche Verzeichnis nach Klassen 
mit Annotationen [{0}]
+
+engineConfig.start=EngineConfig: verarbeite START
+engineConfig.stop=EngineConfig: verarbeite STOP
+
+hostConfig.deployDir=Deploye Web-Applikations-Verzeichnis [{0}]
+hostConfig.deployWar.error=Fehler beim deployen des Web-Applikationsarchivs 
[{0}]
+hostConfig.docBaseUrlInvalid=Die angegebene docBase kann nicht als URL 
ausgedrückt werden
+hostConfig.jmx.unregister=Unregistrierter Kontext [{0}] fehlgeschlagen
+hostConfig.stop=HostConfig: Verarbeitung GESTOPPT
+
+userConfig.database=Fehler beim Laden der Benutzer Datenbank.
+userConfig.error=Fehler beim deployen einer Web-Applikation für den Benutzer 
[{0}]
+userConfig.start=UserConfig: Verarbeite START
+
+versionLoggerListener.catalina.base=\n\
+\ CATALINA_BASE:         {0}
+versionLoggerListener.catalina.home=CATALINA_HOME:         {0}
+versionLoggerListener.os.arch=Architektur:          {0}
+versionLoggerListener.serverInfo.server.version=\n\
+\ Server Version:        {0}
+versionLoggerListener.vm.vendor=JVM Hersteller:            {0}
diff --git 
a/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_de.properties
new file mode 100644
index 0000000..01a2c52
--- /dev/null
+++ 
b/java/org/apache/catalina/tribes/group/interceptors/LocalStrings_de.properties
@@ -0,0 +1,32 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+domainFilterInterceptor.member.refused=Mitglied [{0}] wurde nicht zum Cluster 
zugelassen
+
+encryptInterceptor.decrypt.error.short-message=Konnte die Nachricht nicht 
entschlüsseln: Vorzeitiges Ende der Nachricht
+encryptInterceptor.decrypt.failed=Nachricht konnte nicht entschlüsselt werden
+
+messageDispatchInterceptor.queue.full=Asynchrone Warteschlange ist voll. Das 
Limit von [{0}] Bytes ist erreicht mit aktuell [{1}] Bytes.
+
+nonBlockingCoordinator.processCoordinationMessage.failed=Fehler beim 
Verarbeiten der Koordinationsnachricht. Könnte Fatal sein.
+
+staticMembershipInterceptor.sendShutdown.failed=Benachrichtigung über den 
Shutdown schlug fehl.
+
+tcpFailureDetector.failureDetection.failed=Überprüng zur Fehlererkennung 
fehlgeschlagen, Mitglied [{0}]
+tcpFailureDetector.still.alive=Verifikation abgeschlossen. Member sind immer 
noch am Leben [{0}]
+
+tcpPingInterceptor.ping.failed=Konnte kein TCP Ping senden.
+
+twoPhaseCommitInterceptor.heartbeat.failed=Kann den Heartbeat auf dem 
TwoPhaseCommit Interceptor nicht durchführen.
diff --git a/java/org/apache/catalina/tribes/io/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/io/LocalStrings_de.properties
new file mode 100644
index 0000000..4074ab1
--- /dev/null
+++ b/java/org/apache/catalina/tribes/io/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+objectReader.retrieveFailed.socketReceiverBufferSize=Kann die Größe der Socket 
Puffer nicht auslesen. Setze sie auf den Standardwert von 43800 Bytes.
+
+xByteBuffer.no.package=In XByteBuffer existiert kein Paket
+xByteBuffer.unableCreate=Kann Daten Paket nicht erzeugen, da der Puffer zu 
klein ist
+xByteBuffer.wrong.class=Nachricht hat eine falsche Klasse. Sie sollte 
Serializable implementieren, sie implementiert aber: [{0}]
diff --git 
a/java/org/apache/catalina/tribes/membership/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/membership/LocalStrings_de.properties
new file mode 100644
index 0000000..373ecaa
--- /dev/null
+++ b/java/org/apache/catalina/tribes/membership/LocalStrings_de.properties
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+mcastServiceImpl.bind=Versuche Multicast Socket an [{0}:{1}] zu binden
+mcastServiceImpl.recovery.failed=Wiederherstellungsversuch Nummer [{0}] ist 
fehlgeschlagen, versuche es in [{1}] Sekunden erneut
+mcastServiceImpl.send.failed=Eine mcast-Nachricht kann nicht gesendet werden.
+mcastServiceImpl.send.running=McastService.send läuft bereits
+mcastServiceImpl.setSoTimeout=Setze Cluster mcast soTimeout auf [{0}]
+mcastServiceImpl.setTTL=Setze Cluster mcast TTL auf [{0}]
+mcastServiceImpl.unableReceive.broadcastMessage=Konnte Broadcast-Nachricht 
nicht empfangen.
+
+memberImpl.notEnough.bytes=Nicht genug bytes im Mitgliederpaket
diff --git a/java/org/apache/catalina/tribes/tipis/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/tipis/LocalStrings_de.properties
new file mode 100644
index 0000000..8e4325d
--- /dev/null
+++ b/java/org/apache/catalina/tribes/tipis/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+abstractReplicatedMap.broadcast.noReplies=Broadcast hat keine Antworten 
erhalten; Vermutlich eine Zeitüberschreitung
+abstractReplicatedMap.leftOver.ignored=Nachricht [{0}] wird ignoriert.
+
+replicatedMap.relocate.complete=Das Verschieben der Map Einträge ist fertig 
und hat [{0}] ms gedauert.
+replicatedMap.unable.relocate=[{0}]  kann nicht auch einen Backup-Node 
umgezogen werden
diff --git 
a/java/org/apache/catalina/tribes/transport/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/transport/LocalStrings_de.properties
new file mode 100644
index 0000000..acdfa6d
--- /dev/null
+++ b/java/org/apache/catalina/tribes/transport/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+receiverBase.unable.bind=Kann Server Socket nicht an [{0}] binden. Werfe einen 
Fehler.
diff --git 
a/java/org/apache/catalina/tribes/transport/bio/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/transport/bio/LocalStrings_de.properties
new file mode 100644
index 0000000..891f863
--- /dev/null
+++ b/java/org/apache/catalina/tribes/transport/bio/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+bioReceiver.socket.closeFailed=Socket konnte nicht geschlossen werden
+
+bioSender.send.again=Sende Daten erneut an  [{0}:{1,number,integer}]
diff --git 
a/java/org/apache/catalina/tribes/transport/nio/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/transport/nio/LocalStrings_de.properties
new file mode 100644
index 0000000..faef498
--- /dev/null
+++ b/java/org/apache/catalina/tribes/transport/nio/LocalStrings_de.properties
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nioReceiver.start.fail=Cluster-Empfänger konnte nicht gestartet werden
+nioReceiver.stop.fail=Kann den Cluster Receiver Selektor nicht schliessen
+nioReceiver.threadpool.fail=ThreadPool kann nicht initialisiert werden. Der 
Listener wird nicht gestartet.
+
+nioReplicationTask.process.clusterMsg.failed=Verarbeitung der Cluster 
Nachricht fehlgeschlagen.
+
+nioSender.unknown.state=Daten sind in unbekanntem Zustand. readyOps=[{0}]
+
+pooledParallelSender.sender.disconnected=Sender nicht verbunden
diff --git a/java/org/apache/catalina/tribes/util/LocalStrings_de.properties 
b/java/org/apache/catalina/tribes/util/LocalStrings_de.properties
new file mode 100644
index 0000000..834148d
--- /dev/null
+++ b/java/org/apache/catalina/tribes/util/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+arrays.keyoffset.outOfBounds=keyoffset ist Außerhalb der gültigen Grenzen
diff --git a/java/org/apache/catalina/users/LocalStrings_de.properties 
b/java/org/apache/catalina/users/LocalStrings_de.properties
new file mode 100644
index 0000000..8806264
--- /dev/null
+++ b/java/org/apache/catalina/users/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+memoryUserDatabase.nullRole=Spezifizierter Rollenname ist null oder ist null 
Zeichen lang und wird daher ignoriert
diff --git a/java/org/apache/catalina/util/LocalStrings_de.properties 
b/java/org/apache/catalina/util/LocalStrings_de.properties
new file mode 100644
index 0000000..3c50518
--- /dev/null
+++ b/java/org/apache/catalina/util/LocalStrings_de.properties
@@ -0,0 +1,29 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+customObjectInputStream.logRequired=Ein gültiger Logger ist für 
Klassennamenfilterung mit Loggen nötig
+customObjectInputStream.nomatch=Die Klasse [{0}] wird nicht mit dem regulären 
Ausdruck [{1}] gefunden, der erlaubte deserialisierte Klassen bestimmt.
+
+extensionValidator.extension-not-found-error=ExtensionValidator[{0}][{1}]: 
Benötigte Erweiterung [{2}] nicht gefunden
+
+introspection.classLoadFailed=Konnte Klasse [{0}] nicht laden
+
+lifecycleBase.initFail=Konnte Komponente [{0}] nicht initialisieren
+lifecycleBase.setState=Setze Status für [{0}] auf [{1}]
+
+netmask.cidrNegative=Die CIDR [{0}] ist negativ
+netmask.invalidAddress=Die Adresse [{0}] ist nicht gültig
+
+sessionIdGeneratorBase.randomProvider=Während der Zufallsgenerator mit Hilfe 
des Providers [{0}] initialisiert wurde, trat eine Exception auf
diff --git a/java/org/apache/catalina/valves/LocalStrings_de.properties 
b/java/org/apache/catalina/valves/LocalStrings_de.properties
new file mode 100644
index 0000000..87f3816
--- /dev/null
+++ b/java/org/apache/catalina/valves/LocalStrings_de.properties
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+accessLogValve.invalidLocale=Konnte Locale nicht auf [{0}] setzen
+accessLogValve.openFail=Konnte Access Logfile [{0}] nicht öffnen
+accessLogValve.rotateFail=Rotieren des Zugriffslogs ist fehlgeschlagen
+
+errorReportValve.description=Beschreibung
+errorReportValve.note=Hinweis
+errorReportValve.rootCauseInLogs=Der komplette Stacktrace der Ursache ist in 
den Server logs zu finden
+errorReportValve.unknownReason=Unbekannter Grund
+
+http.401.reason=Unautorisiert
+http.402.desc=Dieser Status-Code ist für eine zukünftige Nutzung reserviert
+http.403.desc=Der Server hat die Anfrage verstanden, verbietet aber eine 
Autoriesierung.
+http.404.reason=nicht gefunden
+http.406.reason=Nicht annehmbar
+http.407.reason=Authentisierung für Proxy benötigt
+http.411.reason=Länge benötigt
+http.412.reason=Vorbedingung nicht erfüllt
+http.415.reason=Nicht unterstützter Media-Type
+http.421.desc=Die Anfrage wurde an einen Server gestellt der keine Antwort 
erzeugen konnte.
+http.423.desc=Die Quell- oder Zielressource einer Methode ist gesperrt.
+http.423.reason=Gesperrt
+http.426.reason=Upgrade nötig
+http.429.reason=Zu viele Anfragen
+http.504.reason=Gateway-Zeitüberschreitung
+http.505.reason=HTTP Version nicht unterstützt
+http.507.reason=Nicht genügend Speicherplatz
+http.510.reason=Nicht erweitert
+http.511.desc=Um Netzwerk Zugriff zu erlangen muss sich der Client 
authentifizieren.
+
+remoteCidrValve.noRemoteIp=Client verfügt über keine IP Adresse. Zugriff 
verweigert.
+
+remoteIpValve.invalidPortHeader=Ungültiger Wert [{0}] für Port im HTTP Header 
[{1}] gefunden
diff --git a/java/org/apache/catalina/webresources/LocalStrings_de.properties 
b/java/org/apache/catalina/webresources/LocalStrings_de.properties
new file mode 100644
index 0000000..25d6dbd
--- /dev/null
+++ b/java/org/apache/catalina/webresources/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+extractingRoot.targetFailed=Konnte Verzeichnis [{0}] zum entpacken einer 
JAR-Datei nicht anlegen
diff --git a/java/org/apache/coyote/LocalStrings_de.properties 
b/java/org/apache/coyote/LocalStrings_de.properties
new file mode 100644
index 0000000..dc66652
--- /dev/null
+++ b/java/org/apache/coyote/LocalStrings_de.properties
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+abstractConnectionHandler.processorPop=Prozessor [{0}] wurde aus dem Cache 
genommen.
+abstractConnectionHandler.socketexception.debug=SocketExceptions sind normal, 
werden ignoriert
+
+abstractProcessor.fallToDebug=Info: Weitere Vorkommen von Fehlern beim Parsen 
der Anfragen werden mit DEBUG Level ausgegeben
+abstractProcessor.hostInvalid=Der Host [{0}] ist nicht gültig.
+abstractProcessor.httpupgrade.notsupported=HTTP-Upgrade wird von diesem 
Protokol nicht unterstützt
+
+abstractProtocolHandler.init=Initialisiere ProtocolHandler[{0}]
+
+asyncStateMachine.invalidAsyncState=Der Aufruf von [{0}] ist nicht erlaubt, 
während der Request im Async-Status [{1}] ist
+
+response.writeListenerSet=Der Nicht-blockierende Schreib-Listener wurde 
bereits gesetzt
diff --git a/java/org/apache/coyote/ajp/LocalStrings_de.properties 
b/java/org/apache/coyote/ajp/LocalStrings_de.properties
new file mode 100644
index 0000000..ea184f2
--- /dev/null
+++ b/java/org/apache/coyote/ajp/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ajpmessage.overflow=Überlauffehler im Puffer beim Hinzufügen von [{0}] Bytes 
an Position [{1}]
+
+ajpprotocol.noUpgrade=Upgrade wird von AJP nicht unterstützt. Die 
Konfiguration UpgradeProtocol für [{0}] wurde ignoriert
diff --git a/java/org/apache/coyote/http11/LocalStrings_de.properties 
b/java/org/apache/coyote/http11/LocalStrings_de.properties
new file mode 100644
index 0000000..b8dcbbe
--- /dev/null
+++ b/java/org/apache/coyote/http11/LocalStrings_de.properties
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+http11processor.request.prepare=Fehler beim vorbereiten der Anfrage
+http11processor.request.process=Fehler bei der Verarbeitung der Anfrage
+http11processor.socket.info=Ausnahme beim Lesen der Informationen zum Socket
+
+iib.invalidmethod=Ungültiges Zeichen in Methoden Namen gefunden. HTTP Methoden 
Namen müssen Token nach RFC-7230 sein
+
+iob.failedwrite=Fehlgeschlagener Schreibvorgang
+iob.illegalreset=Die Server-Antwort kann nicht zurück gesetzt werden nachdem 
sie schon freigegeben wurde.
diff --git a/java/org/apache/coyote/http11/filters/LocalStrings_de.properties 
b/java/org/apache/coyote/http11/filters/LocalStrings_de.properties
new file mode 100644
index 0000000..2b6e4b3
--- /dev/null
+++ b/java/org/apache/coyote/http11/filters/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+chunkedInputFilter.eos=Unerwartetes Ende des Streams beim lesen des Request 
Bodys.
+chunkedInputFilter.eosTrailer=Unerwartetes Ende des Eingabestroms während die 
Trailer-Header gelesen wurden
+chunkedInputFilter.invalidCrlfNoCR=Falsche Buchstabensequenz für Zeilenende 
(richtig wäre <CR><LF>)
diff --git a/java/org/apache/coyote/http11/upgrade/LocalStrings_de.properties 
b/java/org/apache/coyote/http11/upgrade/LocalStrings_de.properties
new file mode 100644
index 0000000..59d9123
--- /dev/null
+++ b/java/org/apache/coyote/http11/upgrade/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+upgrade.sis.read.closed=Der InputStream wurde geschlossen.
+upgrade.sis.readListener.set=setReadListener() darf nicht mehr als einmal für 
eine Upgraded-Verbindung aufgerufen werden
+upgrade.sos.writeListener.null=setWriteListener() darf nicht mit null 
aufgerufen werden
diff --git a/java/org/apache/coyote/http2/LocalStrings_de.properties 
b/java/org/apache/coyote/http2/LocalStrings_de.properties
new file mode 100644
index 0000000..d4d6c97
--- /dev/null
+++ b/java/org/apache/coyote/http2/LocalStrings_de.properties
@@ -0,0 +1,42 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+abstractStream.windowSizeInc=Verbindung [{0}], Stream [{1}], erhöhe Flow 
Contrrol Window um [{2}] auf [{3}]
+
+connectionPrefaceParser.mismatch=Es wurde eine unerwartete Byte Sequenz beim 
Start der Client Preface Phase [{0}] empfangen
+
+connectionSettings.debug=Verbindung [{0}], Parameter typ [{1}] gesetzt auf 
[{2}]
+connectionSettings.headerTableSizeLimit=Verbindung [{0}], versuchte die 
Kopfzeilentabellengröße auf [{1}] zu setzen aber die Grenze liegt bei 16k
+
+hpack.invalidCharacter=Das Unicode Zeichen [{0}] an Code Punkt [{1}] kann 
nicht kodiert werden, da es außerhalb des erlaubten Bereiches von 0 bis 255 ist.
+
+hpackdecoder.maxMemorySizeExceeded=Die header table Größe [{0}] überschreitet 
die maximale Größe von [{1}]
+hpackdecoder.nullHeader=Null header bei Index [{0}]
+
+http2Parser.headerLimitSize=Verbindung [{0}], Stream [{1}], 
Gesamt-Header-Größe zu groß
+http2Parser.processFrameData.window=Verbindung [{0}], Client hat mehr Daten 
gesendet als das Stream-Fenster zulässt
+http2Parser.processFrameHeaders.decodingDataLeft=Nach der HPACK-Dekodierung 
sind noch Daten übrig - die hätten verarbeitet sein sollen
+
+stream.header.unknownPseudoHeader=Verbindung [{0}], Stream [{1}], Unbekannten 
Pseudo-Header [{2}] empfangen
+
+streamProcessor.service.error=Fehler bei der Anfrageverarbeitung
+
+upgradeHandler.ioerror=Verbindung [{0}]
+upgradeHandler.pingFailed=Verbindung [{0}] – Das Senden eines ''ping'' zum 
Klienten schlug fehl.
+upgradeHandler.socketCloseFailed=Fehler beim Schließen des Sockets.
+upgradeHandler.upgrade=Verbindung [{0}], HTTP/1.1 Upgrade auf Stream [1]
+upgradeHandler.upgrade.fail=Verbindung [{0}], HTTP/1.1 upgrade fehlgeschlagen
+upgradeHandler.windowSizeTooBig=Verbindung [{0}], Stream [{1}], Fenster-Größe 
zu groß
+upgradeHandler.writeHeaders=Verbindung [{0}], Stream [{1}]
diff --git a/java/org/apache/jasper/resources/LocalStrings_de.properties 
b/java/org/apache/jasper/resources/LocalStrings_de.properties
new file mode 100644
index 0000000..c84f68e
--- /dev/null
+++ b/java/org/apache/jasper/resources/LocalStrings_de.properties
@@ -0,0 +1,77 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+jasper.error.emptybodycontent.nonempty=Nach der TLD muss [{0}] leer sein, ist 
es aber nicht
+
+jsp.error.action.isnottagfile=[{0}] Action kann nur in Tag-Dateien benutzt 
werden
+jsp.error.attribute.deferredmix=Kann nicht ${} und #{} gleichzeitig als EL 
Ausdrücke in demselben Attribut Wert verwenden
+jsp.error.attribute.duplicate=Qualifizierte Attributnamen müssen innerhalb 
eines Elements eindeutig sein
+jsp.error.attribute.noequal=Gleichheitszeichen erwartet
+jsp.error.attribute.nowhitespace=Die JSP Spezifikation verlangt, dass einem 
Attribut Namen ein Leerzeichen vorangeht.
+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=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"
+jsp.error.invalid.version=Ungültige JSP Version für tag-Datei in [{0}] 
definiert
+jsp.error.ise_on_clear=Nicht erlaubter Aufruf von clear() wenn Puffer-Größe == 0
+jsp.error.jspbody.emptybody.only=Das [{0}] Tag kann nur jsp:attribute im Body 
haben.
+jsp.error.jspbody.invalidUse=jsp:body muss ein Unterelement einer Standard- 
oder Custom-Action sein
+jsp.error.jspbody.required=jsp:body muss für den Tag Inhalt für [{0}] genutzt 
werden, wenn jsp:attribute benutzt wird
+jsp.error.jspelement.missing.name=Das erforderliche XML Attribut 'name' fehlt
+jsp.error.location=Zeile: [{0}], Spalte: [{1}]
+jsp.error.mandatory.attribute=[{0}]: Zwingend anzugebendes Attribut [{1}] fehlt
+jsp.error.no.scratch.dir=Die JSP-Engine ist nicht mir einem leeren Verzeichnis 
konfiguriert. Bitte fügen Sie "jsp.initparams=scratchdir=<verzeichnisname>" in 
die servlets.properties Datei für diesen Kontext.
+jsp.error.no.scriptlets=Die Skript-Elemente ( &lt;%!, &lt;jsp:declaration, 
&lt;%=, &lt;jsp:expression, &lt;%, &lt;jsp:scriptlet ) sind hier nicht erlaubt.
+jsp.error.noFunction=Die Funktion [{0}] kann mit dem angegebenen Prefix nicht 
gefunden werden
+jsp.error.not.in.template=[{0}] ist nicht im Body des Template Textes erlaubt
+jsp.error.outputfolder=kein Ausgabeordner
+jsp.error.parse.xml=Fehler bei der Verarbeitung der XML Datei [{0}]
+jsp.error.plugin.wrongRootElement=Der Name des Wurzel Elementes in [{0}] ist 
unterschiedlich zu dem von [{1}]
+jsp.error.scripting.variable.missing_name=Kann den Namen der Skript Variable 
vom Attribut [{0}] ableiten
+jsp.error.simpletag.badbodycontent=Die TLD für Klasse [{0}] spezifiziert einen 
ungültigen Body-Content (JSP) für ein SimpleTag.
+jsp.error.taglibDirective.absUriCannotBeResolved=Die absolute URI: [{0}] kann 
weder durch web.xml noch durch die JAR-Files dieser Anwendung aufgelöst werden
+jsp.error.taglibDirective.missing.location=Weder 'uri' noch 'tagdir' Attribute 
sind angegeben
+jsp.error.taglibDirective.uriInvalid=Die URI, die für die Tag Bibliothek [{0}] 
zur Verfügung gestellt wurde, ist keine gültige URI
+jsp.error.tld.mandatory.element.missing=Notwendiges TLD Element  [{0}] fehlt 
oder ist leer in TLD  [{1}]
+jsp.error.unable.deleteClassFile=Klassendatei konnte nicht gelöscht werden
+jsp.error.unable.renameClassFile=Fehler beim Umbenennen der Klassendatei
+jsp.error.unable.to_find_method=Keine Setter Methode für das Attribut [{0}] 
gefunden.
+jsp.error.unavailable=JSP wurde als nicht verfügbar markiert
+jsp.error.unknown_attribute_type=Unbekannter Attributstyp [{1}] für Attribut 
[{0}].
+jsp.error.xml.badStandardAction=Ungültige Standard Aktion: [{0}]
+jsp.exception=Beim Verarbeiten von [{0}] ist in Zeile [{1}] eine Ausnahme 
erzeugt worden
+jsp.info.ignoreSetting=Ignoriere Einstellung für [{0}] von [{1}], da ein 
SecurityManager eingeschaltet war
+jsp.message.jsp_queue_update=Passe Queue im Kontext [{1}] für JSP mit Pfad 
[{0}] an
+jsp.message.jsp_removed_excess=Lösche überschüssige JSP für Pfad [{0}] aus der 
Warteschlange für Context [{1}]
+jsp.warning.enablePooling=Warnung: Ungültiger Wert für den initParam 
enablePooling. Benutze den Standard-Wert "true"
+jsp.warning.unknown.targetVM=Unbekannte Ziel-VM [{0}] ignoriert
+
+jspc.webfrg.footer=\n\
+</web-fragment>\n\
+\n
+jspc.webinc.header=\n\
+<!--\n\
+Automatisch erstellt von Apache Tomcat JspC.\n\
+-->\n\
+\n
+jspc.webxml.footer=\n\
+</web-app>\n\
+\n
+
+org.apache.jasper.compiler.TldCache.servletContextNull=Der angegebene 
ServletContext war null
diff --git a/java/org/apache/naming/LocalStrings_de.properties 
b/java/org/apache/naming/LocalStrings_de.properties
new file mode 100644
index 0000000..3493f40
--- /dev/null
+++ b/java/org/apache/naming/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+contextBindings.unknownContext=Unbekannter Kontext-Name: [{0}]
+
+namingContext.contextExpected=Ein Name ist nicht an den Context gebunden
+
+selectorContext.noJavaUrl=Auf diesen Kontext muss durch eine java:-URL 
zugegriffen werden
diff --git 
a/java/org/apache/naming/factory/webservices/LocalStrings_de.properties 
b/java/org/apache/naming/factory/webservices/LocalStrings_de.properties
new file mode 100644
index 0000000..a1f6ad3
--- /dev/null
+++ b/java/org/apache/naming/factory/webservices/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+serviceProxy.portNotFound=Kein Port mit dem Namen [{0}] gefunden
diff --git a/java/org/apache/tomcat/dbcp/dbcp2/LocalStrings_de.properties 
b/java/org/apache/tomcat/dbcp/dbcp2/LocalStrings_de.properties
new file mode 100644
index 0000000..fe252e4
--- /dev/null
+++ b/java/org/apache/tomcat/dbcp/dbcp2/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+poolableConnection.validate.fastFail=Fatale SQLException wurde bereits vorher 
von dieser Verbindung geworfen
diff --git a/java/org/apache/tomcat/util/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/LocalStrings_de.properties
new file mode 100644
index 0000000..517c8b0
--- /dev/null
+++ b/java/org/apache/tomcat/util/LocalStrings_de.properties
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+diagnostics.threadDumpTitle=Kompletter Thread Dump
+diagnostics.vmInfoClassCompilation=Übersetzung der Klasse
+diagnostics.vmInfoLogger=Logger-Information
diff --git a/java/org/apache/tomcat/util/buf/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/buf/LocalStrings_de.properties
new file mode 100644
index 0000000..ac7743b
--- /dev/null
+++ b/java/org/apache/tomcat/util/buf/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+uDecoder.convertHexDigit.notHex=[{0}] ist keine hexadezimale Ziffer
diff --git a/java/org/apache/tomcat/util/compat/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/compat/LocalStrings_de.properties
new file mode 100644
index 0000000..026960f
--- /dev/null
+++ b/java/org/apache/tomcat/util/compat/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+jreCompat.noApplicationProtocol=Die Java Runtime unterstützt nicht den 
SSLEngine.getApplicationProtocol() Aufruf. Um dieses Feature nutzen zu können 
muss Java 9 verwendet werden.
diff --git 
a/java/org/apache/tomcat/util/descriptor/web/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/descriptor/web/LocalStrings_de.properties
new file mode 100644
index 0000000..8168c7e
--- /dev/null
+++ b/java/org/apache/tomcat/util/descriptor/web/LocalStrings_de.properties
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+filterDef.invalidFilterName=Ungültiger <filter-name> [{0}] in der Filter 
Definition.
+
+webRuleSet.postconstruct.duplicate=Doppelte 
Post-Konstruktor-Methoden-Definition für Klasse [{0}]
+
+webXml.duplicateFilter=Doppelter Filter-Name [{0}]
diff --git a/java/org/apache/tomcat/util/digester/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/digester/LocalStrings_de.properties
new file mode 100644
index 0000000..04c51f6
--- /dev/null
+++ b/java/org/apache/tomcat/util/digester/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+digester.failedToUpdateAttributes=Attribut [{0}} konnte nicht angepasst werden 
und bleibt auf dem Wert [{1}]
diff --git a/java/org/apache/tomcat/util/http/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/http/LocalStrings_de.properties
new file mode 100644
index 0000000..829e61c
--- /dev/null
+++ b/java/org/apache/tomcat/util/http/LocalStrings_de.properties
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cookies.invalidCookieToken=Cookies: Ungültiges Cookie. Wert ist kein Token 
oder Quoted Token
+cookies.invalidSameSiteCookies=Unbekannte Einstellung [{0}], Sollte einer der 
Werte: ''none'', ''lax'', ''strict'' entsprechen. Standardwert ist ''none''
+
+parameters.bytes=Starte Verarbeitung mit Eingabe [{0}]
+parameters.copyFail=Konnte keine Kopie der Originalwerte der Parameter für 
Debug-Ausgaben erzeugen
+parameters.fallToDebug=Beachte: weitere Vorkommen von Parameter Fehlern werden 
im DEBUG Level geloggt.
+parameters.maxCountFail.fallToDebug=Hinweis: weitere Vorkommen dieses Fehlers 
werden im DEBUG-Level protokolliert.
+
+rfc6265CookieProcessor.invalidPath=Ein ungültiger Pfad [{0}] ist für das 
Cookie spezifiziert
diff --git a/java/org/apache/tomcat/util/http/parser/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/http/parser/LocalStrings_de.properties
new file mode 100644
index 0000000..81d07c9
--- /dev/null
+++ b/java/org/apache/tomcat/util/http/parser/LocalStrings_de.properties
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cookie.valueNotPresent=<nicht vorhanden>
+
+http.illegalCharacterIpv4=Das Zeichen [{0}] ist in einer IPv4-Adresse niemals 
erlaubt.
+http.invalidHextet=Ungültiges Hextet. Ein Hextet muss aus 4 oder weniger 
Hexadecimalzeichen bestehen.
+http.invalidIpv4Location=Die IPV6-Adresse enthält eine eingebettete 
IPv4-Adresse an einer ungültigen Position.
+http.invalidOctet=Invalides Oktett [{0}]. Der gültige Bereich für IPv4 Oktette 
geht von 0 bis 255.
+http.invalidSegmentEndState=Der Zustand [{0}] ist nicht gültig für das Ende 
eines Segments.
diff --git a/java/org/apache/tomcat/util/net/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/net/LocalStrings_de.properties
new file mode 100644
index 0000000..ad061a1
--- /dev/null
+++ b/java/org/apache/tomcat/util/net/LocalStrings_de.properties
@@ -0,0 +1,48 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+channel.nio.ssl.sniDefault=Puffer ist nicht groß genug um den angefragten SNI 
Host-Namen zu ermitteln. Benutze den Standard Wert
+channel.nio.ssl.sniHostName=Aus Verbindung [{0}] konnte der SNI Hostname [{1}] 
extrahiert werden
+channel.nio.ssl.unwrapFail=Daten können nicht entpackt werden, ungültiger 
Status [{0}]
+
+endpoint.apr.applyConf=Wende OpenSSLConfCmd auf SSL Kontext an
+endpoint.apr.checkConf=Überprüfe OpenSSLConf
+endpoint.apr.errApplyConf=Die OpenSSLConf konnte nicht auf den Context 
angewandt werden
+endpoint.apr.errMakeConf=Konnte OpenSSLConf Kontext nicht erzeugen
+endpoint.apr.pollAddInvalid=Ungültiger Versuch einen Socket [{0}] zum Poller 
hinzuzufügen
+endpoint.apr.tooManyCertFiles=Es wurden mehr Zertifikatsdateien konfiguriert 
als ein APR Endpunkt handhaben kann
+endpoint.debug.channelCloseFail=Kanal konnte nicht geschlossen werden
+endpoint.debug.socketCloseFail=Socket konnte nicht geschlossen werden
+endpoint.init.bind=Binden des Sockets fehlgeschlagen: [{0}] [{1}]
+endpoint.init.notavail=APR nicht verfügbar
+endpoint.noSslHostName=Es wurde kein Hostname für die SSL Host Konfiguration 
angegeben
+endpoint.poll.limitedpollsize=Konnte Poller mit der angegebenen Große von 
[{0}] nicht erzeugen
+endpoint.removeDefaultSslHostConfig=Die Standard SSLHostConfig (namens [{0}]) 
darf nicht entfernt werden
+endpoint.sendfile.addfail=Sendfile-Fehler: [{0}][{1}]
+endpoint.sendfile.error=Unerwarteter sendfile-Fehler
+endpoint.serverSocket.closeFailed=Konnte Server Socket für [{0}] nicht 
schliessen
+endpoint.setAttribute=Setze [{0}] auf [{1}]
+endpoint.warn.incorrectConnectionCount=Falsche Verbindungsanzahl, mehrere 
socket.close-Aufrufe auf dem gleichen Socket
+endpoint.warn.noLocalName=Lokaler Hostname für Socket [{0}] konnte nicht 
ermittelt werden
+
+jsse.ssl3=SSLv3 wurde explizit eingeschalten. Dieses Protokoll ist als 
unsicher bekannt.
+
+socket.apr.closed=Der zu  dieser Verbindung gehörende Socket [{0}] wurde 
geschlossen.
+
+sslHostConfig.certificate.notype=Es wurden mehrere Zertifikate angegeben und 
mindestens einem fehlt ein erforderlicher Attributs Typ
+sslHostConfig.fileNotFound=Die konfigurierte Datei [{0}] existiert nicht.\n
+sslHostConfig.opensslconf.null=Versuch eine null OpenSSLConf zu setzen 
ignoriert
+
+sslUtilBase.noneSupported=Keine der spezifizierten [{0}] wird von der SSL 
Engine unterstützt: [{1}]
diff --git a/java/org/apache/tomcat/util/net/jsse/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/net/jsse/LocalStrings_de.properties
new file mode 100644
index 0000000..e26182a
--- /dev/null
+++ b/java/org/apache/tomcat/util/net/jsse/LocalStrings_de.properties
@@ -0,0 +1,25 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+jsse.invalid_ssl_conf=SSL Konfiguration ist ungültig wegen [{0}]
+jsse.noDefaultCiphers=Kann keinen Standard Cipher für [{0}] ermitteln. Setze 
einen expliziten Wert um sicher zu stellen, dass der Connektor starten kann.
+jsse.openssl.effectiveCiphers=Verwendete Ciphers: [{0}]
+jsse.pemParseError=Der Schlüssel konnte nicht aus [{0}] geparst werden.
+
+jsseSupport.certTranslationError=Fehler beim Übersetzen des Zertifikates [{0}]
+jsseSupport.clientCertError=Fehler beim Versuch ein Zertifikat vom Client zu 
erhalten.
+
+jsseUtil.noVerificationDepth=Der truststoreProvider [{0}] unterstützt nicht 
die Option certificateVerificationDepth
+jsseUtil.trustedCertNotValid=Das vertrauenswürdige Zertifikat mit alias [{0}] 
und DN [{1}] ist auf Grund von [{2}] nicht gültig. Zertifikate die von diesem 
signiert worden sind WERDEN akzeptiert.
diff --git a/java/org/apache/tomcat/util/net/openssl/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/net/openssl/LocalStrings_de.properties
new file mode 100644
index 0000000..044b3e0
--- /dev/null
+++ b/java/org/apache/tomcat/util/net/openssl/LocalStrings_de.properties
@@ -0,0 +1,36 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+engine.ciphersFailure=Fehler beim abfragen der Cipher Liste
+engine.emptyCipherSuite=leere Cipher-Suite
+engine.inboundClose=Die eingehende Verbindung wurde vor einer close_notify 
Nachricht der Gegenstelle geschlossen
+engine.noSession=SSL Session-ID nicht vorhanden
+engine.openSSLError=OpenSSL Fehler: [{0}] Nachricht: [{1}]
+engine.renegotiationUnsupported=Renegotiation wird nicht unterstützt
+engine.unsupportedProtocol=Protokoll [{0}] ist nicht unterstützt
+
+keyManager.nullCertificateChain=Leere Zertifikatskette
+
+openssl.addedClientCaCert=Client CA Zertifikat hinzugefügt: [{0}]
+openssl.certificateVerificationFailed=Zertifikatsprüfung fehlgeschlagen
+openssl.errApplyConf=Die OpenSSLConf konnte nicht auf den SSL Context 
angewandt werden
+openssl.errCheckConf=Fehler beim Prüfen der OpenSSLConf
+openssl.errMakeConf=Der OpenSSLConf Context konnte nicht erzeugt werden
+openssl.errorSSLCtxInit=Fehler beim initialisieren des SSL Contexts
+openssl.keyManagerMissing=Kein Key-Manager gefunden
+openssl.trustManagerMissing=Kein Trust-Manager gefunden
+
+opensslconf.applyFailed=Fehler bei der Anwendung der OpenSSLConf auf den SSL 
Context
+opensslconf.checkFailed=Fehler beim Prüfen der OpenSSLConf
diff --git a/java/org/apache/tomcat/util/scan/LocalStrings_de.properties 
b/java/org/apache/tomcat/util/scan/LocalStrings_de.properties
new file mode 100644
index 0000000..621df5b
--- /dev/null
+++ b/java/org/apache/tomcat/util/scan/LocalStrings_de.properties
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+jarScan.classloaderJarNoScan=Werde auf Datei [{0}] aus dem Classpath kein JAR 
Scanning durchführen
diff --git a/java/org/apache/tomcat/websocket/LocalStrings_de.properties 
b/java/org/apache/tomcat/websocket/LocalStrings_de.properties
new file mode 100644
index 0000000..a12781b
--- /dev/null
+++ b/java/org/apache/tomcat/websocket/LocalStrings_de.properties
@@ -0,0 +1,36 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+caseInsensitiveKeyMap.nullKey=Null Schlüssel sind nicht erlaubt
+
+wsFrame.closed=Weiterer Frame empfangen nachdem bereits ein Kontroll Frame vom 
Typ Close empfangen wurde
+wsFrame.illegalReadState=Unerwarteter Lesestatus [{0}]
+wsFrame.wrongRsv=Der Client Frame setzt die reservierten Bits auf [{0}] für 
eine Nachricht mit dem opCode [{1}], der von diesem Endpunkt nicht unterstüzt 
wird
+
+wsHandshakeRequest.invalidUri=Aus dem String [{0}] kann keine valide URI 
konstruiert werden
+
+wsRemoteEndpoint.closedDuringMessage=Der Rest der Message wird nicht gesendet 
werden, da die WebSocket Session bereits beendet wurde
+wsRemoteEndpoint.tooMuchData=Ping oder Pong darf nicht mehr als 125 Bytes 
senden
+wsRemoteEndpoint.wrongState=Der entfernte Endpunkt war im Zustand [{0}] 
welcher für die aufgerufene Methode ungültig ist
+
+wsSession.created=Websocket Sitzung [{0}] erzeugt
+wsSession.doClose=Schließe WebSocket-Sitzung [{1}]
+wsSession.duplicateHandlerText=Ein Text Message Handler ist bereits 
konfiguriert
+wsSession.instanceNew=Registrierung der Endpunkt-Instanz ist fehlgeschlagen
+
+wsWebSocketContainer.asynchronousSocketChannelFail=Es kann keine Verbindung 
zum Server hergestellt werden
+wsWebSocketContainer.missingAnnotation=Die POJO Klasse [{0}] kann nicht 
verwendet werden da sie nicht mit @ClientEndpoint annotiert ist.
+wsWebSocketContainer.pathNoHost=In der URI wurde kein Host angegeben
+wsWebSocketContainer.sessionCloseFail=Die Sitzung mit der ID [{0}] wurde nicht 
sauber geschlossen.
diff --git a/java/org/apache/tomcat/websocket/pojo/LocalStrings_de.properties 
b/java/org/apache/tomcat/websocket/pojo/LocalStrings_de.properties
new file mode 100644
index 0000000..26a684a
--- /dev/null
+++ b/java/org/apache/tomcat/websocket/pojo/LocalStrings_de.properties
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+pojoEndpointServer.getPojoInstanceFail=Es konnte keine POJO Instanz des Typs 
[{0}] erzeugt werden
+
+pojoMethodMapping.duplicateAnnotation=Doppelte Annotation [{0}] an Klasse 
[{1}] gefunden
+pojoMethodMapping.duplicateLastParam=Es sind mehrere Boolean (letzte) 
Parameter für die Methode [{0}] der Klasse [{1}], die mit OnMessage annotiert 
ist, vorhanden.
+pojoMethodMapping.invalidDecoder=Der angegeben Dekoder vom Typ [{0}] konnte 
nicht instanziiert werden
+pojoMethodMapping.methodNotPublic=Die annotierite Methode [{0}] ist nicht 
öffentlich
+pojoMethodMapping.paramWithoutAnnotation=Es wurde ein Parameter des Typs [{0}] 
an der Methode [{1}] der Klasse [{2}] gefunden der nicht die Annotation 
@PathParam hat
diff --git a/java/org/apache/tomcat/websocket/server/LocalStrings_de.properties 
b/java/org/apache/tomcat/websocket/server/LocalStrings_de.properties
new file mode 100644
index 0000000..fb9036b
--- /dev/null
+++ b/java/org/apache/tomcat/websocket/server/LocalStrings_de.properties
@@ -0,0 +1,22 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+serverContainer.missingAnnotation=Die POJO Klasse [{0}] kann nicht deployed 
werden da sie nicht mit @ServerEndpoint annotiert ist.
+serverContainer.pojoDeploy=POJO Klasse [{0}] wird unter  [{1}] im 
ServletContext [{2}] deployed
+serverContainer.servletContextMissing=Es wurde kein ServletContext angegeben
+
+upgradeUtil.incompatibleRsv=Es wurden Erweiterungen spezifiziert, die eine 
inkompatible RSV Bit Konstellation erzeugen
+
+uriTemplate.invalidPath=Der Pfad [{0}] ist nicht gültig.
diff --git a/res/maven/mvn-pub.xml b/res/maven/mvn-pub.xml
index abe71e3..dbd1b24 100644
--- a/res/maven/mvn-pub.xml
+++ b/res/maven/mvn-pub.xml
@@ -297,6 +297,7 @@
     <doMavenDeploy artifactId="tomcat-coyote"/>
     <doMavenDeploy artifactId="tomcat-dbcp"/>
     <doMavenDeploy artifactId="tomcat-websocket"/>
+    <doMavenDeployNoSrc artifactId="tomcat-i18n-de"/>
     <doMavenDeployNoSrc artifactId="tomcat-i18n-es"/>
     <doMavenDeployNoSrc artifactId="tomcat-i18n-fr"/>
     <doMavenDeployNoSrc artifactId="tomcat-i18n-ja"/>
diff --git a/res/maven/tomcat-i18n-de.pom b/res/maven/tomcat-i18n-de.pom
new file mode 100644
index 0000000..b7ed71f
--- /dev/null
+++ b/res/maven/tomcat-i18n-de.pom
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0";
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+  http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.apache.tomcat</groupId>
+  <artifactId>tomcat-i18n-de</artifactId>
+  <version>@MAVEN.DEPLOY.VERSION@</version>
+  <description>German translations</description>
+  <url>https://tomcat.apache.org/</url>
+  <licenses>
+    <license>
+      <name>Apache License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
+</project>
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index e40556e..8fd29f9 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -51,6 +51,11 @@
         Back-port various corrections and improvements to the English versions
         of the i18n messages. (markt)
       </fix>
+      <add>
+        Include the available German translations in the standard Tomcat
+        distribution. Back-port additions and updates to the German i18n
+        messages. (markt)
+      </add>
     </changelog>
   </subsection>
 </section>
diff --git a/webapps/examples/WEB-INF/classes/LocalStrings_de.properties 
b/webapps/examples/WEB-INF/classes/LocalStrings_de.properties
new file mode 100644
index 0000000..9f94299
--- /dev/null
+++ b/webapps/examples/WEB-INF/classes/LocalStrings_de.properties
@@ -0,0 +1,28 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cookies.make-cookie=Erzeuge ein Cookie um es an deinen Browser zu senden
+cookies.name=Name:
+
+requestheader.title=Request-Header Beispiel
+
+requestinfo.label.protocol=Protokoll:
+requestinfo.label.requesturi=Anfrage-URI:
+
+requestparams.firstname=Vorname:
+requestparams.no-params=Keine Parameter, bitte geben Sie welche ein
+requestparams.title=Beispiel für Anfrageparameter
+
+sessions.title=Sessions-Beispiel


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

Reply via email to