Opening new default browser from java app

Hi There,
I would like to know if there is away to execute the following in a Java app that will open a new browser window.......in other words, I don't want it to take over the already opened window - just open a new window every time.
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler
www.google.co.nz");Any help with this would be greatly receievd.

There might be. However it would be done by modifying that Windows-specific command that you have in red there. As such it's nothing to do with Java. Searching in Windows-specific websites might get you somewhere.
However Firefox gives the choice (new window, new tab, or same tab in same window) to the user as a configuration option, so I wouldn't bet on getting somewhere. I don't know if IE has a similar configuration option.

Similar Messages

  • Easiest way to launch a link to the default browser from java?

    Is there an easy way to launch a link in the default browser from java? Ideally I would have a graphic in a cell that when clicked on would open a new window/tab in the default browser. This would be done in SWT, but it might be similar to swing, awt, etc. Any ideas?

    If you are using Java 1.5 or earlier, I found the browser launch code found here to work fairly well: http://www.centerkey.com/java/browser

  • How to open a web browser from java

    Hi
    Would anybody please help me with this. I need to open a web browser from my java app but I don't know. What method I can use?
    Thanks.
    Hung.

    You can use the Runtime class for this. It can run any command. So, you can run the .exe file of your Web browser.
    The following code will run Internet Explorer (assuming iexplorer.exe is in C:\Program Files\Internet Explorer):
    import java.lang.Runtime;
    public class Explore{
    public static void main(String[] args) {
    try{
    Process p = Runtime.getRuntime().exec("C:\\Program Files\\Internet Explorer\\iexplore");
    }catch (Exception e) {
    System.out.println("Exception: " + e);

  • Problem with opening browser from Java app.

    Hi guys, I'm not sure if this is the right place to post this, so please excuse me if I'm wrong. I'm trying to open an html page (it's a help file) from a Java application. I'm currently using java.awt.Desktop.     browse(URI uri); which gets the job done, as long as I don't pass any parameters to the page. (e.g. http://www.site.com/site.html?param1=1). Doing that gives me an IOException. Is there a way to do this without using the JNLP API?

    This is the file path copied directly from the browser's address bar:
    file:///home/riaan/EMCHelp/Help.html?page=WorkFlowActivityCategory.html"{code}
    Which causes the app to throw an exception, but when I change it to:
    {code}file:///home/riaan/EMCHelp/Help.html{code}
    it opens Help.html in the browser.  That's why I thought that it might be the query that's a problem.  Perhaps it's a simple issue of not escaping a character or something that I failed to see.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Opening default Browser from embedded Flash

    The Situation is this:
    I have a running flash application myapp.swf (Actionscript
    2), which runs on a server and requires a parameter (
    http://myserver.com/myapp.swf?myparam=value).
    I now want to create an AIR Wrapper for this application. So
    I embed the above URL in a html-based AIR Project using the embed
    tag. When I launch my new AIR Project the application is displayed,
    but when I click on a link within the flash application a new AIR
    window opens, displaying the respective Webpage.
    But it should instead open a new tab or window in the default
    Browser of the respective operating system.
    I have tried the following without success:
    - Attempt to create a flash-based AIR Application. The
    application did not work properly since the swf file is on a server
    and not within the AIR Appplication. If I download the swf-file and
    put it in this directory I can't pass it the required parameter
    - Trying to open a default Browser window like this:
    http://snipplr.com/view/4442/adobe-air-open-new-url-with-sandbox-bridge.
    I belive this only works with a flash-based AIR Application too
    The best solution for me would be, if I could solve the
    problem without having to alter the flash part. But, if neccessary
    changing the flash part would also be an option.
    I really would appreciate any comments / suggestions on this
    matter

    I should probably add, that I am not a very experienced AIR
    Developer.
    quote:
    So lets get this straight, you now have the content
    embedded/loaded within a HTMLLOADER, right?
    Probably not... I have a Html based project. Meaning that I
    refer to an initial html file from my application.xml. In this html
    File I embed the mentioned flash application using the following
    line:
    < embed height="100%" width="100%" src="
    http://myserver.com/myapp.swf?myparam=value"
    />
    Could I use HTMLLoader in a HTML-based AIR app?
    quote:
    And when the AIR APPLICATION is launched, you would want the
    links that are embedded within the HTMLLOADER to open up in a
    browser?
    This is correct, but it should open up the default Browser
    like IE or Firefox but not a new AIR window.
    quote:
    Are you using: navigateToURL(new URLRequest("
    http://" + url), "_blank");
    I am not using navigateToURL since the flash application I am
    working with "does not know" that it is wrapped by an AIR
    application. Therefore, it opens new URLs the way it is normally
    done in a flash stand-alone application.
    As I see it AIR recognises that a link is being called and
    opens a new, AIR window instance.
    I have seen the article about Windows Vista before, but I
    would think that it is not directly related to my problem, since I
    do not have to problem whether links are being opened in, for
    example, Firefox or Internet Explorer but links are opened in a
    build-in AIR Window.
    I hope shed some light on the problem I am having...

  • Launching Browser from Java when Browser URL is very  long

    Hi,
    I am trying to launch a browser from Java.
    I am doing the following.
    String command = "cmd" + "/c" + "start" + " browserURL";
    Process p = Runtime.getRuntime()exec(command);
    Note: My browserURL is very long.
    Now the browser is invoked. But the URL shown is incomplete and hence
    browser is unable to open the required application.
    Can someone help me in this.
    One way is to increase the buffer size on the command prompt?
    Is there any java command for this?
    Is there any other way to solve this issue.
    Thanks,
    AR

    this is my second time posting this, take note of it. I can't remember where i got it from, but credits go to the person that wrote it. It has helped me out thousands of times!!!
    to use, compile, then call from your program:
    org.newio.utils.BrowserLauncher.openURL("your url here")dfwtc
    package org.newio.utils;
    import java.io.File;
    import java.io.IOException;
    import java.lang.reflect.*;
    public class BrowserLauncher
        private static int jvm;
        private static Object browser;
        private static boolean loadedWithoutErrors;
        private static Class mrjFileUtilsClass;
        private static Class mrjOSTypeClass;
        private static Class macOSErrorClass;
        private static Class aeDescClass;
        private static Constructor aeTargetConstructor;
        private static Constructor appleEventConstructor;
        private static Constructor aeDescConstructor;
        private static Method findFolder;
        private static Method getFileType;
        private static Method makeOSType;
        private static Method putParameter;
        private static Method sendNoReply;
        private static Object kSystemFolderType;
        private static Integer keyDirectObject;
        private static Integer kAutoGenerateReturnID;
        private static Integer kAnyTransactionID;
        private static final int MRJ_2_0 = 0;
        private static final int MRJ_2_1 = 1;
        private static final int WINDOWS_NT = 2;
        private static final int WINDOWS_9x = 3;
        private static final int OTHER = -1;
        private static final String FINDER_TYPE = "FNDR";
        private static final String FINDER_CREATOR = "MACS";
        private static final String GURL_EVENT = "GURL";
        private static final String FIRST_WINDOWS_PARAMETER = "/c";
        private static final String SECOND_WINDOWS_PARAMETER = "start";
        private static final String NETSCAPE_OPEN_PARAMETER_START = " -remote 'openURL(";
        private static final String NETSCAPE_OPEN_PARAMETER_END = ")'";
        private static String errorMessage;
        private BrowserLauncher()
        private static boolean loadClasses()
            switch(jvm)
            default:
                break;
            case 0: // '\0'
                try
                    Class aeTargetClass = Class.forName("com.apple.MacOS.AETarget");
                    macOSErrorClass = Class.forName("com.apple.MacOS.MacOSError");
                    Class osUtilsClass = Class.forName("com.apple.MacOS.OSUtils");
                    Class appleEventClass = Class.forName("com.apple.MacOS.AppleEvent");
                    Class aeClass = Class.forName("com.apple.MacOS.ae");
                    aeDescClass = Class.forName("com.apple.MacOS.AEDesc");
                    aeTargetConstructor = aeTargetClass.getDeclaredConstructor(new Class[] {
                        Integer.TYPE
                    appleEventConstructor = appleEventClass.getDeclaredConstructor(new Class[] {
                        Integer.TYPE, Integer.TYPE, aeTargetClass, Integer.TYPE, Integer.TYPE
                    aeDescConstructor = aeDescClass.getDeclaredConstructor(new Class[] {
                        java.lang.String.class
                    makeOSType = osUtilsClass.getDeclaredMethod("makeOSType", new Class[] {
                        java.lang.String.class
                    putParameter = appleEventClass.getDeclaredMethod("putParameter", new Class[] {
                        Integer.TYPE, aeDescClass
                    sendNoReply = appleEventClass.getDeclaredMethod("sendNoReply", new Class[0]);
                    Field keyDirectObjectField = aeClass.getDeclaredField("keyDirectObject");
                    keyDirectObject = (Integer)keyDirectObjectField.get(null);
                    Field autoGenerateReturnIDField = appleEventClass.getDeclaredField("kAutoGenerateReturnID");
                    kAutoGenerateReturnID = (Integer)autoGenerateReturnIDField.get(null);
                    Field anyTransactionIDField = appleEventClass.getDeclaredField("kAnyTransactionID");
                    kAnyTransactionID = (Integer)anyTransactionIDField.get(null);
                    break;
                catch(ClassNotFoundException cnfe)
                    errorMessage = cnfe.getMessage();
                    return false;
                catch(NoSuchMethodException nsme)
                    errorMessage = nsme.getMessage();
                    return false;
                catch(NoSuchFieldException nsfe)
                    errorMessage = nsfe.getMessage();
                    return false;
                catch(IllegalAccessException iae)
                    errorMessage = iae.getMessage();
                return false;
            case 1: // '\001'
                try
                    mrjFileUtilsClass = Class.forName("com.apple.mrj.MRJFileUtils");
                    mrjOSTypeClass = Class.forName("com.apple.mrj.MRJOSType");
                    Field systemFolderField = mrjFileUtilsClass.getDeclaredField("kSystemFolderType");
                    kSystemFolderType = systemFolderField.get(null);
                    findFolder = mrjFileUtilsClass.getDeclaredMethod("findFolder", new Class[] {
                        mrjOSTypeClass
                    getFileType = mrjFileUtilsClass.getDeclaredMethod("getFileType", new Class[] {
                        java.io.File.class
                    break;
                catch(ClassNotFoundException cnfe)
                    errorMessage = cnfe.getMessage();
                    return false;
                catch(NoSuchFieldException nsfe)
                    errorMessage = nsfe.getMessage();
                    return false;
                catch(NoSuchMethodException nsme)
                    errorMessage = nsme.getMessage();
                    return false;
                catch(SecurityException se)
                    errorMessage = se.getMessage();
                    return false;
                catch(IllegalAccessException iae)
                    errorMessage = iae.getMessage();
                return false;
            return true;
        private static Object locateBrowser()
            if(browser != null)
                return browser;
            switch(jvm)
            case 0: // '\0'
                try
                    Integer finderCreatorCode = (Integer)makeOSType.invoke(null, new Object[] {
                        "MACS"
                    Object aeTarget = aeTargetConstructor.newInstance(new Object[] {
                        finderCreatorCode
                    Integer gurlType = (Integer)makeOSType.invoke(null, new Object[] {
                        "GURL"
                    Object appleEvent = appleEventConstructor.newInstance(new Object[] {
                        gurlType, gurlType, aeTarget, kAutoGenerateReturnID, kAnyTransactionID
                    return appleEvent;
                catch(IllegalAccessException iae)
                    browser = null;
                    errorMessage = iae.getMessage();
                    return browser;
                catch(InstantiationException ie)
                    browser = null;
                    errorMessage = ie.getMessage();
                    return browser;
                catch(InvocationTargetException ite)
                    browser = null;
                    errorMessage = ite.getMessage();
                    return browser;
            case 1: // '\001'
                File systemFolder;
                try
                    systemFolder = (File)findFolder.invoke(null, new Object[] {
                        kSystemFolderType
                catch(IllegalArgumentException iare)
                    browser = null;
                    errorMessage = iare.getMessage();
                    return browser;
                catch(IllegalAccessException iae)
                    browser = null;
                    errorMessage = iae.getMessage();
                    return browser;
                catch(InvocationTargetException ite)
                    browser = null;
                    errorMessage = ite.getTargetException().getClass() + ": " + ite.getTargetException().getMessage();
                    return browser;
                String systemFolderFiles[] = systemFolder.list();
                for(int i = 0; i < systemFolderFiles.length; i++)
                    try
                        File file = new File(systemFolder, systemFolderFiles);
    if(file.isFile())
    Object fileType = getFileType.invoke(null, new Object[] {
    file
    if("FNDR".equals(fileType.toString()))
    browser = file.toString();
    return browser;
    catch(IllegalArgumentException iare)
    browser = browser;
    errorMessage = iare.getMessage();
    return null;
    catch(IllegalAccessException iae)
    browser = null;
    errorMessage = iae.getMessage();
    return browser;
    catch(InvocationTargetException ite)
    browser = null;
    errorMessage = ite.getTargetException().getClass() + ": " + ite.getTargetException().getMessage();
    return browser;
    browser = null;
    break;
    case 2: // '\002'
    browser = "cmd.exe";
    break;
    case 3: // '\003'
    browser = "command.com";
    break;
    case -1:
    default:
    browser = "netscape";
    break;
    return browser;
    public static void openURL(String url)
    throws IOException
    if(!loadedWithoutErrors)
    throw new IOException("Exception in finding browser: " + errorMessage);
    Object browser = locateBrowser();
    if(browser == null)
    throw new IOException("Unable to locate browser: " + errorMessage);
    switch(jvm)
    case 0: // '\0'
    Object aeDesc = null;
    try
    try
    aeDesc = aeDescConstructor.newInstance(new Object[] {
    url
    putParameter.invoke(browser, new Object[] {
    keyDirectObject, aeDesc
    sendNoReply.invoke(browser, new Object[0]);
    catch(InvocationTargetException ite)
    throw new IOException("InvocationTargetException while creating AEDesc: " + ite.getMessage());
    catch(IllegalAccessException iae)
    throw new IOException("IllegalAccessException while building AppleEvent: " + iae.getMessage());
    catch(InstantiationException ie)
    throw new IOException("InstantiationException while creating AEDesc: " + ie.getMessage());
    break;
    finally
    aeDesc = null;
    browser = null;
    case 1: // '\001'
    Runtime.getRuntime().exec(new String[] {
    (String)browser, url
    break;
    case 2: // '\002'
    case 3: // '\003'
    Runtime.getRuntime().exec(new String[] {
    (String)browser, "/c", "start", url
    break;
    case -1:
    Process process = Runtime.getRuntime().exec((String)browser + " -remote 'openURL(" + url + ")'");
    try
    int exitCode = process.waitFor();
    if(exitCode != 0)
    Runtime.getRuntime().exec(new String[] {
    (String)browser, url
    catch(InterruptedException ie)
    throw new IOException("InterruptedException while launching browser: " + ie.getMessage());
    break;
    default:
    Runtime.getRuntime().exec(new String[] {
    (String)browser, url
    break;
    static
    loadedWithoutErrors = true;
    String osName = System.getProperty("os.name");
    if("Mac OS".equals(osName))
    String mrjVersion = System.getProperty("mrj.version");
    String majorMRJVersion = mrjVersion.substring(0, 3);
    try
    double version = Double.valueOf(majorMRJVersion).doubleValue();
    if(version == 2D)
    jvm = 0;
    } else
    if(version >= 2.1000000000000001D)
    jvm = 1;
    } else
    loadedWithoutErrors = false;
    errorMessage = "Unsupported MRJ version: " + version;
    catch(NumberFormatException numberformatexception)
    loadedWithoutErrors = false;
    errorMessage = "Invalid MRJ version: " + mrjVersion;
    } else
    if(osName.startsWith("Windows"))
    if(osName.indexOf("9") != -1)
    jvm = 3;
    } else
    jvm = 2;
    } else
    jvm = -1;
    if(loadedWithoutErrors)
    loadedWithoutErrors = loadClasses();
    suck my balls

  • Opening the default browser.

    Hello,
    Is there a way to open the default browser of the system in a java application?
    Is there any instruction which works for both Windows and Linux?
    I only need to open the browser with a specified URL after a determined step in my java application.
    Thanks,
    Danilo

    Control browsers from your Java application

  • How to connect to mysql from java app

    hi
    please say the procedure for connecting to mysql database from java app.
    .) what should i give in environmental variables
    .)where can i find the driver class for the mysql
    .) syntax of the url
    eg:- DM.getConnection("jdbc:mysql:..............what comes here..............");

    You can also get connections from a DataSource. Simple example:
                MysqlDataSource msds = new MysqlDataSource();
                msds.setUrl("jdbc:mysql://127.0.0.1:3306/dbdame");
                msds.setUser("user");
                msds.setPassword("pass");
                Connection c = msds.getConnection();Explore your options and be sure to consider connection pooling.

  • How to execute Linux command from Java app.

    Hi all,
    Could anyone show me how to execute Linux command from Java app. For example, I have the need to execute the "ls" command from my Java app (which is running on the Linux machine), how should I write the codes?
    Thanks a lot,

    You can use "built-in" shell commands, you just need to invoke the shell and tell it to run the command. See the -c switch in the man page for your shell. But, "ls" isn't built-in anyays.
    If you use exec, you will want to set the directory with the dir argument to exec, or add it to the command or cmdarray. See the API for the variants of java.lang.Runtime.exec(). (If you're invoking it repeatedly, you can most likely modify a cmdarray more efficiently than having exec() decompose your command).
    You will also definitely want to save the returned Process and read the output from it (possibly stderr too and get an exit status). See API for java.lang.Process. Here's an example
    java.io.BufferedReader br =
    new java.io.BufferedReader(new java.io.InputStreamReader(
    Runtime.getRuntime().exec ("/sbin/ifconfig ppp0").
    getInputStream()));
    while ((s = br.readLine()) != null) {...                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Close parent window of Mozilla browser from Java

    Hi All,
    I want to open a URL in a controlled browser from java stand alone application. I was able to do this in Netscape of UNIX OS. The method followed is given below.
    1. Launch a temporary HTML file which contains Javascript (to launch the URL in a controlled window). This is done using --- Runtime.getRuntime().exec() method.
    2. Close the parent HTML file on 'onLoad' using Javascript. (self.close).
    [ I tried window.close() & top.close() also.]
    Now I need to support the same for "Mozilla" also. But mozilla just ignores the close() command of Javascript.
    1. Is there any alternative way to close the parent window in Mozilla browser ?
    2. Is there any way to close the parent window from java by using 'Process' class/ threads/ ??
    3. Any other way???
    Note : I am using the intermediate window for using Javascript. (controlling the browser properties). Since Java cannot communicate to Javascript directly, I am forced to have such an intermediate HTML file.
    Thanks in advance.
    surekha_Venugopal.

    Some more details :
    Mozilla browser will close a window using window.close() command, but only if the window is opened by the script. If not it will not close it.
    Here, I am opening the window from Java application. That is why closure of the window is failing.
    Trying to find a solution.
    Regards,
    Surekha_Venogopal

  • I want to be able to open up a file (from an app or mobile website) to show a customer, then be able to send it to them.

    I want to be able to open up a file (from an app or mobile website) to show a customer, then be able to send it to them. So add a 'Email this file to Client' link that opens up an email with file attached. Is this possible in any of the Adobe Creative Cloud Applications?

    Thank you for the feature request.
    Besides attaching the file to an email yourself, you can use file syncing and the Send Link feature to email a link to your customer.
    File syncing is built into the Creative Cloud desktop application that you use to download and install Adobe desktop applications. Files saved to the Creative Cloud Files folder on your computer are synced up to a cloud file storage. From the Files page in a browser at https://creative.adobe.com/files you can used the Send Link feature.
    The email will be sent and received more quickly since no file is attached, and your customer can download the file from the url you share.

  • How to control browser from java program?

    I want to retrieve the url currently loaded in my default browser. How to achieve this task using java program? I dont know how to access browser using java.

    Peter__Lawrey wrote:
    Actually Desktop.open only works for downloaded pages.
    Instead you can use this to get the browser to download the page and display it.
    Desktop.getDesktop().browse(URI.create("http://www.google.co.uk"));
    First of all thanks for your reply Mr Peter__Lawrey.
    I want to just retrieve the urls loaded in the default webbrowser, not the content of the url or the task of opening the default browser with the specific url.

  • How do i change my default browser from yahoo to safari ?

    how do i change my default browser from yahoo to safari ?

    You may be mixing two things.
    Safari does not really have a home page.
    You set your home page on these pref (see pic below). In the pic below my home page is zip, zero, nada.
    You set your search engine prefs via the Search option from within Safari preferences.

  • Setting new default printer from tcode VF

    Hi friendz,
    im here again..:-) hope u dont mind..
    i have a problem in setting the default printer in tcode VF02...actually the scenario is we bought a new printer..and the program in billing documents always default it to the old printer...so i tried to change the printer from old to new.
    and tried to change the default printer thru the following :
    1.change the new default printer from settings->printer
    2.change the output in VF02 tcode from GOTO->header->output->communication method
    3.change it from billing document->issued to output ->print options.
    but all of these is i need to change it per document no...
    now...how will i default it only once..and all documents i my print will default the printer to the new printer..
    do you have any idea to change the default printer to SPRO? because i check the output type is rd07...and i have no idea where to change it...
    Please help:-(
    aVaDuDz

    u havnt seen my reply to ur POST ?
    in SPRO -
    >under Output determenations --> u will get a options to maintain printers as per Output type.
    i forgotten directly path to go inside.
    VOPA something like this.
    Regards
    Prabhu

  • TS1702 I REMOVED YOUMAIL APP FROM MY PHONE AND THE DEFAULT GREETING FROM THE APP STILL ANSWERS MY PHONE  HOW DO I GET IT NOT TO?

    I REMOVED THE YOUMAIL APP FROM MY PHONE AND THE DEFAULT GREETING FROM THE APP STILL ANSWERS MY PHONE,
      HOW DO I GET IT NOT TO?

    As Dah•veed said, you can delete an app on one divice, and still have it stay on another. The syncing only applies for downloaing apps when you have "Sync Purchases" enabled for the App Store. This goes for the iTunes, iBooks, and Podcasts apps as well.

Maybe you are looking for