Launching a java application from another java application

Hi,
I'm facing an interesting challenge :-)
Inside a Java application, I want to start another java application.
Possible solutions in my list :
1. Using jakarta commons launcher.
2. Runtime.exec (make the code platform dependent).
3. Starting the main method of the other app by create a new Thread inside the current app
4. I know people did this by calling an ant target from the java application but I don't have
any sample code, I appreciate any sample code for it.
Thanks,
Ali Salehi

That is an iteresting challenge :)Don't be mean; he's polite, done some investigation and taken the trouble to be clear. The question, presumably, is "has anyone got a different solution or a preference as to which of these is the best?"
In which case, my advice would be to say that invoking main in a separate thread is fundamentally different from Runtime.exec() because the former would run in the same JVM. Is this what you want? If one app has the other on its classpath then do they need to be separate apps? Could they be modules of a single app?

Similar Messages

  • How to call a Java class from another java class ??

    Hi ..... can somebody plz tell me
    How to call a Java Class from another Java Class assuming both in the same Package??
    I want to call the entire Java Class  (not any specific method only........I want all the functionalities of that class)
    Please provide me some slotuions!!
    Waiting for some fast replies!!
    Regards
    Smita Mohanty

    Hi Smita,
    you just need to create an object of that class,thats it. Then you will be able to execute each and every method.
    e.g.
    you have developed A.java and B.java, both are in same package.
    in implementaion of B.java
    class B
                A obj = new A();
                 //to access A's methods
                 A.method();
                // to access A's variable
                //either
               A.variable= value.
               //or
               A.setvariable() or A.getvariable()

  • Trying to compile a .java file from another .java file

    Hello,
    I'm trying to compile a .java file from another .java file using Runtime.exec...
    String c[]=new String[3];
    c[0]="cmd.exe"; c[1]="/c" ; c[2]="javac Hello.java";
    Process p=Runtime.exec(c);
    If anyone can help me in atleast getting the command prompt when Runtime.exec("cmd.exe") is executed...that would be great...I tried out notepad.exe, calc, explorer instead of cmd.exe...all the commands display their respective windows..except cmd.exe...the command prompt doesnt appear...
    Please help me ASAP....
    Thanks for your help in advance...
    Regards.
    AKhila.

    try this. ur code will be compliled and will get .class file. but console won't appear. is it a must for u?
    public class Exec{
         public static void main(String a[]) throws Exception{
              String c[]=new String[3];
              c[0]="cmd.exe"; c[1]="/c" ; c[2]="javac Hello.java";
              Process p=Runtime.getRuntime().exec(c);
              // or Runtime.getRuntime().exec("javac Hello.java");

  • Calling A Webdynpro Application From Another Webdynpro Application

    Hi,
    i want to call a webdynpro application from another webdynpro application with sending parameters.
    i used this method,
    CALL METHOD cl_wd_utilities=>construct_wd_url
        EXPORTING
          application_name = lv_webapp
        IMPORTING
          out_absolute_url = lv_url.
    CONCATENATE lv_url '?param1=' lv_param INTO lv_url.
    data lo_window_manager type ref to if_wd_window_manager.
    data lo_api_component  type ref to if_wd_component.
    data lo_window         type ref to if_wd_window.
    lo_api_component  = wd_comp_controller->wd_get_api( ).
    lo_window_manager = lo_api_component->get_window_manager( ).
    lo_window         = lo_window_manager->CREATE_EXTERNAL_WINDOW(
        URL = LV_URL
    lo_window->open( ).
    but this method shows the parameters on the address bar.
    is there a method to send the parameters to another webdynpro application without show the parameters on the address bar?
    Can somebody help me pls?
    Thanks.

    I've used a server cookie before. This was built for BSP, but it is really usable anywhere.  It just writes the data temporary into the database.  This way you can just pass one meaningless URL parameter - like a GUID and use this key to read the data (the server cookie) upon initialization of the new application.  I generally serialize all the data that I want into one server cookie by serializing a class. I can then restore whatever attributes of the class that I want on the receiving side.
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/bd/4cd23a09313b37e10000000a11405a/frameset.htm

  • How to compile and run a .java file from another java program

    hello,
    can any one tell me how to compile and run a *.java* file from another java program which is not in same directory?

    Well a smarter way of implementing this is by using a solution provided by Java Itself.
    If you are using J2SE 6.0+ there is an in built solution provided along with JDK itself and inorder to go ahead with solution the below are set of API which you;d be using it for compiling Java Programs (Files)
    http://java.sun.com/javase/6/docs/api/javax/tools/package-summary.html
    How do i do that ??
    Check out the below articles which would help you of how to do that
    http://www.ibm.com/developerworks/java/library/j-jcomp/index.html
    http://www.javabeat.net/javabeat/java6/articles/java_6_0_compiler_api_1.php
    http://books.google.com/books?id=WVbpv8SQpkEC&pg=PA155&lpg=PA155&dq=%22javax+tools%22+compiling+java+file&source=web&ots=XOt0siYe-f&sig=HH27ovuwvJgklIf8omTykUmy-eM
    Now once we are done with compilation.In order to run a Specific class all you ought to do is create an object and its specific methods of a specified class included in the CLASSPATH which you can manage it easily by usage little bit reflections.
    Hope that might help :)
    REGARDS,
    RaHuL

  • Please help with executing a java program from another java program

    Hi, I have tried to execute a very simple java program which is printed out "Hello world" from another java gui program when the user click on the "START" button. However, I don't receive any print out on the terminal when they click it. These two programs are being developed in Unix environment. Here is the code that I am trying to use.
    Runtime r = Runtime.getRuntime();
    r.exec("java HelloWorld");
    p.s. HelloWorld is java class of the HelloWorld.java

    I think you have to luanch your MS Prompt first before executing the command.

  • How to call inner class method in one java file from another java file?

    hello guyz, i m tryin to access an inner class method defined in one class from another class... i m posting the code too wit error. plz help me out.
    // test1.java
    public class test1
         public test1()
              test t = new test();
         public class test
              test()
              public int geti()
                   int i=10;
                   return i;
    // test2.java
    class test2
         public static void main(String[] args)
              test1 t1 = new test1();
              System.out.println(t1.t.i);
    i m getting error as
    test2.java:7: cannot resolve symbol
    symbol : variable t
    location: class test1
              System.out.println(t1.t.geti());
    ^

    There are various ways to define and use nested classes. Here is a common pattern. The inner class is private but implements an interface visible to the client. The enclosing class provides a factory method to create instances of the inner class.
    interface I {
        void method();
    class Outer {
        private String name;
        public Outer(String name) {
            this.name = name;
        public I createInner() {
            return new Inner();
        private class Inner implements I {
            public void method() {
                System.out.format("Enclosing object's name is %s%n", name);
    public class Demo {
        public static void main(String[] args) {
            Outer outer = new Outer("Otto");
            I junior = outer.createInner();
            junior.method();
    }

  • Calling FPM application from another FPM application

    Hello Experts,
    I've created 2 FPM configurations, one displays the list of POs created by the user through a List UIBB and the other displays the Header and Item of the PO when selected.
    Scenario is that when I should click on the PO (which is a link) in my 1st application, I need to pas the PO number and some other details to my 2nd application and display the PO header and Item. My all Config is purely UIBB based and I'm not using webdynpro at all for designing any views, everything is designed using FPM UIBBs and feeder classes only.
    what I need to know is:-
    1) how can I pass the data between 2 different FPM applications?
    2) how to call and display my 2nd Application on the same page when I click on the link of 1st application? I need the BACK functionality as well.
    3) how to get the data into my 2nd application from 1st application?
    Plz suggest.
    Best Regards
    Jitin Kharbanda

    Jitin,
    The best option in your case would be to open a new browser window with the second application and pass an URL parameter along with the document number.
    Then you can read the URL parameter in the second application. Please see Re: Determining Edit/Display Mode from Within Freestyle Component how this can be achieved.
    Embedding another FPM application into an already opened FPM application (e.g. by embedding a freestyle UIBB and loading the second FPM application from there) won't work as the FPM runtime will cause a dump saying that two instances ofthe FPM are not allowed.
    If you MUST embedd your second application into the first one, the only chance that comes to my mind is the merge the configurations of both applications and pass the data via singleton / wires / events. Please see Data exchange possibilities in Floorplan Manager
    Regards, Uwe

  • Calling web applications from another web application

    Hi everyone,
    I direly need your suggestions on how to implement the following requirements:
    I have a web application (i.e. App A). Then I have other web applications (i.e. App B, App C, App D, etc.) .
    For each of the other apps (App B, App C, App D), I need to have 2 variable/attribute settings whose values are to be set (pre-defined) per user.
    Meaning one user's values are different from another user.
    In App A, I need to call App B, App C, & App D one by one to get the values of the 2 variables/attributes for a particular user accessing App A.
    How should I implement this whole scenario such that I can set the values for 2 variables/attributes in App B, C, & D on a per user basis?
    Please help me get ideas on what methods or work-arounds to implement in order to achieve this.
    Thanks.
    blm

    Assuming this is running on a server, how about placing your data in application scope?
    All applications have access to it. Just make sure every object put in application scope is uniquely named
    and that your other application knows its name. One suggestion is to put a collection object (such as a List) in application scope and add items to it. This way, every application will know the collector's name. They can then search through the collection for any object addressed to itself. Just make sure you send data into and out of the collection in a thread safe way. such as by synchronization.
    Here is an example of an object that you can store in the collection:
    MessageObject{
    String fromApplication;
    String toApplication;
    String message;
    }

  • Killing a Java process from another Java process

    Hi
    Is there a possible way of sending a SIGINT, SIGKILL, or any other signal from a Java process running in one JVM, to a java process running in a different JVM on the same machine.
    I've the signal handlers written in my process and they do respond to singals (e.g. on pressing Ctrl-C) on the console, but i want to write a separate program that sends this signal to the first process.
    Any ideas?
    Thanks in advance and regards
    Kashif

    The answer, as always, is that Java can't do operating-system-specific things like that, but you can use JNI to do it. However, if your code created the Java process you want to kill, via Process p = Runtime.getRuntime().exec(...), then you can use p.destroy() to kill it.

  • EREC-BSP-How to call a bsp application from another bsp application

    Hi Experts,
    In E-Rec one of my bsp application zapp_e_ext calling another standard bsp application hrrcf_searchhlp when user click on search help button.
    i made a zcopy (zhrrcf_serchhlp) of std application hrrcf_searchhlp,and did some changes,
    now the problem is how to replace the std application with zapplication so that zapplication should be called in place of std application when user click on search button.
    Cheers,
    Amod

    try exec()ing the cad program with the name of the file as a command line parameter...
    Runtime.getRuntime().exec("CADProg.exe Test.prt");
    i have no clue if this will work but it seems like it's worth a try.

  • Calling Java Application from another

    How can i call a Java Application from another java App.
    eg., If my Java application is called MyApp and i would like call another java application from within it.
    One way could be by using "System". I would like to know if there is any other method and is portable.
    Thanks in advance.

    hi,
    it works and not!
    if you start an other class with a command like this the 2nd prog/class terminates too if you terminate the caller-class!
    dear
    oliver scorp

  • How to call WD Application from another WD Appliction

    Hi all,
    how can we call webdynpro application from another wbdynpro application on click of a button in the same browser.
    pls suggest
    regards
    vishal

    Hi Vishal,
    Just try to Embed the another WD Component into Component Controller first.
    And then Create a View and map it to window as U regularly do,
    then in Window- Explore the tree until that View, now open Context Menu for Embed View Option and from the scroll U get search for that WD Component U wanna Embed.
    U also have to handle Plugs here, Because the result application required some parameters to be passed that U do from ur first application by passing  those values through Plugs.

  • Calling a java application from another

    Hello,
    i have noticed a strange behaviour of my java app when i open it from another java app. When i run the core application with a bat file using jre1.6 everything works fine. Now what i want to do is create an application that checks the existance of jre 1.6, downloads it if it does not exist and run real application with the new jre. The second small app runs with a small jre 1.4.2. In reality it seem to work fine, it downloads the jre1.6 folder and exits normally. However when the real application is launched it behaves strangely without throwing any exceptions. And this behaviour seems to be random. for example, a jpanel may not show any components, or the whole jframe may close suddenly. Does anyone have any idea what is going on? Is there a chance that some classes of the first jre remain in memory and conflict when the second application is launched?

    Just a wild guess: maybe you're invoking the java 1.6 binaries, but JAVA_HOME or something is pointing to java 1.4 libraries (or vice-versa), and you've found some weird interaction issue.

  • Invoke one java application from another?

    Hello,
    Can anyone tell me how to Invoke one java application from another?
    Suppose I have a small java application say, Hello.java which has its own main() method and
    I also have another java application, say World.java which has its own main() method too.
    What I want to do is invoke or startup World.java from Hello.java.
    If possible kindly give code examples?

    main is just a normal method so Hello can invoke the main method of World just as it would invoke any other method.
    Kaj

Maybe you are looking for

  • Performance of Leopard on iMac G5

    I bought my iMac G5 (2.1Ghz, 2.5Gb of RAM) in December of last year. It came with Tiger but the person who sold me the Mac had also already bought Leopard for it. As he had bought a new 24" iMac, he no longer needed Leopard so he gave it to me for fr

  • I own a MacBook Pro and my spellcheck doesn't work anymore any ideas?

    I own a Mac  book Pro and the spellcheck no longer works,any ideas? Or should I take this up with the site I'm using?

  • Writting Events for TableView Buttons

    Hi SDN, I created a table view in a jsp dynpage which has one of the columns type as button.i got it by using "setColumnType" attribute of tableview. now i want to fire server and client events onclick of those buttons.how to achieve it? can we write

  • Female Mini Display Port Adapter - Connect Monitor to Non Mini Display Port

    Anyone know of a Female Mini Display Port Adapter, so I can connect the 24 LED Cinema Display to a computer that has DVI connector? Or hook the monitor up to a KVM, so I can use the monitor with multiple computers? I know Apple doesn't make these, bu

  • Validate two sums and display total

    I have a form which sums numeric data (amounts) in both columns and rows. I need to verify that the sum of the row of totals and the sum of the column of weekly totals are identical and dsiplay the total in a single grand total field. Because the for