Exemplo n.º 1
0
  public boolean openSystemBrowser(String url) {
    try {
      for (String command : getOpenCommands()) {
        if (openSystemBrowser(command, url)) {
          return true;
        }
      }
    } catch (Throwable ex) {
      // $FALL-THROUGH$
    }

    try {
      // java.awt.Desktop was introduced with Java 1.6!
      Class<?> desktopClass =
          CommonPlugin.loadClass(UtilPlugin.INSTANCE.getSymbolicName(), "java.awt.Desktop");
      Method getDesktopMethod = ReflectUtil.getMethod(desktopClass, "getDesktop");
      Method browseMethod = ReflectUtil.getMethod(desktopClass, "browse", URI.class);

      Object desktop = getDesktopMethod.invoke(null);
      browseMethod.invoke(desktop, new URI(url));
      return true;
    } catch (Throwable ex) {
      UtilPlugin.INSTANCE.log(ex, IStatus.WARNING);
    }

    return false;
  }