From ea43e9de6d23aaf93ff60ff5e0850471cfe39826 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 22 May 2013 10:33:52 +0000
Subject: [PATCH] OPENDJ-918 (CR-1723) - HTTP Connection Handler - Server cannot start with horked http-config.json
---
opends/src/messages/messages/protocol_es.properties | 4
opends/src/messages/messages/protocol_ja.properties | 2
opends/src/messages/messages/protocol_zh_CN.properties | 2
opends/src/messages/messages/protocol.properties | 12 +-
opends/src/server/org/opends/server/protocols/ldap/LDAPConnectionHandler.java | 6
opends/src/messages/messages/protocol_zh_TW.properties | 2
opends/src/messages/messages/protocol_ko.properties | 2
opends/src/messages/messages/protocol_de.properties | 4
opends/src/server/org/opends/server/protocols/http/HTTPConnectionHandler.java | 229 +++++++++++++++++++++++++++------------------
opends/src/messages/messages/protocol_fr.properties | 4
opends/src/server/org/opends/server/util/ServerConstants.java | 19 +++
11 files changed, 171 insertions(+), 115 deletions(-)
diff --git a/opends/src/messages/messages/protocol.properties b/opends/src/messages/messages/protocol.properties
index e83b8f7..5a41915 100644
--- a/opends/src/messages/messages/protocol.properties
+++ b/opends/src/messages/messages/protocol.properties
@@ -507,13 +507,11 @@
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=An internal error \
prevented the Directory Server from properly registering the client \
connection from %s to %s with an appropriate request handler: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=The LDAP connection \
- handler defined in configuration entry %s was unable to accept a new client \
- connection: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=The LDAP \
- connection handler defined in configuration entry %s has experienced \
- consecutive failures while trying to accept client connections: %s. This \
- connection handler will be disabled
+MILD_ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=The %s defined in \
+ configuration entry %s was unable to accept a new client connection: %s
+FATAL_ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=The %s defined in \
+ configuration entry %s has experienced consecutive failures while trying to \
+ accept client connections: %s. This connection handler will be disabled
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=The LDAP connection handler \
defined in configuration entry %s caught an unexpected error while trying to \
listen for new connections: %s. This connection handler will be disabled
diff --git a/opends/src/messages/messages/protocol_de.properties b/opends/src/messages/messages/protocol_de.properties
index c4e1c32..b637f89 100644
--- a/opends/src/messages/messages/protocol_de.properties
+++ b/opends/src/messages/messages/protocol_de.properties
@@ -201,8 +201,8 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=Der Verbindungsversuch von Client %s zu %s wurde abgelehnt, da der Client in einem der Bereiche f\u00fcr verweigerte Adressen enthalten war
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=Der Verbindungsversuch von Client %s zu %s wurde abgelehnt, da der Client nicht in einem der Bereiche f\u00fcr zul\u00e4ssige Adressen enthalten war
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=Aufgrund eines internen Fehlers konnte Directory-Server die Clientverbindung von %s zu %s nicht mit einer geeigneten Behandlungsroutine f\u00fcr Anforderungen registrieren: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=Die im Konfigurationseintrag %s definierte LDAP-Verbindungsbehandlungsroutine konnte eine neue Clientverbindung nicht annehmen: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=Der in Konfigurationseintrag %s definierte LDAP-Verbindungshandler hat beim Versuch, die Client-Verbindungen zu akzeptieren, aufeinander folgende Fehler verursacht: %s. Dieser Verbindungshandler wird deaktiviert
+MILD_ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=Die im Konfigurationseintrag %s definierte %s konnte eine neue Clientverbindung nicht annehmen: %s
+FATAL_ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=Der in Konfigurationseintrag %s definierte %s hat beim Versuch, die Client-Verbindungen zu akzeptieren, aufeinander folgende Fehler verursacht: %s. Dieser Verbindungshandler wird deaktiviert
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=Der in Konfigurationseintrag %s definierte LDAP-Verbindungshandler hat beim Versuch, neue Verbindungen abzuh\u00f6ren, einen unerwarteten Fehler verursacht: %s. Dieser Verbindungshandler wird deaktiviert
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s konnte keinen Selektor \u00f6ffnen, um Lesevorg\u00e4nge von Clients zu multiplexen: %s. Dieser Anforderungshandler kann die Verarbeitung nicht fortsetzen
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s konnte diese Client-Verbindung mit dem Selektor nicht registrieren: %s
diff --git a/opends/src/messages/messages/protocol_es.properties b/opends/src/messages/messages/protocol_es.properties
index edd2dc5..1644b17 100644
--- a/opends/src/messages/messages/protocol_es.properties
+++ b/opends/src/messages/messages/protocol_es.properties
@@ -201,8 +201,8 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=El intento de conexi\u00f3n desde el cliente %s a %s se ha rechazado, el cliente se incluy\u00f3 en uno de los rangos de direcciones denegados
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=El intento de conexi\u00f3n desde el cliente %s a %s se ha rechazado, el cliente no se incluy\u00f3 en uno de los rangos de direcciones permitidos
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=Un error interno impidi\u00f3 a Directory Server registrar correctamente la conexi\u00f3n de cliente de %s a %s con un controlador de solicitud adecuado: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=El controlador de conexi\u00f3n LDAP definido en la entrada de configuraci\u00f3n %s no pudo aceptar una nueva conexi\u00f3n de cliente: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=El controlador de conexi\u00f3n LDAP definido en la entrada de configuraci\u00f3n %s ha experimentado errores consecutivos al tratar de aceptar las conexiones de cliente: %s. Este controlador de conexi\u00f3n se inhabilitar\u00e1
+MILD_ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=El %s definido en la entrada de configuraci\u00f3n %s no pudo aceptar una nueva conexi\u00f3n de cliente: %s
+FATAL_ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=El %s definido en la entrada de configuraci\u00f3n %s ha experimentado errores consecutivos al tratar de aceptar las conexiones de cliente: %s. Este controlador de conexi\u00f3n se inhabilitar\u00e1
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=El controlador de conexi\u00f3n LDAP definido en la entrada de configuraci\u00f3n %s detect\u00f3 un error inesperado al tratar de escuchar nuevas conexiones: %s. Este controlador de conexi\u00f3n se inhabilitar\u00e1
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s no pudo abrir un selector para multiplexar lecturas de los clientes: %s. Este controlador de solicitudes no puede continuar su procesamiento
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s no pudo registrar esta conexi\u00f3n de cliente con el selector: %s
diff --git a/opends/src/messages/messages/protocol_fr.properties b/opends/src/messages/messages/protocol_fr.properties
index 005c828..ef13c36 100644
--- a/opends/src/messages/messages/protocol_fr.properties
+++ b/opends/src/messages/messages/protocol_fr.properties
@@ -201,8 +201,8 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=La tentative de connexion du client %s \u00e0 %s a \u00e9t\u00e9 refus\u00e9e, car le client \u00e9tait inclus dans l'une des plages d'adresses refus\u00e9es
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=La tentative de connexion du client %s \u00e0 %s a \u00e9t\u00e9 refus\u00e9e, car le client n'\u00e9tait pas inclus dans l'une des plages d'adresses autoris\u00e9es
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182= Une erreur interne a emp\u00each\u00e9 Directory Server d'enregistrer correctement la connexion cliente de %s \u00e0 %s avec un gestionnaire de demandes appropri\u00e9\u00a0: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=Le gestionnaire de connexion LDAP d\u00e9fini dans l'entr\u00e9e de configuration %s n'a pas pu accepter une nouvelle connexion cliente\u00a0: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=Le gestionnaire de connexion LDAP d\u00e9fini dans l\u2019entr\u00e9e de configuration %s a rencontr\u00e9 des \u00e9checs successifs lors de la tentative d\u2019acceptation des connexions client\u00a0: %s. Ce gestionnaire de connexion va \u00eatre d\u00e9sactiv\u00e9
+MILD_ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=Le %s d\u00e9fini dans l'entr\u00e9e de configuration %s n'a pas pu accepter une nouvelle connexion cliente\u00a0: %s
+FATAL_ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=Le %s d\u00e9fini dans l\u2019entr\u00e9e de configuration %s a rencontr\u00e9 des \u00e9checs successifs lors de la tentative d\u2019acceptation des connexions client\u00a0: %s. Ce gestionnaire de connexion va \u00eatre d\u00e9sactiv\u00e9
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=Le gestionnaire de connexion LDAP d\u00e9fini dans l\u2019entr\u00e9e de configuration %s a d\u00e9tect\u00e9 une erreur inattendue lors de la tentative d\u2019\u00e9coute des nouvelles connexions\u00a0: %s. Ce gestionnaire de connexion va \u00eatre d\u00e9sactiv\u00e9
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s n\u2019a pas pu ouvrir de s\u00e9lecteur pour multiplexer les lectures \u00e0 partir des clients\u00a0: %s. Ce gestionnaire de requ\u00eate ne peut pas continuer son traitement
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s n\u2019a pas pu enregistrer cette connexion client aupr\u00e8s du s\u00e9lecteur\u00a0: %s
diff --git a/opends/src/messages/messages/protocol_ja.properties b/opends/src/messages/messages/protocol_ja.properties
index 5214de2..7071216 100644
--- a/opends/src/messages/messages/protocol_ja.properties
+++ b/opends/src/messages/messages/protocol_ja.properties
@@ -201,8 +201,6 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=\u30af\u30e9\u30a4\u30a2\u30f3\u30c8 %s \u304b\u3089 %s \u3078\u306e\u63a5\u7d9a\u8a66\u884c\u306f\u62d2\u5426\u3055\u308c\u307e\u3057\u305f\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306f\u3001\u62d2\u5426\u3055\u308c\u308b\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e 1 \u3064\u306b\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=\u30af\u30e9\u30a4\u30a2\u30f3\u30c8 %s \u304b\u3089 %s \u3078\u306e\u63a5\u7d9a\u8a66\u884c\u306f\u62d2\u5426\u3055\u308c\u307e\u3057\u305f\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306f\u3001\u8a31\u53ef\u3055\u308c\u308b\u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e 1 \u3064\u306b\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=\u5185\u90e8\u30a8\u30e9\u30fc\u306e\u305f\u3081\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3001%s \u304b\u3089 %s \u3078\u306e\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u63a5\u7d9a\u3092\u9069\u5207\u306a\u8981\u6c42\u30cf\u30f3\u30c9\u30e9\u306b\u6b63\u3057\u304f\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=\u69cb\u6210\u30a8\u30f3\u30c8\u30ea %s \u3067\u5b9a\u7fa9\u3055\u308c\u305f LDAP \u63a5\u7d9a\u30cf\u30f3\u30c9\u30e9\u306f\u3001\u65b0\u3057\u3044\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u63a5\u7d9a\u3092\u53d7\u3051\u5165\u308c\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u63a5\u7d9a\u306e\u53d7\u3051\u5165\u308c\u4e2d\u306b\u3001\u69cb\u6210\u30a8\u30f3\u30c8\u30ea %s \u3067\u5b9a\u7fa9\u3055\u308c\u305f LDAP \u63a5\u7d9a\u30cf\u30f3\u30c9\u30e9\u3067\u969c\u5bb3\u304c\u9023\u7d9a\u3057\u3066\u767a\u751f\u3057\u307e\u3057\u305f: %s\u3002\u3053\u306e\u63a5\u7d9a\u30cf\u30f3\u30c9\u30e9\u306f\u7121\u52b9\u306b\u306a\u308a\u307e\u3059
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=\u65b0\u3057\u3044\u63a5\u7d9a\u306e\u5f85\u6a5f\u4e2d\u306b\u3001\u69cb\u6210\u30a8\u30f3\u30c8\u30ea %s \u3067\u5b9a\u7fa9\u3055\u308c\u305f LDAP \u63a5\u7d9a\u30cf\u30f3\u30c9\u30e9\u3067\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc\u304c\u30ad\u30e3\u30c3\u30c1\u3055\u308c\u307e\u3057\u305f: %s\u3002\u3053\u306e\u63a5\u7d9a\u30cf\u30f3\u30c9\u30e9\u306f\u7121\u52b9\u306b\u306a\u308a\u307e\u3059
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s \u306f\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304b\u3089\u306e\u8aad\u307f\u53d6\u308a\u3092\u591a\u91cd\u5316\u3059\u308b\u305f\u3081\u306e\u30bb\u30ec\u30af\u30bf\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f: %s\u3002\u3053\u306e\u8981\u6c42\u30cf\u30f3\u30c9\u30e9\u306e\u51e6\u7406\u3092\u7d9a\u884c\u3067\u304d\u307e\u305b\u3093
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s \u306f\u3053\u306e\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u63a5\u7d9a\u3092\u30bb\u30ec\u30af\u30bf\u306b\u767b\u9332\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f: %s
diff --git a/opends/src/messages/messages/protocol_ko.properties b/opends/src/messages/messages/protocol_ko.properties
index 823f861..d360a13 100644
--- a/opends/src/messages/messages/protocol_ko.properties
+++ b/opends/src/messages/messages/protocol_ko.properties
@@ -201,8 +201,6 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=\ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \uac70\ubd80\ub41c \uc8fc\uc18c \ubc94\uc704 \uc911 \ud558\ub098\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \ud074\ub77c\uc774\uc5b8\ud2b8 %s\uc5d0\uc11c %s(\uc73c)\ub85c\uc758 \uc5f0\uacb0 \uc2dc\ub3c4\uac00 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=\ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \ud5c8\uc6a9\ub41c \uc8fc\uc18c \ubc94\uc704 \uc911 \ud558\ub098\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \ud074\ub77c\uc774\uc5b8\ud2b8 %s\uc5d0\uc11c %s(\uc73c)\ub85c\uc758 \uc5f0\uacb0 \uc2dc\ub3c4\uac00 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=\ub0b4\ubd80 \uc624\ub958\uac00 \ubc1c\uc0dd\ud558\uc5ec \ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uac00 %s\uc5d0\uc11c %s(\uc73c)\ub85c\uc758 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc5f0\uacb0\uc744 \uc801\uc808\ud55c \uc694\uccad \ucc98\ub9ac\uae30\uc5d0 \uc62c\ubc14\ub85c \ub4f1\ub85d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=\uad6c\uc131 \ud56d\ubaa9 %s\uc5d0 \uc815\uc758\ub41c LDAP \uc5f0\uacb0 \ucc98\ub9ac\uae30\uac00 \uc0c8 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc5f0\uacb0\uc744 \ud5c8\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=\uad6c\uc131 \ud56d\ubaa9 %s\uc5d0 \uc815\uc758\ub41c LDAP \uc5f0\uacb0 \ucc98\ub9ac\uae30\uc5d0\uc11c \ud074\ub77c\uc774\uc5b8\ud2b8 \uc5f0\uacb0\uc744 \ud5c8\uc6a9\ud558\ub294 \ub3d9\uc548 \uc5f0\uc18d\ud574\uc11c \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s. \uc774 \uc5f0\uacb0 \ucc98\ub9ac\uae30\uac00 \ube44\ud65c\uc131\ud654\ub429\ub2c8\ub2e4.
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=\uad6c\uc131 \ud56d\ubaa9 %s\uc5d0 \uc815\uc758\ub41c LDAP \uc5f0\uacb0 \ucc98\ub9ac\uae30\uc5d0\uc11c \uc0c8 \uc5f0\uacb0\uc744 \uc218\uc2e0\ud558\ub294 \ub3d9\uc548 \uc608\uae30\uce58 \uc54a\uc740 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4: %s. \uc774 \uc5f0\uacb0 \ucc98\ub9ac\uae30\uac00 \ube44\ud65c\uc131\ud654\ub429\ub2c8\ub2e4.
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s\uc774(\uac00) \uc120\ud0dd\uae30\ub97c \uc5f4\uc5b4 \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0\uc11c \uc77d\uae30\ub97c \uba40\ud2f0\ud50c\ub809\uc2f1\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4: %s. \uc774 \uc694\uccad \ucc98\ub9ac\uae30\uac00 \ucc98\ub9ac\ub97c \uacc4\uc18d\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s\uc774(\uac00) \uc774 \ud074\ub77c\uc774\uc5b8\ud2b8 \uc5f0\uacb0\uc744 \uc120\ud0dd\uae30\uc5d0 \ub4f1\ub85d\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4: %s
diff --git a/opends/src/messages/messages/protocol_zh_CN.properties b/opends/src/messages/messages/protocol_zh_CN.properties
index 64cef3b..de146f9 100644
--- a/opends/src/messages/messages/protocol_zh_CN.properties
+++ b/opends/src/messages/messages/protocol_zh_CN.properties
@@ -201,8 +201,6 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=\u5df2\u62d2\u7edd\u4ece\u5ba2\u6237\u7aef %s \u5230 %s \u7684\u8fde\u63a5\u5c1d\u8bd5\uff0c\u56e0\u4e3a\u8be5\u5ba2\u6237\u7aef\u5305\u542b\u5728\u67d0\u4e2a\u62d2\u7edd\u7684\u5730\u5740\u8303\u56f4\u5185
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=\u5df2\u62d2\u7edd\u4ece\u5ba2\u6237\u7aef %s \u5230 %s \u7684\u8fde\u63a5\u5c1d\u8bd5\uff0c\u56e0\u4e3a\u8be5\u5ba2\u6237\u7aef\u4e0d\u5305\u542b\u5728\u67d0\u4e2a\u5141\u8bb8\u7684\u5730\u5740\u8303\u56f4\u5185
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=\u51fa\u73b0\u5185\u90e8\u9519\u8bef\uff0c\u5bfc\u81f4\u76ee\u5f55\u670d\u52a1\u5668\u65e0\u6cd5\u5728\u76f8\u5e94\u7684\u8bf7\u6c42\u5904\u7406\u7a0b\u5e8f\u4e2d\u6b63\u786e\u6ce8\u518c\u4ece %s \u5230 %s \u7684\u5ba2\u6237\u7aef\u8fde\u63a5: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=\u914d\u7f6e\u6761\u76ee %s \u4e2d\u5b9a\u4e49\u7684 LDAP \u8fde\u63a5\u5904\u7406\u7a0b\u5e8f\u65e0\u6cd5\u63a5\u53d7\u65b0\u7684\u5ba2\u6237\u7aef\u8fde\u63a5: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=\u914d\u7f6e\u6761\u76ee %s \u4e2d\u5b9a\u4e49\u7684 LDAP \u8fde\u63a5\u5904\u7406\u7a0b\u5e8f\u5728\u5c1d\u8bd5\u63a5\u53d7\u5ba2\u6237\u7aef\u8fde\u63a5\u65f6\u8fde\u7eed\u5931\u8d25: %s\u3002\u5c06\u7981\u7528\u8be5\u8fde\u63a5\u5904\u7406\u7a0b\u5e8f
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=\u914d\u7f6e\u6761\u76ee %s \u4e2d\u5b9a\u4e49\u7684 LDAP \u8fde\u63a5\u5904\u7406\u7a0b\u5e8f\u5728\u5c1d\u8bd5\u4fa6\u542c\u65b0\u8fde\u63a5\u65f6\u51fa\u73b0\u610f\u5916\u9519\u8bef: %s\u3002\u5c06\u7981\u7528\u8be5\u8fde\u63a5\u5904\u7406\u7a0b\u5e8f
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s \u65e0\u6cd5\u6253\u5f00\u9009\u5b9a\u5668\u4ee5\u4ece\u5ba2\u6237\u7aef\u591a\u8def\u590d\u7528\u8bfb\u53d6: %s\u3002\u8be5\u8bf7\u6c42\u5904\u7406\u7a0b\u5e8f\u65e0\u6cd5\u7ee7\u7eed\u5904\u7406
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s \u65e0\u6cd5\u4f7f\u7528\u9009\u5b9a\u5668\u6ce8\u518c\u8be5\u5ba2\u6237\u7aef\u8fde\u63a5: %s
diff --git a/opends/src/messages/messages/protocol_zh_TW.properties b/opends/src/messages/messages/protocol_zh_TW.properties
index 77d9f0a..2703419 100644
--- a/opends/src/messages/messages/protocol_zh_TW.properties
+++ b/opends/src/messages/messages/protocol_zh_TW.properties
@@ -201,8 +201,6 @@
MILD_ERR_CONNHANDLER_DENIED_CLIENT_180=\u5f9e\u7528\u6236\u7aef %s \u81f3 %s \u7684\u9023\u7dda\u5617\u8a66\u5df2\u88ab\u62d2\u7d55\uff0c\u56e0\u70ba\u8a72\u7528\u6236\u7aef\u5df2\u88ab\u7d0d\u5165\u62d2\u7d55\u7684\u4f4d\u5740\u7bc4\u570d\u4e4b\u4e00
MILD_ERR_CONNHANDLER_DISALLOWED_CLIENT_181=\u5f9e\u7528\u6236\u7aef %s \u81f3 %s \u7684\u9023\u7dda\u5617\u8a66\u5df2\u88ab\u62d2\u7d55\uff0c\u56e0\u70ba\u8a72\u7528\u6236\u7aef\u4e26\u672a\u7d0d\u5165\u5141\u8a31\u7684\u4f4d\u5740\u7bc4\u570d\u4e4b\u4e00
INFO_CONNHANDLER_UNABLE_TO_REGISTER_CLIENT_182=\u767c\u751f\u5167\u90e8\u932f\u8aa4\uff0c\u4f7f\u76ee\u9304\u4f3a\u670d\u5668\u7121\u6cd5\u4ee5\u9069\u7576\u7684\u8acb\u6c42\u8655\u7406\u7a0b\u5f0f\u6b63\u78ba\u8a3b\u518a %s \u81f3 %s \u7684\u7528\u6236\u7aef\u9023\u7dda: %s
-MILD_ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION_183=\u914d\u7f6e\u9805\u76ee %s \u4e2d\u6240\u5b9a\u7fa9\u7684 LDAP \u9023\u7dda\u8655\u7406\u7a0b\u5f0f\u7121\u6cd5\u63a5\u53d7\u65b0\u7684\u7528\u6236\u7aef\u9023\u7dda: %s
-FATAL_ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES_184=\u914d\u7f6e\u9805\u76ee %s \u4e2d\u6240\u5b9a\u7fa9\u7684 LDAP \u9023\u7dda\u8655\u7406\u7a0b\u5f0f\u5728\u5617\u8a66\u63a5\u53d7\u7528\u6236\u7aef\u9023\u7dda\u6642\u9023\u7e8c\u5931\u6557\u6578\u6b21: %s\u3002\u6b64\u9023\u7dda\u8655\u7406\u7a0b\u5f0f\u5c07\u6703\u505c\u7528
FATAL_ERR_LDAP_CONNHANDLER_UNCAUGHT_ERROR_185=\u914d\u7f6e\u9805\u76ee %s \u4e2d\u6240\u5b9a\u7fa9\u7684 LDAP \u9023\u7dda\u8655\u7406\u7a0b\u5f0f\u5728\u5617\u8a66\u5075\u807d\u65b0\u9023\u7dda\u6642\uff0c\u767c\u751f\u672a\u9810\u671f\u7684\u932f\u8aa4: %s\u3002\u6b64\u9023\u7dda\u8655\u7406\u7a0b\u5f0f\u5c07\u6703\u505c\u7528
FATAL_ERR_LDAP_REQHANDLER_OPEN_SELECTOR_FAILED_186=%s \u7121\u6cd5\u958b\u555f\u9078\u64c7\u5668\u8b93\u8b80\u53d6\u7528\u6236\u7aef\u7684\u4f5c\u696d\u591a\u5de5\u5316: %s\u3002\u6b64\u8acb\u6c42\u8655\u7406\u7a0b\u5f0f\u7121\u6cd5\u7e7c\u7e8c\u9032\u884c\u8655\u7406
FATAL_ERR_LDAP_REQHANDLER_CANNOT_REGISTER_187=%s \u7121\u6cd5\u4ee5\u9078\u64c7\u5668\u8a3b\u518a\u6b64\u7528\u6236\u7aef\u9023\u7dda: %s
diff --git a/opends/src/server/org/opends/server/protocols/http/HTTPConnectionHandler.java b/opends/src/server/org/opends/server/protocols/http/HTTPConnectionHandler.java
index b6afd3b..73e412c 100644
--- a/opends/src/server/org/opends/server/protocols/http/HTTPConnectionHandler.java
+++ b/opends/src/server/org/opends/server/protocols/http/HTTPConnectionHandler.java
@@ -30,6 +30,7 @@
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.loggers.ErrorLogger.*;
import static org.opends.server.loggers.debug.DebugLogger.*;
+import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
import java.io.File;
@@ -142,6 +143,9 @@
*/
private volatile boolean shutdownRequested;
+ /** Indicates whether this connection handler is enabled. */
+ private boolean enabled;
+
/** The set of listeners for this connection handler. */
private List<HostPort> listeners = new LinkedList<HostPort>();
@@ -181,9 +185,7 @@
*/
private final Object waitListen = new Object();
- /**
- * The friendly name of this connection handler.
- */
+ /** The friendly name of this connection handler. */
private String friendlyName;
/**
@@ -279,6 +281,7 @@
this.initConfig = config;
this.currentConfig = config;
+ this.enabled = this.currentConfig.isEnabled();
return new ConfigChangeResult(ResultCode.SUCCESS, adminActionRequired,
messages);
@@ -373,8 +376,12 @@
@Override
public LinkedHashMap<String, String> getAlerts()
{
- // TODO Auto-generated method stub
- return null;
+ LinkedHashMap<String, String> alerts = new LinkedHashMap<String, String>();
+
+ alerts.put(ALERT_TYPE_HTTP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES,
+ ALERT_DESCRIPTION_HTTP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES);
+
+ return alerts;
}
/** {@inheritDoc} */
@@ -535,6 +542,7 @@
this.initConfig = config;
this.currentConfig = config;
+ this.enabled = this.currentConfig.isEnabled();
}
private String getHandlerName(HTTPConnectionHandlerCfg config)
@@ -558,8 +566,7 @@
{
HTTPConnectionHandlerCfg config = (HTTPConnectionHandlerCfg) configuration;
- if ((currentConfig == null)
- || (!currentConfig.isEnabled() && config.isEnabled()))
+ if ((currentConfig == null) || (!this.enabled && config.isEnabled()))
{
// Attempt to bind to the listen port on all configured addresses to
// verify whether the connection handler will be able to start.
@@ -713,11 +720,12 @@
{
setName(handlerName);
+ boolean lastIterationFailed = false;
while (!shutdownRequested)
{
// If this connection handler is not enabled, then just sleep
// for a bit and check again.
- if (!currentConfig.isEnabled())
+ if (!this.enabled)
{
if (isListening())
{
@@ -735,17 +743,65 @@
continue;
}
- // If we have gotten here, then we are about to start listening
- // for the first time since startup or since we were previously
- // disabled. Start the embedded HTTP server
- startHttpServer();
+ try
+ {
+ // At this point, the connection Handler either started
+ // correctly or failed to start but the start process
+ // should be notified and resume its work in any cases.
+ synchronized (waitListen)
+ {
+ waitListen.notify();
+ }
+
+ // If we have gotten here, then we are about to start listening
+ // for the first time since startup or since we were previously
+ // disabled. Start the embedded HTTP server
+ startHttpServer();
+ lastIterationFailed = false;
+ }
+ catch (Exception e)
+ {
+ // clean up the messed up HTTP server
+ cleanUpHttpServer();
+
+ // error + alert about the horked config
+ if (debugEnabled())
+ {
+ TRACER.debugCaught(DebugLogLevel.ERROR, e);
+ }
+
+ logError(ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION.get(friendlyName,
+ String.valueOf(currentConfig.dn()), getExceptionMessage(e)));
+
+ if (lastIterationFailed)
+ {
+ // The last time through the accept loop we also
+ // encountered a failure. Rather than enter a potential
+ // infinite loop of failures, disable this acceptor and
+ // log an error.
+ Message message =
+ ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES.get(friendlyName,
+ String.valueOf(currentConfig.dn()),
+ stackTraceToSingleLineString(e));
+ logError(message);
+
+ DirectoryServer.sendAlertNotification(this,
+ ALERT_TYPE_HTTP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES, message);
+
+ this.enabled = false;
+ }
+ else
+ {
+ lastIterationFailed = true;
+ }
+ }
}
// Initiate shutdown
stopHttpServer();
}
- private void startHttpServer()
+ private void startHttpServer() throws Exception
{
// silence Grizzly's own logging
Logger.getLogger("org.glassfish.grizzly").setLevel(Level.OFF);
@@ -768,84 +824,67 @@
setHttpStatsProbe();
}
- try
+ for (NetworkListener listener : this.httpServer.getListeners())
{
- for (NetworkListener listener : this.httpServer.getListeners())
+ TCPNIOTransport transport = listener.getTransport();
+ transport.setReuseAddress(currentConfig.isAllowTCPReuseAddress());
+ transport.setKeepAlive(currentConfig.isUseTCPKeepAlive());
+ transport.setTcpNoDelay(currentConfig.isUseTCPNoDelay());
+ transport.setWriteTimeout(currentConfig.getMaxBlockedWriteTimeLimit(),
+ TimeUnit.MILLISECONDS);
+
+ int bufferSize = (int) currentConfig.getBufferSize();
+ transport.setReadBufferSize(bufferSize);
+ transport.setWriteBufferSize(bufferSize);
+ transport.setIOStrategy(SameThreadIOStrategy.getInstance());
+ final int numRequestHandlers =
+ getNumRequestHandlers(currentConfig.getNumRequestHandlers(),
+ friendlyName);
+ transport.setSelectorRunnersCount(numRequestHandlers);
+ transport.setServerConnectionBackLog(currentConfig.getAcceptBacklog());
+
+ if (sslContext != null)
{
- TCPNIOTransport transport = listener.getTransport();
- transport.setReuseAddress(currentConfig.isAllowTCPReuseAddress());
- transport.setKeepAlive(currentConfig.isUseTCPKeepAlive());
- transport.setTcpNoDelay(currentConfig.isUseTCPNoDelay());
- transport.setWriteTimeout(currentConfig.getMaxBlockedWriteTimeLimit(),
- TimeUnit.MILLISECONDS);
-
- int bufferSize = (int) currentConfig.getBufferSize();
- transport.setReadBufferSize(bufferSize);
- transport.setWriteBufferSize(bufferSize);
- transport.setIOStrategy(SameThreadIOStrategy.getInstance());
- final int numRequestHandlers = getNumRequestHandlers(
- currentConfig.getNumRequestHandlers(), friendlyName);
- transport.setSelectorRunnersCount(numRequestHandlers);
- transport.setServerConnectionBackLog(currentConfig.getAcceptBacklog());
-
- if (sslContext != null)
- {
- listener.setSecure(true);
- listener.setSSLEngineConfig(new SSLEngineConfigurator(sslContext));
- }
- }
-
- final String servletName = "OpenDJ Rest2LDAP servlet";
- final String urlPattern = "/*";
- final WebappContext ctx = new WebappContext(servletName);
-
- final JsonValue configuration =
- parseJsonConfiguration(getFileForPath(this.currentConfig
- .getConfigFile()));
-
- final HTTPAuthenticationConfig authenticationConfig =
- getAuthenticationConfig(configuration);
-
- javax.servlet.Filter filter =
- new CollectClientConnectionsFilter(this, authenticationConfig);
- FilterRegistration filterReg =
- ctx.addFilter("collectClientConnections", filter);
- // TODO JNR this is not working
- // filterReg.addMappingForServletNames(EnumSet.allOf(
- // DispatcherType.class), servletName);
- filterReg.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST),
- true, urlPattern);
-
- ConnectionFactory connFactory = getConnectionFactory(configuration);
-
- final ServletRegistration reg =
- ctx.addServlet(servletName, new HttpServlet(connFactory,
- // Used for hooking our HTTPClientConnection in Rest2LDAP
- Rest2LDAPContextFactory.getHttpServletContextFactory()));
- reg.addMapping(urlPattern);
-
- ctx.deploy(this.httpServer);
-
- TRACER.debugInfo("Starting HTTP server...");
- this.httpServer.start();
- TRACER.debugInfo("HTTP server started");
- logError(NOTE_CONNHANDLER_STARTED_LISTENING.get(handlerName));
-
- // At this point, the connection Handler either started
- // correctly or failed to start but the start process
- // should be notified and resume its work in any cases.
- synchronized (waitListen)
- {
- waitListen.notify();
+ listener.setSecure(true);
+ listener.setSSLEngineConfig(new SSLEngineConfigurator(sslContext));
}
}
- catch (Exception e)
- {
- if (debugEnabled())
- {
- TRACER.debugCaught(DebugLogLevel.ERROR, e);
- }
- }
+
+ final String servletName = "OpenDJ Rest2LDAP servlet";
+ final String urlPattern = "/*";
+ final WebappContext ctx = new WebappContext(servletName);
+
+ final JsonValue configuration =
+ parseJsonConfiguration(getFileForPath(this.currentConfig
+ .getConfigFile()));
+
+ final HTTPAuthenticationConfig authenticationConfig =
+ getAuthenticationConfig(configuration);
+
+ javax.servlet.Filter filter =
+ new CollectClientConnectionsFilter(this, authenticationConfig);
+ FilterRegistration filterReg =
+ ctx.addFilter("collectClientConnections", filter);
+ // TODO JNR this is not working
+ // filterReg.addMappingForServletNames(EnumSet.allOf(
+ // DispatcherType.class), servletName);
+ filterReg.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST),
+ true, urlPattern);
+
+ ConnectionFactory connFactory = getConnectionFactory(configuration);
+
+ final ServletRegistration reg =
+ ctx.addServlet(servletName, new HttpServlet(connFactory,
+ // Used for hooking our HTTPClientConnection in Rest2LDAP
+ Rest2LDAPContextFactory.getHttpServletContextFactory()));
+ reg.addMapping(urlPattern);
+
+ ctx.deploy(this.httpServer);
+
+ TRACER.debugInfo("Starting HTTP server...");
+ this.httpServer.start();
+ TRACER.debugInfo("HTTP server started");
+ logError(NOTE_CONNHANDLER_STARTED_LISTENING.get(handlerName));
}
private void setHttpStatsProbe()
@@ -926,12 +965,20 @@
private void stopHttpServer()
{
- TRACER.debugInfo("Stopping HTTP server...");
- this.httpServer.stop();
+ if (this.httpServer != null)
+ {
+ TRACER.debugInfo("Stopping HTTP server...");
+ this.httpServer.stop();
+ cleanUpHttpServer();
+ TRACER.debugInfo("HTTP server stopped");
+ logError(NOTE_CONNHANDLER_STOPPED_LISTENING.get(handlerName));
+ }
+ }
+
+ private void cleanUpHttpServer()
+ {
this.httpServer = null;
this.httpProbe = null;
- TRACER.debugInfo("HTTP server stopped");
- logError(NOTE_CONNHANDLER_STOPPED_LISTENING.get(handlerName));
}
/** {@inheritDoc} */
diff --git a/opends/src/server/org/opends/server/protocols/ldap/LDAPConnectionHandler.java b/opends/src/server/org/opends/server/protocols/ldap/LDAPConnectionHandler.java
index f58d39e..6cd4baa 100644
--- a/opends/src/server/org/opends/server/protocols/ldap/LDAPConnectionHandler.java
+++ b/opends/src/server/org/opends/server/protocols/ldap/LDAPConnectionHandler.java
@@ -1059,7 +1059,7 @@
TRACER.debugCaught(DebugLogLevel.ERROR, e);
}
- logError(ERR_LDAP_CONNHANDLER_CANNOT_ACCEPT_CONNECTION.get(
+ logError(ERR_CONNHANDLER_CANNOT_ACCEPT_CONNECTION.get(friendlyName,
String.valueOf(currentConfig.dn()), getExceptionMessage(e)));
if (lastIterationFailed)
@@ -1068,8 +1068,8 @@
// encountered a failure. Rather than enter a potential
// infinite loop of failures, disable this acceptor and
// log an error.
- Message message = ERR_LDAP_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES
- .get(String.valueOf(currentConfig.dn()),
+ Message message = ERR_CONNHANDLER_CONSECUTIVE_ACCEPT_FAILURES
+ .get(friendlyName, String.valueOf(currentConfig.dn()),
stackTraceToSingleLineString(e));
logError(message);
diff --git a/opends/src/server/org/opends/server/util/ServerConstants.java b/opends/src/server/org/opends/server/util/ServerConstants.java
index 2088786..c1d55cc 100644
--- a/opends/src/server/org/opends/server/util/ServerConstants.java
+++ b/opends/src/server/org/opends/server/util/ServerConstants.java
@@ -1726,6 +1726,25 @@
ALERT_TYPE_LDAP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES =
"org.opends.server.LDAPHandlerDisabledByConsecutiveFailures";
+ /**
+ * The description for the alert type that will be used for the alert
+ * notification generated if consecutive failures in the HTTP connection
+ * handler have caused it to become disabled.
+ */
+ public static final String
+ ALERT_DESCRIPTION_HTTP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES =
+ "This alert type will be used to notify administrators of " +
+ "consecutive failures that have occurred in the HTTP connection " +
+ "handler that have caused it to become disabled.";
+
+ /**
+ * The alert type string that will be used for the alert notification
+ * generated if consecutive failures in the HTTP connection handler have
+ * caused it to become disabled.
+ */
+ public static final String
+ ALERT_TYPE_HTTP_CONNECTION_HANDLER_CONSECUTIVE_FAILURES =
+ "org.opends.server.HTTPHandlerDisabledByConsecutiveFailures";
/**
--
Gitblit v1.10.0