Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_it.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_it.properties	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_it.properties	(revision )
@@ -26,4 +26,13 @@
 httpstatus-502=Bad Gateway (502)
 httpstatus-503=Service Unavailable (503)
 column-creationDate-header=Creato
-column-createdBy-header=Creato da
\ No newline at end of file
+column-createdBy-header=Creato da
+
+exception-generic=Si è verificato un errore
+exception-java.io.IOException= Errore di comunicazione
+exception-java.net.UnknownHostException=Host sconosciuto
+exception-java.net.MalformedURLException==Indirizzo non valido
+exception-java.net.SocketException=Tentativo di connessione fallito
+exception-java.net.SocketTimeoutException=Tentativo di connessione scaduto
+exception-java.net.UnknownServiceException=Servizio sconosciuto
+exception-java.io.InterruptedIOException=La comunicazione è stata interrotta
\ No newline at end of file
Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_fr.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_fr.properties	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_fr.properties	(revision )
@@ -27,3 +27,12 @@
 httpstatus-500=Internal Server Error (500)
 httpstatus-502=Bad Gateway (502)
 httpstatus-503=Service Unavailable (503)
+
+exception-generic=Une erreur est survenue
+exception-java.io.IOException=Erreur d'E/S
+exception-java.net.UnknownHostException=Ho\u0302te inconnu
+exception-java.net.MalformedURLException=URL malform\u00e9e
+exception-java.net.SocketException=Erreur socket
+exception-java.net.SocketTimeoutException=D\u00e9lai d'attente d\u00e9pass\u00e9
+exception-java.net.UnknownServiceException=Service inconnu
+exception-java.io.InterruptedIOException=E/S interrompue
\ No newline at end of file
Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.properties	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.properties	(revision )
@@ -31,3 +31,13 @@
 httpstatus-500=Internal Server Error (500)
 httpstatus-502=Bad Gateway (502)
 httpstatus-503=Service Unavailable (503)
+
+exception-generic=An error occurred
+exception-java.io.IOException=I/O error
+exception-java.net.UnknownHostException=Unknown host
+exception-java.net.MalformedURLException=Malformed URL
+exception-java.net.SocketException=Socket exception
+exception-java.net.SocketTimeoutException=Socket timeout
+exception-java.net.UnknownServiceException=Unknown service
+exception-java.io.InterruptedIOException=I/O interrupted
+exception-javax.net.ssl.SSLPeerUnverifiedException=Peer's identity couldn't be verified
\ No newline at end of file
Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_de.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_de.properties	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_de.properties	(revision )
@@ -31,3 +31,13 @@
 httpstatus-500=Internal Server Error (500)
 httpstatus-502=Bad Gateway (502)
 httpstatus-503=Service Unavailable (503)
+
+exception-generic=Ein Fehler ist aufgetreten
+exception-java.io.IOException=I/O fehler
+exception-java.net.UnknownHostException=Unknown host
+exception-java.net.MalformedURLException=Fehlerhafte URL
+exception-java.net.SocketException=Sockel ausnahme
+exception-java.net.SocketTimeoutException=Socket timeout
+exception-java.net.UnknownServiceException=Unknown service
+exception-java.io.InterruptedIOException=I/O unterbrochen
+exception-javax.net.ssl.SSLPeerUnverifiedException=Identit\u00E4t konnte nicht verifiziert werden
\ No newline at end of file
Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_nl.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_nl.properties	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns_nl.properties	(revision )
@@ -28,3 +28,12 @@
 httpstatus-500=Internal Server Error (500)
 httpstatus-502=Bad Gateway (502)
 httpstatus-503=Service Unavailable (503)
+
+exception-generic=Er is een fout opgetreden
+exception-java.io.IOException=I/O-fout
+exception-java.net.UnknownHostException=Onbekende host
+exception-java.net.MalformedURLException=Verkeerde gevormde URL
+exception-java.net.SocketException=Socketfout
+exception-java.net.SocketTimeoutException=Socket time-out
+exception-java.net.UnknownServiceException=Onbekende service
+exception-java.io.InterruptedIOException=I/O is onderbroken
\ No newline at end of file
Index: brokenlinks/repository/src/main/java/org/onehippo/cms7/brokenlinks/LinkChecker.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/repository/src/main/java/org/onehippo/cms7/brokenlinks/LinkChecker.java	(revision 38427)
+++ brokenlinks/repository/src/main/java/org/onehippo/cms7/brokenlinks/LinkChecker.java	(revision )
@@ -147,7 +147,7 @@
                             HttpResponse httpResponse = httpClient.execute(httpRequest, httpContext);
                             int headResultCode = httpResponse.getStatusLine().getStatusCode();
                             httpRequest.reset();
-                            if(headResultCode == HttpStatus.SC_METHOD_NOT_ALLOWED) {
+                            if (headResultCode == HttpStatus.SC_METHOD_NOT_ALLOWED) {
                                 httpRequest = new HttpGet(url);
                                 httpResponse = httpClient.execute(httpRequest, httpContext);
                                 headResultCode = httpResponse.getStatusLine().getStatusCode();
@@ -161,8 +161,9 @@
                             }
                         } catch (IOException ex) {
                             link.setBroken(true);
+                            link.setResultCode(Link.EXCEPTION_CODE);
                             link.setBrokenSince(Calendar.getInstance());
-                            link.setResultMessage(ex.toString());
+                            link.setResultMessage(ex.getClass().getCanonicalName());
                         } finally {
                             if ((httpRequest != null) && (!httpRequest.isAborted())) {
                                 httpRequest.reset();
Index: brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.java	(revision 38427)
+++ brokenlinks/frontend/src/main/java/org/onehippo/cms7/reports/plugins/brokenlinkslist/BrokenLinksListColumns.java	(revision )
@@ -40,6 +40,7 @@
 import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
+import org.onehippo.cms7.brokenlinks.Link;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.wicketstuff.js.ext.data.ExtField;
@@ -387,18 +388,24 @@
             while(linksIterator.hasNext()){
                 final Node linkNode = (Node) linksIterator.next();
                 String statusMessage = "";
+                String errorMessage = linkNode.hasProperty("brokenlinks:errorMessage") ? linkNode.getProperty("brokenlinks:errorMessage").getString() : "";
                 int statusCode = linkNode.hasProperty("brokenlinks:errorCode") ?
                         (int) linkNode.getProperty("brokenlinks:errorCode").getLong() :
-                        -1;
+                        Link.ERROR_CODE;
 
-                if (! SUPPORTED_HTTP_STATUS_CODES.contains(statusCode)){
-                    statusCode = -1;
+                if (statusCode == Link.ERROR_CODE) {
+                    statusMessage = errorMessage;
+                } else if (SUPPORTED_HTTP_STATUS_CODES.contains(statusCode)) {
+                    statusMessage = getResourceValue("httpstatus-" + statusCode);
+                } else if (statusCode == Link.EXCEPTION_CODE) {
+                    try {
+                        statusMessage = getResourceValue("exception-" + errorMessage);
+                    } catch (Exception e) {
+                        statusMessage = getResourceValue("exception-generic").concat(": " + errorMessage);
-                }
+                    }
-
-                statusMessage = statusCode == -1 ?
-                        (linkNode.hasProperty("brokenlinks:errorMessage") ? linkNode.getProperty("brokenlinks:errorMessage").getString() : "") :
-                        getResourceValue("httpstatus-" + statusCode);
-
+                } else {
+                    log.info("Unhandled status code: {}", statusCode);
+                }
                 aggregateCell.append(statusMessage).append("<br/>");
             }
             return aggregateCell.toString();
Index: brokenlinks/common/src/main/java/org/onehippo/cms7/brokenlinks/Link.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- brokenlinks/common/src/main/java/org/onehippo/cms7/brokenlinks/Link.java	(revision 38427)
+++ brokenlinks/common/src/main/java/org/onehippo/cms7/brokenlinks/Link.java	(revision )
@@ -21,6 +21,8 @@
 public class Link implements Comparable<Object>, Serializable {
 
     private static final long serialVersionUID = 1289708150121627355L;
+    public static final int EXCEPTION_CODE = 1000;
+    public static final int ERROR_CODE = -1;
 
     private String url;
     private boolean isBroken;
