chemistry-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From f...@apache.org
Subject svn commit: r1541979 - in /chemistry/opencmis/trunk: chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/ chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/...
Date Thu, 14 Nov 2013 17:00:32 GMT
Author: fmui
Date: Thu Nov 14 17:00:32 2013
New Revision: 1541979

URL: http://svn.apache.org/r1541979
Log:
Workbench: improved error handling at login

Added:
    chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java
  (with props)
Modified:
    chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/AbstractAtomPubService.java
    chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/browser/AbstractBrowserBindingService.java
    chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/webservices/AbstractPortProvider.java
    chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-impl/src/main/java/org/apache/chemistry/opencmis/commons/impl/MimeTypes.java
    chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ClientHelper.java
    chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/LoginDialog.java

Modified: chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/AbstractAtomPubService.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/AbstractAtomPubService.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/AbstractAtomPubService.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/atompub/AbstractAtomPubService.java
Thu Nov 14 17:00:32 2013
@@ -451,6 +451,12 @@ public abstract class AbstractAtomPubSer
         message = extractErrorMessage(message, errorContent);
 
         switch (code) {
+        case 301:
+        case 302:
+        case 303:
+        case 307:
+            return new CmisConnectionException("Redirects are not supported (HTTP status
code " + code + "): "
+                    + message, errorContent, t);
         case 400:
             if (CmisFilterNotValidException.EXCEPTION_NAME.equals(exception)) {
                 return new CmisFilterNotValidException(message, errorContent, t);

Modified: chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/browser/AbstractBrowserBindingService.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/browser/AbstractBrowserBindingService.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/browser/AbstractBrowserBindingService.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/browser/AbstractBrowserBindingService.java
Thu Nov 14 17:00:32 2013
@@ -254,6 +254,12 @@ public abstract class AbstractBrowserBin
 
         // fall back to status code
         switch (code) {
+        case 301:
+        case 302:
+        case 303:
+        case 307:
+            return new CmisConnectionException("Redirects are not supported (HTTP status
code " + code + "): "
+                    + message, errorContent, t);
         case 400:
             return new CmisInvalidArgumentException(message, errorContent, t);
         case 401:

Modified: chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/webservices/AbstractPortProvider.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/webservices/AbstractPortProvider.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/webservices/AbstractPortProvider.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/main/java/org/apache/chemistry/opencmis/client/bindings/spi/webservices/AbstractPortProvider.java
Thu Nov 14 17:00:32 2013
@@ -54,6 +54,7 @@ import org.apache.chemistry.opencmis.com
 import org.apache.chemistry.opencmis.commons.enums.CmisVersion;
 import org.apache.chemistry.opencmis.commons.exceptions.CmisBaseException;
 import org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisObjectNotFoundException;
 import org.apache.chemistry.opencmis.commons.exceptions.CmisProxyAuthenticationException;
 import org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException;
 import org.apache.chemistry.opencmis.commons.exceptions.CmisUnauthorizedException;
@@ -519,8 +520,14 @@ public abstract class AbstractPortProvid
             String message = "Cannot connect to Web Services [" + service.getServiceName()
+ "]: " + he.getMessage();
             if (he.getStatusCode() == 401) {
                 throw new CmisUnauthorizedException(message, he);
+            } else if (he.getStatusCode() == 404) {
+                throw new CmisObjectNotFoundException(message, he);
             } else if (he.getStatusCode() == 407) {
                 throw new CmisProxyAuthenticationException(message, he);
+            } else if (he.getStatusCode() == 301 || he.getStatusCode() == 302 || he.getStatusCode()
== 303
+                    || he.getStatusCode() == 307) {
+                throw new CmisConnectionException("Redirects are not supported (HTTP status
code " + he.getStatusCode()
+                        + "): " + message, he);
             } else {
                 throw new CmisConnectionException(message, he);
             }

Modified: chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-impl/src/main/java/org/apache/chemistry/opencmis/commons/impl/MimeTypes.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-impl/src/main/java/org/apache/chemistry/opencmis/commons/impl/MimeTypes.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-impl/src/main/java/org/apache/chemistry/opencmis/commons/impl/MimeTypes.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-impl/src/main/java/org/apache/chemistry/opencmis/commons/impl/MimeTypes.java
Thu Nov 14 17:00:32 2013
@@ -40,6 +40,7 @@ public final class MimeTypes {
         EXT2MIME.put("aif", "audio/x-aiff");
         EXT2MIME.put("aifc", "audio/x-aiff");
         EXT2MIME.put("aiff", "audio/x-aiff");
+        EXT2MIME.put("apk", "application/vnd.android.package-archive");
         EXT2MIME.put("asf", "video/x-ms-asf");
         EXT2MIME.put("asr", "video/x-ms-asf");
         EXT2MIME.put("asx", "video/x-ms-asf");
@@ -281,6 +282,7 @@ public final class MimeTypes {
         MIME2EXT.put("application/pkix-crl", "crl");
         MIME2EXT.put("application/postscript", "ps");
         MIME2EXT.put("application/rtf", "rtf");
+        MIME2EXT.put("application/vnd.android.package-archive", "apk");
         MIME2EXT.put("application/vnd.apple.keynote", "key");
         MIME2EXT.put("application/vnd.apple.numbers", "numbers");
         MIME2EXT.put("application/vnd.apple.pages", "pages");

Modified: chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ClientHelper.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ClientHelper.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ClientHelper.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ClientHelper.java
Thu Nov 14 17:00:32 2013
@@ -100,7 +100,7 @@ public final class ClientHelper {
     private ClientHelper() {
     }
 
-    public static void showError(Component parent, Exception ex) {
+    public static void logError(Exception ex) {
         if (LOG.isErrorEnabled()) {
             LOG.error(ex.getClass().getSimpleName() + ": " + ex.getMessage(), ex);
 
@@ -120,6 +120,10 @@ public final class ClientHelper {
                 }
             }
         }
+    }
+
+    public static void showError(Component parent, Exception ex) {
+        logError(ex);
 
         String exceptionName = ex.getClass().getSimpleName();
         if (ex instanceof CmisBaseException) {
@@ -628,7 +632,8 @@ public final class ClientHelper {
                 public void actionPerformed(ActionEvent e) {
                     AttributeSet style = console.getOutputStyle();
                     console.clearOutput();
-                    console.appendOutputNl("Repository id:   " + groovySession.getRepositoryInfo().getId(),
style);
+                    console.appendOutputNl("Session ID:      " + groovySession.getBinding().getSessionId(),
style);
+                    console.appendOutputNl("Repository ID:   " + groovySession.getRepositoryInfo().getId(),
style);
                     console.appendOutputNl("Repository name: " + groovySession.getRepositoryInfo().getName(),
style);
                     console.appendOutputNl("Binding:         " + bindingType, style);
                     console.appendOutputNl("User:            " + user, style);

Added: chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java?rev=1541979&view=auto
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java
(added)
+++ chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java
Thu Nov 14 17:00:32 2013
@@ -0,0 +1,223 @@
+/*
+ * 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.
+ */
+package org.apache.chemistry.opencmis.workbench;
+
+import java.awt.BorderLayout;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+import java.net.UnknownHostException;
+import java.util.Locale;
+
+import javax.net.ssl.SSLException;
+import javax.swing.BorderFactory;
+import javax.swing.BoxLayout;
+import javax.swing.JButton;
+import javax.swing.JDialog;
+import javax.swing.JEditorPane;
+import javax.swing.JFrame;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
+import javax.xml.stream.XMLStreamException;
+
+import org.apache.chemistry.opencmis.commons.exceptions.CmisConnectionException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisNotSupportedException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisObjectNotFoundException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisPermissionDeniedException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisProxyAuthenticationException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException;
+import org.apache.chemistry.opencmis.commons.exceptions.CmisUnauthorizedException;
+import org.apache.chemistry.opencmis.commons.impl.json.parser.JSONParseException;
+import org.xml.sax.SAXParseException;
+
+public class ConnectionErrorDialog extends JDialog {
+
+    private static final long serialVersionUID = 1L;
+
+    public static final String HTTP_PROXY_HOST = "http.proxyHost";
+    public static final String HTTP_PROXY_PORT = "http.proxyPort";
+    public static final String HTTPS_PROXY_HOST = "https.proxyHost";
+    public static final String HTTPS_PROXY_PORT = "https.proxyPort";
+    public static final String HTTP_NON_PROXY_HOSTS = "http.nonProxyHosts";
+
+    private final Exception exception;
+
+    public ConnectionErrorDialog(JDialog owner, Exception exception) {
+        super(owner, "Connection Error", true);
+        this.exception = exception;
+
+        ClientHelper.logError(exception);
+
+        createGUI();
+    }
+
+    private void createGUI() {
+        setMinimumSize(new Dimension(600, 400));
+        setPreferredSize(new Dimension(600, 450));
+
+        setLayout(new BorderLayout());
+
+        StringBuilder hint = new StringBuilder();
+        hint.append("<h2><font color=\"red\">Exception: <em>" + exception.getClass().getSimpleName()
+                + "</em></font><br>" + exception.getMessage() + "</h2>");
+        if (exception.getCause() != null) {
+            hint.append("<h3><font color=\"red\">Cause: <em>" + exception.getCause().getClass().getSimpleName()
+                    + "</em></font><br>" + exception.getCause().getMessage()
+ "</h3>");
+        }
+        hint.append("<hr><br>");
+        hint.append(getHint());
+
+        // hint area
+        JPanel hintsPanel = new JPanel();
+        hintsPanel.setLayout(new BoxLayout(hintsPanel, BoxLayout.PAGE_AXIS));
+        hintsPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
+        add(hintsPanel, BorderLayout.CENTER);
+
+        JEditorPane hints = new JEditorPane("text/html", hint.toString());
+        hints.setEditable(false);
+
+        hintsPanel.add(new JScrollPane(hints, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+                JScrollPane.HORIZONTAL_SCROLLBAR_NEVER));
+
+        // close button
+        JPanel buttonPanel = new JPanel();
+        buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.PAGE_AXIS));
+        buttonPanel.setBorder(BorderFactory.createEmptyBorder(0, 5, 5, 5));
+        add(buttonPanel, BorderLayout.PAGE_END);
+
+        JButton closeButton = new JButton("Close");
+        closeButton.setPreferredSize(new Dimension(Short.MAX_VALUE, 30));
+        closeButton.setMaximumSize(new Dimension(Short.MAX_VALUE, Short.MAX_VALUE));
+        closeButton.setAlignmentX(Component.CENTER_ALIGNMENT);
+
+        closeButton.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                ConnectionErrorDialog.this.dispose();
+            }
+        });
+
+        buttonPanel.add(closeButton);
+
+        getRootPane().setDefaultButton(closeButton);
+
+        ClientHelper.installKeyBindings();
+        ClientHelper.installEscapeBinding(this, getRootPane(), true);
+
+        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+        pack();
+        setLocationRelativeTo(getOwner());
+
+        setVisible(true);
+    }
+
+    private String getHint() {
+        if (exception instanceof CmisObjectNotFoundException || exception instanceof CmisNotSupportedException)
{
+            return "The CMIS Workbench could connect to the server but the provided URL is
not a CMIS endpoint URL."
+                    + "<br>Check your URL and proxy settings." + getProxyConfig();
+        } else if (exception instanceof CmisUnauthorizedException) {
+            return "The provide credentials are invalid.<br>Check your credentials.";
+        } else if (exception instanceof CmisPermissionDeniedException) {
+            return "The provide credentials are invalid or the user has no permission to
connect."
+                    + "<br>Check your credentials.";
+        } else if (exception instanceof CmisProxyAuthenticationException) {
+            return "The proxy server requires valid credentials.<br>Check the session
parameters "
+                    + "'org.apache.chemistry.opencmis.binding.proxyuser' and "
+                    + "'org.apache.chemistry.opencmis.binding.proxypassword'." + getProxyConfig();
+        } else if (exception instanceof CmisRuntimeException) {
+            return "Something fatal happend on the client or server side."
+                    + "<br>Check your URL, the binding, and your proxy settings."
+                    + "<br>Also see the CMIS Workbench log for more details." + getProxyConfig();
+        } else if (exception instanceof CmisConnectionException) {
+            Throwable cause = exception.getCause();
+            while (cause instanceof CmisConnectionException) {
+                cause = cause.getCause();
+            }
+
+            if (cause instanceof MalformedURLException || cause instanceof URISyntaxException)
{
+                return "The provided URL is not a valid URL.<br>Check your URL.";
+            } else if (cause instanceof UnknownHostException) {
+                return "The CMIS Workbench could not connect to the server."
+                        + "<br>Check your URL and your network and proxy settings."
+ getProxyConfig();
+            } else if (cause instanceof SSLException) {
+                return "The CMIS Workbench could not establish a SSL connection to the server."
+                        + "<br>Check your network and proxy settings."
+                        + "<br><br>If you want to connect to a server with a
self-signed certificate, "
+                        + "add the parameter <code>-Dcmis.workbench.acceptSelfSignedCertificates=true</code>
"
+                        + "to the JAVA_OPTS in the CMIS Workbench start script and restart."
+                        + "<br><b>WARNING:</b> It disables <em>all</em>
SSL certificate checks!" + getProxyConfig();
+            } else if (cause instanceof JSONParseException) {
+                return "The provided URL does not return a JSON response."
+                        + "<br>Check your URL, the binding, and your proxy settings."
+ getProxyConfig();
+            } else if (cause instanceof XMLStreamException) {
+                return "The provided URL does not return an AtomPub response."
+                        + "<br>Check your URL, the binding, and your proxy settings."
+ getProxyConfig();
+            } else if (cause instanceof SAXParseException) {
+                return "The provided URL does not return a WSDL."
+                        + "<br>Check your URL, the binding, and your proxy settings."
+ getProxyConfig();
+            } else if (cause instanceof IOException) {
+                return "A network problem occured.<br>Check your URL and your network
and proxy settings."
+                        + getProxyConfig();
+            }
+
+            if (exception.getMessage().toLowerCase(Locale.ENGLISH).startsWith("unexpected
document")) {
+                return "The provided URL does not return a AtomPub response."
+                        + "<br>Check your URL, the binding, and your proxy settings."
+ getProxyConfig();
+            }
+
+            return "Check the URL, the binding, and the credentials.";
+        }
+
+        return exception.getMessage();
+    }
+
+    private String getProxyConfig() {
+        StringBuilder sb = new StringBuilder();
+
+        sb.append("<br><br><hr><br><em>Current proxy settings:</em><br><br>");
+
+        if (System.getProperty(HTTP_PROXY_HOST) == null && System.getProperty(HTTPS_PROXY_HOST)
== null) {
+            sb.append("<b>- no proxy settings -</b>");
+        } else {
+            sb.append("<table>");
+            if (System.getProperty(HTTP_PROXY_HOST) != null) {
+                sb.append("<tr><td><b>HTTP proxy:</b></td><td>");
+                sb.append(System.getProperty(HTTP_PROXY_HOST) + ":" + System.getProperty(HTTP_PROXY_PORT));
+                sb.append("</td></tr>");
+            }
+
+            if (System.getProperty(HTTPS_PROXY_HOST) != null) {
+                sb.append("<tr><td><b>HTTPS proxy:</b></td><td>");
+                sb.append(System.getProperty(HTTPS_PROXY_HOST) + ":" + System.getProperty(HTTPS_PROXY_PORT));
+                sb.append("</td></tr>");
+            }
+
+            if (System.getProperty(HTTP_NON_PROXY_HOSTS) != null) {
+                sb.append("<tr><td><b>Non proxy hosts:</b></td><td>");
+                sb.append(System.getProperty(HTTP_NON_PROXY_HOSTS));
+                sb.append("</td></tr>");
+            }
+        }
+
+        return sb.toString();
+    }
+}

Propchange: chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/ConnectionErrorDialog.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/LoginDialog.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/LoginDialog.java?rev=1541979&r1=1541978&r2=1541979&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/LoginDialog.java
(original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-workbench/chemistry-opencmis-workbench/src/main/java/org/apache/chemistry/opencmis/workbench/LoginDialog.java
Thu Nov 14 17:00:32 2013
@@ -155,7 +155,7 @@ public class LoginDialog extends JDialog
                     loginButton.setEnabled(false);
                     getRootPane().setDefaultButton(loadRepositoryButton);
 
-                    ClientHelper.showError(getOwner(), ex);
+                    new ConnectionErrorDialog(LoginDialog.this, ex);
                 } finally {
                     setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
                 }
@@ -180,8 +180,7 @@ public class LoginDialog extends JDialog
                     loginButton.setEnabled(false);
                     getRootPane().setDefaultButton(loadRepositoryButton);
 
-                    ClientHelper.showError(getOwner(), ex);
-
+                    new ConnectionErrorDialog(LoginDialog.this, ex);
                 } finally {
                     setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
                     getRootPane().setDefaultButton(loadRepositoryButton);



Mime
View raw message