added popup warning when proxy settings must be configured.
authorjprocter <Jim Procter>
Tue, 16 May 2006 09:32:56 +0000 (09:32 +0000)
committerjprocter <Jim Procter>
Tue, 16 May 2006 09:32:56 +0000 (09:32 +0000)
src/jalview/ws/Discoverer.java

index 557c7a5..f30cced 100755 (executable)
@@ -34,6 +34,7 @@ import ext.vamsas.*;
 import java.util.Vector;
 import java.util.Hashtable;
 import java.util.StringTokenizer;
+import javax.swing.JOptionPane;
 
 public class Discoverer
     extends Thread implements Runnable
@@ -210,12 +211,23 @@ public class Discoverer
       jalview.bin.Cache.log.debug("Discovering services using " + location);
       shs = locateWebService(location).getServices();
     }
-    catch (Exception e)
-    {
-      jalview.bin.Cache.log.debug("No Discovery service at " +
-                         location);
-      jalview.bin.Cache.log.debug(e);
-
+    catch (org.apache.axis.AxisFault f) {
+      // JBPNote - should do this a better way!
+      if (f.getFaultReason().indexOf("(407)")>-1) {
+        if (jalview.gui.Desktop.desktop!=null)
+          JOptionPane.showMessageDialog(jalview.gui.Desktop.desktop, "Please set up your proxy settings in the 'Connections' tab of the Preferences window",
+                                      "Proxy Authorization Failed",
+                                      JOptionPane.WARNING_MESSAGE);
+      } else {
+        jalview.bin.Cache.log.warn("No Discovery service at " +
+                                   location);
+        jalview.bin.Cache.log.debug("Axis Fault", f);
+      }
+    }
+    catch (Exception e) {
+      jalview.bin.Cache.log.warn("No Discovery service at " +
+                                 location);
+      jalview.bin.Cache.log.debug("Discovery Service General Exception", e);
     }
     if ( (shs != null) && shs.getServices().length > 0)
     {