How to user netbean to follow java app logic flow

I imported a j2se application (about 60 classes) into the netbean IDE, I was able to compile and run it. I am new to this program and would like to use netbean to execute this app step by step to follow the logic flow of the program and to understand this program. How do I do that?
Thanks

You don't NEED an IDE such as JBuilder, but it does make things a little easier.
What I'm guessing you have is a bunch of .class files and you want to turn it into something compact and executable, right? The best thing to do is create an executable .jar file. Jar is a type of compressed archive similar to Zips.
In the JDK, there is a program called jar.exe which you can use to pack your classes into a JAR file. To run a jar file, in the command prompt, or a batch file, simple write "java -jar MyApp.jar". You can also run a Jar file just by doubleclicking it by setting: java.exe "-jar" "%L" in the file types menu in explorer.
If you have something like JBuilder, you can make it automatically create the Jar file when you build your app.

Similar Messages

  • 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) {...                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • 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 run a makefile from java app?

    Hi,
    I want to run a make command the first time my java swing application is run. The makefile is in a directory that the application is using for input files. Do I need to write a script to house the make command or is there another way to run make?
    Thanks

    Thanks for that but I'm not actually trying to build a makefile for my java app - I just want to be able to run one that is going to generate a bunch of html files for my application to access. The make command works great from the command line but I can't just put a directory followed by "make html" in a string and run it using runtime.exec in my application.

  • How do I convert my GUI java app to be an applet or display it on a webpage

    I have created a loan calculator program in netbeans, I got the application to run fine but now I want to add it into a html page.
    I'm just looking for a place to start, I just don't know where to go from here, I want to know if I can actually convert my app with a few changes to an applet or if any one can point me to a forum of similar interest or tutorials that explain what I'm looking for.
    I don't even know what i'm looking for except i want this program to run on a webpage.
    Or is there a way to run my .jar file on a webpage??
    My teacher has not taught us anything on this matter except the below code suggestions on converting and my program is more extensive than her examples for converting. This is what she briefly described on this subject.
    1.To convert an application to an applet the main differences are: import java.awt.Graphics; import javax.swing.JApplet; import javax.swing.JOptionPane;
         Extend JApplet Replace main with public void init() method
    Output with public void paint( Graphics g ) method
    2. Remove calls to setSize, setTitle, pack, and any window listener calls, e.g., setDefaultCloseOperation. Compile the program---if something doesn't compile just comment it out for now.
    3. Create a simple web page with the following body.
    <applet CODE="__________.class" WIDTH="300" HEIGHT="300"
    archive="http://www.cs.duke.edu/courses/fall01/cps108/resources/joggle.jar">
    Your browser does not support applets </applet>
    I understand those steps for a simple program like hello world but not my current app
    Heres my code on the 2 extend off my first GUI of the Loan Application
    public class AnalysisGUI extends GUI {
        /** Creates new form AnalysisGUI */
        public AnalysisGUI(java.awt.Frame parent, boolean modal) {
            super(parent, modal);
            initComponents();
        }//end constructor
        private DecimalFormat currency = new DecimalFormat("0.00");
        /** This method is called from within the constructor to
         * initialize the form.
         * WARNING: Do NOT modify this code. The content of this method is
         * always regenerated by the Form Editor.
        // <editor-fold defaultstate="collapsed" desc="Generated Code">
        private void initComponents() {
            analysisjButton = new javax.swing.JButton();
            jScrollPane1 = new javax.swing.JScrollPane();
            writejTextArea = new javax.swing.JTextArea();
            clearTextAreajButton = new javax.swing.JButton();
            setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
            analysisjButton.setText("Analysis");
            analysisjButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    analysisjButtonActionPerformed(evt);
            writejTextArea.setColumns(20);
            writejTextArea.setRows(5);
            jScrollPane1.setViewportView(writejTextArea);
            clearTextAreajButton.setText("Clear Analysis Output");
            clearTextAreajButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    clearTextAreajButtonActionPerformed(evt);
            javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
            getContentPane().setLayout(layout);
            layout.setHorizontalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(analysisjButton)
                        .addComponent(clearTextAreajButton))
                    .addGap(18, 18, 18)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 433, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(86, 86, 86))
            layout.setVerticalGroup(
                layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup()
                    .addContainerGap(306, Short.MAX_VALUE)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                            .addComponent(analysisjButton)
                            .addGap(84, 84, 84)
                            .addComponent(clearTextAreajButton)
                            .addGap(113, 113, 113))
                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                            .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 263, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(22, 22, 22))))
            java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-700)/2, (screenSize.height-627)/2, 700, 627);
        }// </editor-fold>
        private void analysisjButtonActionPerformed(java.awt.event.ActionEvent evt) {                                               
            // TODO add your handling code here:   
            //importing values for FOR loop of 13 pyaments a years
            ir13 = super.rate;
            balance13 = super.balance;
            time13 = super.time;
            payment13 = MortgageCalculator.CalculatePayment(ir13, balance13, time13, PayperYear13);           
            interest13 = round((balance13 * (ir13/PayperYear13)));                   
            principle13 = round(payment13 - interest13);
            //set up for 12 pyaments a year
            balance = super.balance;          
            ir = super.rate;
            time = super.time;         
            payment = super.payment;
            interest = round((balance * (ir/PayperYear12)));
            principle = round(payment - interest);
            //set up for 24 payments a year   
            balance24 = super.balance;          
            ir24 = super.rate;
            time24 = super.time;         
            payment24 = super.payment/2;
            interest24 = round((balance24 * (ir/PayperYear24)));
            principle24 = round(payment24 - interest24);
            //set up for 26 payemnts a years
            ir26 = super.rate;
            balance26 = super.balance;
            time26 = super.time;
            payment26 = MortgageCalculator.CalculatePayment(ir26, balance26, time26, PayperYear26);           
            interest26 = round((balance26 * (ir26/PayperYear26)));                   
            principle26 = round(payment26 - interest26);
         double totalPrinciple = 0;              //set to zero
         double totalInterest = 0;          //set to zero       
         for( int n = 0; n < time; n++)     //check Year of Loan
                totalPrinciple = 0;          //reset to zero for totaling Year n totals
                totalInterest = 0;          //reset to zero for totaling Year n totals
                writejTextArea.append("-----Based on 12 Payments Per Year-----\n");
                writejTextArea.append("          "+"          "+"Principle" + "    " +
                    "Interest"+ "    "+
                    "Balance"+"\n");            
                //loops through the monthly payments
                for(int i = 1; i <= PayperYear12; i++ )
                //Calculate applied amounts for chart to be printed
                interest = round((balance * ir)/PayperYear12);
                principle = round(payment - interest);
                balance = round(balance - principle);
                //total year end amounts
                totalPrinciple = totalPrinciple + principle;
                totalInterest = totalInterest + interest;
                writejTextArea.append("Payment " + i + " $" + currency.format(principle) + "     " +
                    currency.format(interest) + "      $" +
                    currency.format(balance)+"\n");     
                }//end for 12 payments per year
                //print 12 payments Totals          
                int yr = n + 1;
                writejTextArea.append("\n---Year " + yr + " Totals Based on 12 Payments Per Year---");
                writejTextArea.append("\nYear Total Principle: $" + currency.format(totalPrinciple));
                writejTextArea.append("\nYear Total Interest: $" + currency.format(totalInterest));
                writejTextArea.append("\nRemaining Balance: $" + currency.format(balance)+"\n");
                writejTextArea.append("\n-------------------------------------------------------\n");     
                //Start 13 PAYMENTS A YEAR TABLE
                double totalPrinciple13 = 0;          //reset to zero for totaling Year n totals
                double totalInterest13 = 0;          //reset to zero for totaling Year n totals
                writejTextArea.append("-----Based on 13 Payments Per Year-----\n");   
                writejTextArea.append("          "+"          "+"Principle" + "    " +
                    "Interest"+ "    "+
                    "Balance"+"\n");            
                //loops through the monthly 13 payments           
                for(int j = 1; j <= PayperYear13; j++ )
                //Calculate applied amounts for chart to be printed
                interest13 = round((balance13 * ir13)/PayperYear13);
                principle13 = round(payment13 - interest13);
                balance13 = round(balance13 - principle13);
                //total year end amounts
                totalPrinciple13 = totalPrinciple13 + principle13;
                totalInterest13 = totalInterest13 + interest13;
                //System.out.printf("\n%-10s %-10s %-10s %-10s %-10s", n + 1 , i + 1,Principle, Interest, Balance);
                //System.out.printf("\n%-10s %-10s %-10.2f %-10.2f %-10.2f", n + 1 , i + 1,round(principle), round(interest), balance);
                writejTextArea.append("Payment " + j + " $" + currency.format(principle13) + "     " +
                    currency.format(interest13) + "      $" +
                    currency.format(balance13)+"\n");         
                }//end for 13 payments per year
                //Print totals for 13 payments a year          
                yr = n + 1;
                writejTextArea.append("\n---Year " + yr + " Totals Based on 13 Payments Per Year---");
                writejTextArea.append("\nYear Total Principle: $" + currency.format(totalPrinciple13));
                writejTextArea.append("\nYear Total Interest: $" + currency.format(totalInterest13));
                writejTextArea.append("\nRemaining Balance: $" + currency.format(balance13)+"\n");
                writejTextArea.append("\n-------------------------------------------------------\n");             
                //Start 24 PAYMENTS A YEAR TABLE
                double totalPrinciple24 = 0;          //reset to zero for totaling Year n totals
                double totalInterest24 = 0;          //reset to zero for totaling Year n totals
                writejTextArea.append("-----Based on 24 Payments Per Year-----\n");
                writejTextArea.append("          "+"          "+"Principle" + "    " +
                    "Interest"+ "    "+
                    "Balance"+"\n");            
                //loops through the monthly payments
                for(int i = 1; i <= PayperYear24; i++ )
                //Calculate applied amounts for chart to be printed
                interest24 = round((balance24 * ir24)/PayperYear24);
                principle24 = round(payment24 - interest24);
                balance24 = round(balance24 - principle24);
                //total year end amounts
                totalPrinciple = totalPrinciple + principle24;
                totalInterest = totalInterest + interest24;
                writejTextArea.append("Payment " + i + " $" + currency.format(principle24) + "     " +
                    currency.format(interest24) + "      $" +
                    currency.format(balance24)+"\n"); 
                }//end for 24 payments per year
                //print 24 payments Totals
                yr = n +1;
                writejTextArea.append("\n---Year " + yr + " Totals Based on 24 Payments Per Year---");
                writejTextArea.append("\nYear Total Principle: $" + currency.format(totalPrinciple24));
                writejTextArea.append("\nYear Total Interest: $" + currency.format(totalInterest24));
                writejTextArea.append("\nRemaining Balance: $" + currency.format(balance24)+"\n");
                writejTextArea.append("\n-------------------------------------------------------\n");                        
                //Start 26 PAYMENTS A YEAR TABLE
                double totalPrinciple26 = 0;//reset to zero for totaling Year n totals
                double totalInterest26 = 0;     //reset to zero for totaling Year n totals
                writejTextArea.append("------Based on 26 Payments Per Year-----\n");
                writejTextArea.append("          "+"          "+"Principle" + "    " +
                    "Interest"+ "    "+
                    "Balance"+"\n");            
                //loops through the monthly payments 26 times
                for(int i = 1; i <= PayperYear26; i++ )
                //Calculate applied amounts for chart to be printed
                interest26 = round((balance26 * ir24)/PayperYear26);
                principle26 = round(payment26 - interest26);
                balance26 = round(balance26 - principle26);
                totalPrinciple = totalPrinciple + principle26;
                totalInterest = totalInterest + interest26;
                writejTextArea.append("Payment " + i + "  $" + currency.format(principle26) + "     " +
                    currency.format(interest26) + "      $" +
                    currency.format(balance26)+"\n");
                }//end for 26 payments per year           
                yr = n + 1;
                //prints 26 payments yearly totals
                writejTextArea.append("\n---Year " + yr + " Totals Based on 26 Payments Per Year---");
                writejTextArea.append("\nYear Total Principle: $" + currency.format(totalPrinciple26));
                writejTextArea.append("\nYear Total Interest: $" + currency.format(totalInterest26));
                writejTextArea.append("\nRemaining Balance: $" + currency.format(balance26)+"\n");
                writejTextArea.append("\n-------------------------------------------------------\n");                
            }//end for years of the loan
        private void clearTextAreajButtonActionPerformed(java.awt.event.ActionEvent evt) {
            // TODO add your handling code here:
            //clear analysis field
            writejTextArea.setText("");
        public static double round(double r)//round to cents method
              return Math.ceil(r*100)/100;
         }//end round  
        /**HI micha what a long progam
         * @param args the command line arguments
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    AnalysisGUI dialog = new AnalysisGUI(new javax.swing.JFrame(), true);
                    dialog.addWindowListener(new java.awt.event.WindowAdapter() {
                        public void windowClosing(java.awt.event.WindowEvent e) {
                            System.exit(0);
                    dialog.setVisible(true);
            });//end announymous
        }//end main mehtod
        //12 year declared varialbes
        //private double balance;   
        private double principle;
        private double ir;
        private double interest;
        private double PayperYear12 = 12;
        //Variables for 13 payments a years
        private int PayperYear13 = 13;
        private double balance13;
        private double principle13;
        private double ir13;
        private double interest13;
        private double payment13;
        private double time13;
        //Varialbes for 24 payments a year
        private int PayperYear24 = 24;
        private double balance24;
        private double principle24;
        private double ir24;
        private double interest24;
        private double payment24;
        private double time24;
        //Varialbes for 24 payments a year
        private int PayperYear26 = 26;
        private double balance26;
        private double principle26;
        private double ir26;
        private double interest26;
        private double payment26;
        private double time26;
        // Variables declaration - do not modify
        private javax.swing.JButton analysisjButton;
        private javax.swing.JButton clearTextAreajButton;
        private javax.swing.JScrollPane jScrollPane1;
        private javax.swing.JTextArea writejTextArea;

    Your original program extends "GUI" which appears to extend JFrame (correct me if I'm wrong). If so, the first thing you should do would be to re-write this so that it extends JPanel which shouldn't be that hard to do (at least it's not hard to do if you know a little Swing -- but I worry about someone coming into this from the netbeans-generated code world). Purists will tell you to not even extend this, to have your main GUI class hold an instance of JPanel instead, and this would work fine too, as long as one way or another, the main GUI program can produce your application displayed on a JPanel on demand.
    If you've done this correctly, then using your JPanel in a JFrame is trivial: in a main method create a JFrame, and then simply add your JPanel to the JFrame's contentPane and display it. Likewise using your JPanel in a JApplet is just as trivial as you'd do essentially the same thing: add your JPanel to the JApplet's contentPane, but this time do it in the JApplet's init method.

  • How to implement secure Licencing for Java Apps?

    Hi
    I'm already thinking some months about this topic. I serached the web, some books and magazines, i asked quite a lot of people - but in the end, there seems to be no really satisfying answer.
    My main question is: what can i do to protect the software i wrote? The problem is, where ever i start, i end with open questions.....
    I may start delivering a custom licence key with my software that contains information i.e. about who may run it and for how long. To check integrity i sign the licences key (with a digest) and ckeck the integrity in the application. Like this, i could make sure, that the software runs only with a valid licence.
    But two new problem araise - if the licence key is given to the web, everyone will be able to run the software. Second, i have to implement a methode to check the digest, so i have to deliver the key with the software and like this, the key could just be used to generate new licence files. Third, i hav to protect my code, since anyone could recompile it, he could check the algorithms i use to check the digest and even worse, he just could disable the codeblock that checks the licence.
    So i use an obfuscator to scramble my code, and to get the most out of this technique, i use a controlflow obfuscator. This adds some security, but still the code can be decompiled but wouldn't be too easy to understand. For making it even a little bit harder to read, i will "distribute" the licence digest check over some different classes.
    But still the first two problems remain. So i think about encrypting the licence file. To make that secure, i would use a public/private key encryption since if i use a secret key encryption i would have to deliver the key with the software and anyone could use it to generate new encrypted licene files. The problem with the public/private key is, that i should deliver a public key with the software that is only capable of decrypting, but not of encrypting. Like this, i can implement a decryption methode in the software that can decrypt the licence file and read all requiered licence data but the user is not able to generate a new licence file because he has the read-only key. Obvisouly there is no such private/public key technique that allows one key to be decrypt only and the other to be encrypt and decrypt (or at least encrypt only). Algorithms like PGP have a public key that allows encryption only and a private key that allows decryption only.
    I could go on presenting some more ideas i found to "protect" software/licence but the all come to the same point where they leave a lot of other open questions.
    I wonder what you all out there do to protect your software, what kind of technique you use for licencing implementation. I would be very glad to read what problem you face reagarding this topics and maybe how you solved it or what your conclusion was.
    Greetings
    josh

    >
    yes, absolutely. That's the point. Try to make it hard
    to get the software some other way. So it's easer to
    get the software by buying it.
    Nope.
    - There are those who steal it just to steal it. They don't use it.
    - There are those who steal it because the price is too extreme. If your income for the year is measured as only several thousand dollars you are not going to be able to buy a package that costs a thousand dollars or more.
    - There are those who steal it because the preceived benifit is less than the cost. For instance, at least in the past, MS software cost at least three times as much in some european companies compared to the exchange rate.
    - Finally there are those who steal simply because they don't want to pay for it.
    As far as I am concerned the last category is the only relevant one. And that is far smaller than any software theft estimates that the software industry regularly claims.
    >
    >>
    Here is an example of someone who thinks that their
    work is good enough and valuable enough to stand on
    its own...http://www.fileviewer.com/.
    And I liked it enough that at one company I hadthem
    purchase a site license. And I like it enough thatI
    still remember the company five years after thelast
    time I needed the product.that's fine and it would be very nice if everybody
    would be like you. But that's not the case and you
    even may not be sure if not someone in that company
    took a copy of the software and the licence and now is
    using it for free are even gave it in the "public
    domain". Woulnd't that be sad if the company would
    have to close down someday because just a few people
    are paying for it. Even if it is such a smart
    product?There was a clothing chain that closed down because they claimed that, even after installing anti-theft devices, they were still losing too much money from shop lifters.
    If that is the case why do all of the other companies still exist?
    If your product is good then people will buy it. The successes for that are abundant. The only success stories for copy protection schemes are for the copies that sell those schemes.
    >
    i wonder if you close your door when you leava your
    appartment. I mean, what's wrong with protecting a
    code? It's just the same as protecting the money you
    earn, the furnish in your appartment, ...
    Sorry, when I buy a product then I expect to be able to use it.
    With your analogy I would have to use a code that you provided everytime I wanted to get into and out of my apartment.
    So for any comments, ideas, ... on how to addsome
    more protection i'm very thankfull.You search for "obfuscator".yes, as i wrote in the first posting, i know about
    obfuscator, i'm using it, but it's just very poor
    protection. That's why I'm looking for a smart concept
    to gain a little bit more protection.And if you search for that term in these forums, and read the lengthy posts, you might find some ideas. Which is why I suggested it. (And you might understand why the alternatives are not used.)

  • How to autopress button in another Java app?

    My mainapp should automatically press a "login" or "yes" button from another application.
    In my mainapp I have:
    private Toolkit toolkit = Toolkit.getDefaultToolkit();
    toolkit = toolkit.addAWTEventListener(new LookForLoginOrYes, AWTEvent.WINDOW_EVENT_MASK);
    public static class LookForLoginOrYes implements AWTEventListener {
       public void eventDispatched (AWTEvent event) {
          System.out.println("in LookFor..."+event.toString()); // this line is printed out!
          WindowEvent windowEvent = (WindowEvent) event;
          if (event.getID() == WindowEvent.WINDOW_OPENED) {
             System.out.println("LFA: WindowEvent.WINDOW_OPENED"); // this line is never printed
             Window window = windowEvent.getWindow();
             if (window instanceof Frame) {
                System.out.println("LFA: " + ((Frame) window).getTitle()); // never printed
    }line with event.toString() displays that my mainapp has no focus anymore of has focus (for this I replaced WINDOW_EVENT_MASK with ~0L).
    Clicking on the titlebar or so of the second app (with the 'yes' button) nothing happens.
    Security settings?

    The Robot class ties into the native interface, but has no concept of the application's components. Therefore, the only way the Robot class could perform this task is if a) you teach it to recognize the button from a screenshot of the desktop or b) you guarantee that the button is in a specific location. The Robot class is the only system-independent way to do this if your applications run in different JVMs. This is because each JVM is pretty much a seperate computer and, beyond network connections, file pipes, etc., each has no concept of the other's existence.
    Are you able to modify both applications' source? If so, I would recommend you handle your situation this way:
    public class AppOne extends JFrame
        public AppOne(...)
            JButton button = new JButton("That Button You Want To Press");
            button.addActionListener(new ActionListener()
                public void actionPerformed(ActionEvent e)
                    thatButtonWasPressed();
        public void thatButtonWasPressed()
            ... // button-press code
        public static void main(String arg[])
            AppOne app = new AppOne(...);
            app.setLocationRelativeTo(null);
            app.setVisible(true);
    public class AppTwo extends JFrame
        public AppTwo(AppOne other_app, ...)
            ... // at the appropriate point, call "other_app.thatButtonWasPressed()"
        public static void main(String arg[])
            AppOne app_one = new AppOne(...);
            AppTwo app_two = new AppTwo(app_one, ...);
            app_one.setLocationRelativeTo(null);
            app_one.setVisible(true);
            app_two.setLocationRelativeTo(null);
            app_two.setVisible(true);
    }In this example, the button is not actually being pressed, but the same effect is generated. I recommend this approach because it cuts out a lot of potential interference. Why deal with the user interface if you don't have to? What you seem to want (and correct me if I'm wrong) is for the application to perform a specific operation on your request. The fact that this operation happens to also occur when a user presses a specific button is irrelevant.
    Is there some reason you need the Swing/AWT system to actually think the button has been pressed? If you can't modify the source code of the one application, that would make sense.

  • How to get RTP protocol to Java app?

    Hi,
    I need to work with RTP streams, but I've got problem that I cannot use rtp protocol - if I want to create a new url, MalformedURLexception is raised, here is sample code:
    java.net.URL url;
    try{
         url = new java.net.URL("rtp://www.someweb.cz:8080");
    catch(Exception e){
         System.out.println("Cannot create url - "+e);
    }http and ftp work fine. Can someone explain me what is wrong? JMF is installed on my system...

    MalformedURLexception is raised/*Because your URL is not of proper format*/
    //New mlr should be
    ("rtp://www.someweb.cz:8080//video//1")                    ///Becuse it's windoz //
    !("rtp://www.someweb.cz:8080)
    hmm, damn,
    i hope it works.
    kiss                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            

  • HT1766 Just purchased a new Ipad air and need to know how I can download the following apps free 1. Pages,2. Numbers,3 Keynote

    Just purchased a new IPAD air and need to know how I can download rhe following free Apps   1. pages, 2 numbers, 3 keynote

    Consult the following link if you are having problems:
    http://www.imore.com/how-get-all-iwork-apps-iphoto-and-imovie-free-eligible-ipho ne-or-ipad

  • How do I run java app when user calls a number?

    Hi all
    Is it possible to run a java app everytime a user calls a number? It has to run before the call is placed. The app will do its job and then place the call using PlatformRequest().
    Thanks
    hsogra

    Hi,
    I believe in general this is not possible.
    J2ME was designed in such a way that J2ME apps don't have permission to interrupt the normal functions of the phone (making/receiving calls, sending/receiving SMS).

  • Can't execute web app from NetBeans 3.6 with Sun Java App Server 8

    Hi there,
    I'm tyring to execute a java web application called myfirstjsp.
    In directory ...\myfirstsjp I've got:
    - index.jsp
    - WEB-INF dir
    - META-INF dir.
    I can run myfirstjsp from NetBeans if I choose the Netbeans default server, Tomcat 5.0.19 (this web server is configured to port 8084).
    However, when I try to execute myfirstjsp from NetBeans with Sun Java System Application Server 8(configured to port 8080), it gives me an annoying message:
    The Sun Java System Application Server 8 could not start.
    More information about the cause is in the Server log file.
    Possible reasons include:
    - Port conflicts. (use netstat -a to detect possible port numbers already used by the operating system.)
    - Incorrect server configuration (domain.xml to be corrected manually)
    - Corrupted Deployed Applications preventing the server to start.(This can be seen in the server.log file. In this case, domain.xml needs to be modified).
    I checked port conflicts but none found.
    The other two options don't give me a place to start (I don't know what to do with domain.xml)
    I'm working with:
    - Windows XP Pro
    - J2SE 1.4.2_04 (installed in C:\Program Files\j2sdk1.4.2_04)
    - Sun Java Application Server 8 (installed in C:\Program Files\Sun\AppServer)
    - Netbeans 3.6 + Sun Java System Application Server Plugin (installed in C:\Program Files\NetBeans3.6).
    My PC has the following environment variables:
    PATH(in user MGoncalv)=C:\Program Files\Sun\AppServer\bin;,?ut
    PATH(system variable)=C:\Program Files\j2sdk1.4.2_04\bin;D:\ProgramFiles\OraReportNT\bin;C:\OraHome92\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Personal Communications\;C:\Program Files\IBM\Trace Facility\;%SystemRoot%\system32\nls;%SystemRoot%\system32\nls\ENGLISH
    CLASSPATH(system variable)=.;C:\OraHome92\jdbc\lib\ojdbc14.jar
    By looking at the Sun App Server log file, I discovered that the log outputs of
    - Start Default Server (a link in the folder created by the installation of Sun App Server)
    - and trying to execute myfirstjsp from NetBeans through Sun App Server
    are very similar.
    Below is a piece of server.log when I tried to execute myfirstjsp from NetBeans through Sun App Server. Please, pay attention to the EJBC error:
    Starting Sun Java System Application Server Platform Edition 8.0 (build b57-fcs) ...
    [#|2004-05-19T17:20:05.198+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|CORE5076: Using [Java HotSpot(TM) Client VM, Version 1.4.2_04] from [Sun Microsystems Inc.]|#]
    [#|2004-05-19T17:20:08.713+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|ADM0020:Following is the information about the JMX MBeanServer used:|#]
    [#|2004-05-19T17:20:09.384+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|ADM0001:MBeanServer initialized successfully|#]
    [#|2004-05-19T17:20:14.752+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|Creating virtual server server|#]
    [#|2004-05-19T17:20:14.772+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|S1AS AVK Instrumentation disabled|#]
    [#|2004-05-19T17:20:14.792+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core.security|_ThreadID=10;|SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.|#]
    [#|2004-05-19T17:20:20.200+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core.transaction|_ThreadID=10;|JTS5014: Recoverable JTS instance, serverId = [100]|#]
    [#|2004-05-19T17:20:23.645+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|Satisfying Optional Packages dependencies...|#]
    [#|2004-05-19T17:20:24.336+0100|INFO|sun-appserver-pe8.0|javax.enterprise.resource.resourceadapter|_ThreadID=10;|RAR7008 : Initialized monitoring registry and listeners|#]
    [#|2004-05-19T17:20:26.098+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|CORE5100:Loading system apps|#]
    [#|2004-05-19T17:20:27.811+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [MEjbApp] loaded successfully!|#]
    [#|2004-05-19T17:20:27.921+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|Selecting file [C:\Program Files\Sun\AppServer\lib\install\applications\__ejb_container_timer_app.ear] for autodeployment|#]
    [#|2004-05-19T17:20:27.931+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|[AutoDeploy] Selecting file [ C:\Program Files\Sun\AppServer\lib\install\applications\__ejb_container_timer_app.ear ] for autodeployment.|#]
    [#|2004-05-19T17:20:30.004+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.deployment|_ThreadID=10;|DPL5109: EJBC - START of EJBC for [__ejb_container_timer_app]|#]
    [#|2004-05-19T17:20:33.459+0100|WARNING|sun-appserver-pe8.0|javax.enterprise.system.tools.deployment|_ThreadID=10;|Compilation failed: Native compiler returned an error: 2
    Error messages are: |#]
    [#|2004-05-19T17:20:33.479+0100|WARNING|sun-appserver-pe8.0|javax.enterprise.system.stream.err|_ThreadID=10;|Compilation failed: Native compiler returned an error: 2
    Error messages are:
         at com.sun.ejb.codegen.IASEJBC.compileClasses(IASEJBC.java:301)
         at com.sun.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:230)
         at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:617)
         at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:565)
         at com.sun.enterprise.deployment.backend.EJBCompiler.preDeployApp(EJBCompiler.java:360)
         at com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:208)
         at com.sun.enterprise.deployment.backend.AppDeployer.runEJBC(AppDeployer.java:292)
         at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:173)
         at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:105)
         at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:124)
         at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:74)
         at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(DeploymentService.java:233)
         at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(DeploymentService.java:150)
         at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:275)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:287)
         at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:280)
         at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:221)
         at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:823)
         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
         at $Proxy1.invoke(Unknown Source)
         at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:282)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeploymentService(AutoDeployer.java:471)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:367)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:346)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:167)
         at com.sun.enterprise.server.SystemAppLifecycle.deployToTarget(SystemAppLifecycle.java:180)
         at com.sun.enterprise.server.SystemAppLifecycle.deploySystemApps(SystemAppLifecycle.java:155)
         at com.sun.enterprise.server.SystemAppLifecycle.onStartup(SystemAppLifecycle.java:77)
         at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:295)
         at com.sun.enterprise.server.PEMain.run(PEMain.java:220)
         at com.sun.enterprise.server.PEMain.main(PEMain.java:172)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.commons.launcher.ChildMain.run(ChildMain.java:269)
    Caused by: com.sun.ejb.codegen.JavaCompilerException: Native compiler returned an error: 2
    Error messages are:
         at com.sun.ejb.codegen.JavaCompiler.javacCompile(JavaCompiler.java:139)
         at com.sun.ejb.codegen.JavaCompiler.internal_compile(JavaCompiler.java:60)
         at com.sun.ejb.codegen.Compiler.compile(Compiler.java:57)
         at com.sun.ejb.codegen.IASEJBC.compileClasses(IASEJBC.java:293)
         ... 45 more
    |#]
    [#|2004-05-19T17:20:33.739+0100|WARNING|sun-appserver-pe8.0|javax.enterprise.system.tools.deployment|_ThreadID=10;|Deployment Error
    com.sun.enterprise.deployment.backend.IASDeploymentException: Fatal Error from EJB Compiler -- Compilation failed: Native compiler returned an error: 2
    Error messages are:
         at com.sun.ejb.codegen.IASEJBC.compileClasses(IASEJBC.java:301)
         at com.sun.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:230)
         at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:617)
         at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:565)
         at com.sun.enterprise.deployment.backend.EJBCompiler.preDeployApp(EJBCompiler.java:360)
         at com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:208)
         at com.sun.enterprise.deployment.backend.AppDeployer.runEJBC(AppDeployer.java:292)
         at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:173)
         at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:105)
         at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:124)
         at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:74)
         at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(DeploymentService.java:233)
         at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(DeploymentService.java:150)
         at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:275)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:287)
         at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:280)
         at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:221)
         at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:823)
         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
         at $Proxy1.invoke(Unknown Source)
         at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:282)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeploymentService(AutoDeployer.java:471)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:367)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:346)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:167)
         at com.sun.enterprise.server.SystemAppLifecycle.deployToTarget(SystemAppLifecycle.java:180)
         at com.sun.enterprise.server.SystemAppLifecycle.deploySystemApps(SystemAppLifecycle.java:155)
         at com.sun.enterprise.server.SystemAppLifecycle.onStartup(SystemAppLifecycle.java:77)
         at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:295)
         at com.sun.enterprise.server.PEMain.run(PEMain.java:220)
         at com.sun.enterprise.server.PEMain.main(PEMain.java:172)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.commons.launcher.ChildMain.run(ChildMain.java:269)
    |#]
    [#|2004-05-19T17:20:33.739+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.deployment|_ThreadID=10;|Total Deployment Time: 5187 msec, Total EJB Compiler Module Time: 0 msec, Portion spent EJB Compiling: 0%|#]
    [#|2004-05-19T17:20:33.759+0100|SEVERE|sun-appserver-pe8.0|javax.enterprise.system.tools.deployment|_ThreadID=10;|Exception occured in J2EEC Phase
    com.sun.enterprise.deployment.backend.IASDeploymentException: Fatal Error from EJB Compiler -- Compilation failed: Native compiler returned an error: 2
    Error messages are:
         at com.sun.ejb.codegen.IASEJBC.compileClasses(IASEJBC.java:301)
         at com.sun.ejb.codegen.CmpCompiler.compile(CmpCompiler.java:230)
         at com.sun.ejb.codegen.IASEJBC.doCompile(IASEJBC.java:617)
         at com.sun.ejb.codegen.IASEJBC.ejbc(IASEJBC.java:565)
         at com.sun.enterprise.deployment.backend.EJBCompiler.preDeployApp(EJBCompiler.java:360)
         at com.sun.enterprise.deployment.backend.EJBCompiler.compile(EJBCompiler.java:208)
         at com.sun.enterprise.deployment.backend.AppDeployer.runEJBC(AppDeployer.java:292)
         at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:173)
         at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:105)
         at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:124)
         at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:74)
         at com.sun.enterprise.deployment.phasing.DeploymentService.executePhases(DeploymentService.java:233)
         at com.sun.enterprise.deployment.phasing.DeploymentService.deploy(DeploymentService.java:150)
         at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.deploy(ApplicationsConfigMBean.java:275)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:287)
         at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:280)
         at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:221)
         at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:228)
         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:823)
         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
         at $Proxy1.invoke(Unknown Source)
         at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:282)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.invokeDeploymentService(AutoDeployer.java:471)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:367)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployApplication(AutoDeployer.java:346)
         at com.sun.enterprise.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:167)
         at com.sun.enterprise.server.SystemAppLifecycle.deployToTarget(SystemAppLifecycle.java:180)
         at com.sun.enterprise.server.SystemAppLifecycle.deploySystemApps(SystemAppLifecycle.java:155)
         at com.sun.enterprise.server.SystemAppLifecycle.onStartup(SystemAppLifecycle.java:77)
         at com.sun.enterprise.server.ApplicationServer.onStartup(ApplicationServer.java:295)
         at com.sun.enterprise.server.PEMain.run(PEMain.java:220)
         at com.sun.enterprise.server.PEMain.main(PEMain.java:172)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.commons.launcher.ChildMain.run(ChildMain.java:269)
    |#]
    [#|2004-05-19T17:20:33.789+0100|SEVERE|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|Exception while deploying : Fatal Error from EJB Compiler -- Compilation failed: Native compiler returned an error: 2
    Error messages are:
    .|#]
    [#|2004-05-19T17:20:33.799+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|[AutoDeploy] Autodeploy failed : C:\Program Files\Sun\AppServer\lib\install\applications\__ejb_container_timer_app.ear.|#]
    [#|2004-05-19T17:20:33.879+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0302: Starting Tomcat.|#]
    [#|2004-05-19T17:20:34.811+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [adminapp] in virtual server [server] at [web1]|#]
    [#|2004-05-19T17:20:35.111+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [admingui] in virtual server [server] at [asadmin]|#]
    [#|2004-05-19T17:20:35.121+0100|WARNING|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0500: default-locale attribute of locale-charset-info element has been deprecated and is being ignored. Use default-charset attribute of parameter-encoding element instead|#]
    [#|2004-05-19T17:20:35.161+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [com_sun_web_ui] in virtual server [server] at [com_sun_web_ui]|#]
    [#|2004-05-19T17:20:35.181+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [hello] in virtual server [server] at [hello]|#]
    [#|2004-05-19T17:20:35.201+0100|INFO|sun-appserver-pe8.0|org.apache.catalina.startup.Embedded|_ThreadID=10;|Starting tomcat server|#]
    [#|2004-05-19T17:20:35.201+0100|INFO|sun-appserver-pe8.0|org.apache.catalina.startup.Embedded|_ThreadID=10;|Catalina naming disabled|#]
    [#|2004-05-19T17:20:35.412+0100|INFO|sun-appserver-pe8.0|org.apache.catalina.core.StandardEngine|_ThreadID=10;|Starting Servlet Engine: Sun-Java-System/Application-Server-PE-8.0|#]
    [#|2004-05-19T17:20:37.945+0100|INFO|sun-appserver-pe8.0|org.apache.catalina.startup.ContextConfig|_ThreadID=10;|Missing application web.xml, using defaults only StandardEngine[server].StandardHost[server].StandardContext[]|#]
    [#|2004-05-19T17:20:38.456+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 8080|#]
    [#|2004-05-19T17:20:38.556+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 8080|#]
    [#|2004-05-19T17:20:38.847+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 1043|#]
    [#|2004-05-19T17:20:38.887+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 1043|#]
    [#|2004-05-19T17:20:38.987+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 4848|#]
    [#|2004-05-19T17:20:39.007+0100|INFO|sun-appserver-pe8.0|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 4848|#]
    [#|2004-05-19T17:20:39.558+0100|INFO|sun-appserver-pe8.0|javax.enterprise.resource.jms|_ThreadID=10;|JMS5023: JMS service successfully started. Instance Name = imqbroker, Home = [C:\Program Files\Sun\AppServer\imq\bin].|#]
    [#|2004-05-19T17:20:39.568+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=10;|[AutoDeploy] Enabling AutoDeployment service at :1084983639568|#]
    [#|2004-05-19T17:20:39.568+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|CORE5053: Application onReady complete.|#]
    [#|2004-05-19T17:20:39.588+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.core|_ThreadID=10;|Application server startup complete.|#]
    [#|2004-05-19T17:20:44.475+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1041:Sent the event to instance:[com.sun.enterprise.admin.event.ConfigChangeEvent -- server [1 Change(s), Id:1, ts:1084983644465]]|#]
    [#|2004-05-19T17:20:44.545+0100|INFO|sun-appserver-pe8.0|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1046:A change notification was not handled sucessfully, the server will need a restart for the change to be effective.|#]
    Is this EJB compilation error normal ? if not what does it mean ? Sun Java App Server installation isn't OK ?
    I tried to look into the Sun App Server Troubleshooting, searched forums... but couldn't squeeze any valuable info from any of them.
    If you have any sugestion regarding this problem, or you know some web site that addresses it please tell me !
    Many thanks,
    Miguel

    I seem to have the same problem, I cant run sun application server 8.1. The server is in c:\sun\appserver\, I am using netbeans 4.1. I recieve the same comment above:
    The Sun Java System Application Server 8 could not start.
    More information about the cause is in the Server log file.
    Possible reasons include:
    - Port conflicts. (use netstat -a to detect possible port numbers already used by the operating system.)
    - Incorrect server configuration (domain.xml to be corrected manually)
    - Corrupted Deployed Applications preventing the server to start.(This can be seen in the server.log file. In this case, domain.xml needs to be modified).
    I cant see any port conflict, the server is set to port 4848. I dont know about any configurations.
    This is the Exception:
    -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
    -Dcom.sun.aas.promptForIdentity=true
    -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser
    -Dcom.sun.aas.instanceRoot=C:/Sun/AppServer/domains/domain1
    -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
    -Dcom.sun.aas.domainName=domain1
    -Djava.util.logging.manager=com.sun.enterprise.server.logging.ServerLogManager
    -Dproduct.name=Sun-Java-System/Application-Server
    -Dcom.sun.enterprise.overrideablejavaxpackages=javax.faces,javax.servlet.jsp.jstl,javax.xml.bind,javax.help
    -Dcom.sun.aas.configRoot=C:/Sun/AppServer/config
    -Djava.library.path=C:\Program Files\Java\jdk1.5.0_04\jre\bin\client;C:\Sun\AppServer\lib;C:\Sun\AppServer\lib;C:\Program Files\Java\jdk1.5.0_04\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Rational\ClearQuest;
    -Dcom.sun.aas.instanceName=server
    -Dcom.sun.aas.processLauncher=SE
    -cp
    C:/Program Files/Java/jdk1.5.0_04/lib/tools.jar;C:/Sun/AppServer/lib/appserv-rt.jar;C:/Sun/AppServer/lib\admin-cli.jar;C:/Sun/AppServer/lib\appserv-admin.jar;C:/Sun/AppServer/lib\dom.jar;C:/Sun/AppServer/lib\jmxremote.jar;C:/Sun/AppServer/lib\jmxremote_optional.jar;C:/Sun/AppServer/lib\jsf-api.jar;C:/Sun/AppServer/lib\jsf-impl.jar;C:/Sun/AppServer/lib\rmissl.jar;C:/Sun/AppServer/lib\xalan.jar;C:/Sun/AppServer/lib\xercesImpl.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ja.jar;C:/Sun/AppServer/lib\appserv-cmp_ja.jar;C:/Sun/AppServer/lib\appserv-rt_ja.jar;C:/Sun/AppServer/lib\commons-launcher_ja.jar;C:/Sun/AppServer/lib\deployhelp_ja.jar;C:/Sun/AppServer/lib\j2ee_ja.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh_CN.jar;C:/Sun/AppServer/lib\appserv-cmp_zh.jar;C:/Sun/AppServer/lib\appserv-cmp_zh_CN.jar;C:/Sun/AppServer/lib\appserv-rt_zh.jar;C:/Sun/AppServer/lib\appserv-rt_zh_CN.jar;C:/Sun/AppServer/lib\commons-launcher_zh.jar;C:/Sun/AppServer/lib\commons-launcher_zh_CN.jar;C:/Sun/AppServer/lib\deployhelp_zh.jar;C:/Sun/AppServer/lib\deployhelp_zh_CN.jar;C:/Sun/AppServer/lib\j2ee_zh.jar;C:/Sun/AppServer/lib\j2ee_zh_CN.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ko.jar;C:/Sun/AppServer/lib\appserv-cmp_ko.jar;C:/Sun/AppServer/lib\appserv-rt_ko.jar;C:/Sun/AppServer/lib\commons-launcher_ko.jar;C:/Sun/AppServer/lib\deployhelp_ko.jar;C:/Sun/AppServer/lib\j2ee_ko.jar;C:/Sun/AppServer/lib\appserv-assemblytool_fr.jar;C:/Sun/AppServer/lib\appserv-cmp_fr.jar;C:/Sun/AppServer/lib\appserv-rt_fr.jar;C:/Sun/AppServer/lib\commons-launcher_fr.jar;C:/Sun/AppServer/lib\deployhelp_fr.jar;C:/Sun/AppServer/lib\j2ee_fr.jar;C:/Sun/AppServer/lib\appserv-assemblytool_es.jar;C:/Sun/AppServer/lib\appserv-cmp_es.jar;C:/Sun/AppServer/lib\appserv-rt_es.jar;C:/Sun/AppServer/lib\commons-launcher_es.jar;C:/Sun/AppServer/lib\deployhelp_es.jar;C:/Sun/AppServer/lib\j2ee_es.jar;C:/Sun/AppServer/lib\appserv-upgrade.jar;C:/Sun/AppServer/lib\appserv-ext.jar;C:/Sun/AppServer/lib\j2ee.jar;C:/Sun/AppServer/lib\activation.jar;C:/Sun/AppServer/lib\appserv-cmp.jar;C:/Sun/AppServer/lib\appserv-jstl.jar;C:/Sun/AppServer/lib\commons-launcher.jar;C:/Sun/AppServer/lib\commons-logging.jar;C:/Sun/AppServer/lib\j2ee-svc.jar;C:/Sun/AppServer/lib\jax-qname.jar;C:/Sun/AppServer/lib\jaxr-api.jar;C:/Sun/AppServer/lib\jaxr-impl.jar;C:/Sun/AppServer/lib\jaxrpc-api.jar;C:/Sun/AppServer/lib\jaxrpc-impl.jar;C:/Sun/AppServer/lib\mail.jar;C:/Sun/AppServer/lib\relaxngDatatype.jar;C:/Sun/AppServer/lib\saaj-api.jar;C:/Sun/AppServer/lib\saaj-impl.jar;C:/Sun/AppServer/lib\xsdlib.jar;C:/Sun/AppServer/lib/install/applications/jmsra/imqjmsra.jar;C:/Sun/AppServer/imq/lib/jaxm-api.jar;C:/Sun/AppServer/imq/lib/fscontext.jar;C:/Sun/AppServer/lib/ant/lib/ant.jar;C:/Sun/AppServer/pointbase/lib/pbclient.jar;C:/Sun/AppServer/pointbase/lib/pbembedded.jar
    com.sun.enterprise.server.PEMain
    start
    display
    native|#]
    [#|2005-11-02T11:45:43.930+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5034: Could not start the JMS service broker process.|#]
    [#|2005-11-02T11:45:43.940+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5036: More details may be available in the log file for the JMS service broker instance imqbroker. Please refer to the JMS provider documentation for the exact location of this log file.|#]
    [#|2005-11-02T11:45:43.940+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5024: JMS service startup failed.|#]
    [#|2005-11-02T11:45:43.950+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|UnknownException during startup. Disable quick startup by setting system property com.sun.enterprise.server.ss.ASQuickStartup to false
    com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:289)
    at com.sun.enterprise.server.ss.ASLazyKernel.startLifecycle(ASLazyKernel.java:188)
    at com.sun.enterprise.server.ss.ASLazyKernel.startMQ(ASLazyKernel.java:163)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:52)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    Caused by: com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:276)
    ... 5 more
    Caused by: java.io.IOException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
    at java.lang.Runtime.exec(Runtime.java:591)
    at java.lang.Runtime.exec(Runtime.java:464)
    at com.sun.messaging.jmq.admin.jmsspi.JMSAdminImpl.startProvider(JMSAdminImpl.java:769)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:269)
    ... 5 more
    |#]
    [#|2005-11-02T11:45:43.960+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|Exception while stoppping Lifecycle.
    java.lang.NullPointerException
    at com.sun.enterprise.jms.JmsProviderLifecycle.checkProviderStartup(JmsProviderLifecycle.java:389)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onShutdown(JmsProviderLifecycle.java:445)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopLifecycle(ASLazyKernel.java:175)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopMQ(ASLazyKernel.java:169)
    at com.sun.enterprise.server.ss.ASLazyKernel.exitServer(ASLazyKernel.java:74)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:67)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    |#]
    [#|2005-11-02T11:47:53.507+0300|WARNING|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|LAUNCHER005:Spaces in your PATH have been detected. The PATH must be consistently formated (e.g. C:\Program Files\Java\jdk1.5.0\bin; ) or the Appserver may not be able to start and/or stop.  Mixed quoted spaces in your PATH can cause problems, so the launcher will remove all double quotes before invoking the process. The most reliable solution would be to remove all spaces from your path before starting the Appservers components.  |#]
    [#|2005-11-02T11:47:53.517+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|
    C:/Program Files/Java/jdk1.5.0_04\bin\java
    -client
    -Xmx512m
    -XX:NewRatio=2
    -Dcom.sun.aas.defaultLogFile=C:/Sun/AppServer/domains/domain1/logs/server.log
    -Djava.endorsed.dirs=C:/Sun/AppServer/lib/endorsed
    -Djava.security.policy=C:/Sun/AppServer/domains/domain1/config/server.policy
    -Djava.security.auth.login.config=C:/Sun/AppServer/domains/domain1/config/login.conf
    -Dsun.rmi.dgc.server.gcInterval=3600000
    -Dsun.rmi.dgc.client.gcInterval=3600000
    -Djavax.net.ssl.keyStore=C:/Sun/AppServer/domains/domain1/config/keystore.jks
    -Djavax.net.ssl.trustStore=C:/Sun/AppServer/domains/domain1/config/cacerts.jks
    -Djava.ext.dirs=C:/Program Files/Java/jdk1.5.0_04/jre/lib/ext;C:/Sun/AppServer/domains/domain1/lib/ext
    -Djdbc.drivers=com.pointbase.jdbc.jdbcUniversalDriver
    -Djavax.management.builder.initial=com.sun.enterprise.admin.server.core.jmx.AppServerMBeanServerBuilder
    -Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory
    -Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar
    -Dcom.sun.enterprise.taglisteners=jsf-impl.jar
    -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
    -Dcom.sun.aas.configName=server-config
    -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter
    -Ddomain.name=domain1
    -Djmx.invoke.getters=true
    -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
    -Dcom.sun.aas.promptForIdentity=true
    -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser
    -Dcom.sun.aas.instanceRoot=C:/Sun/AppServer/domains/domain1
    -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
    -Dcom.sun.aas.domainName=domain1
    -Djava.util.logging.manager=com.sun.enterprise.server.logging.ServerLogManager
    -Dproduct.name=Sun-Java-System/Application-Server
    -Dcom.sun.enterprise.overrideablejavaxpackages=javax.faces,javax.servlet.jsp.jstl,javax.xml.bind,javax.help
    -Dcom.sun.aas.configRoot=C:/Sun/AppServer/config
    -Djava.library.path=C:\Program Files\Java\jdk1.5.0_04\jre\bin\client;C:\Sun\AppServer\lib;C:\Sun\AppServer\lib;C:\Program Files\Java\jdk1.5.0_04\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Rational\ClearQuest;
    -Dcom.sun.aas.instanceName=server
    -Dcom.sun.aas.processLauncher=SE
    -cp
    C:/Program Files/Java/jdk1.5.0_04/lib/tools.jar;C:/Sun/AppServer/lib/appserv-rt.jar;C:/Sun/AppServer/lib\admin-cli.jar;C:/Sun/AppServer/lib\appserv-admin.jar;C:/Sun/AppServer/lib\dom.jar;C:/Sun/AppServer/lib\jmxremote.jar;C:/Sun/AppServer/lib\jmxremote_optional.jar;C:/Sun/AppServer/lib\jsf-api.jar;C:/Sun/AppServer/lib\jsf-impl.jar;C:/Sun/AppServer/lib\rmissl.jar;C:/Sun/AppServer/lib\xalan.jar;C:/Sun/AppServer/lib\xercesImpl.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ja.jar;C:/Sun/AppServer/lib\appserv-cmp_ja.jar;C:/Sun/AppServer/lib\appserv-rt_ja.jar;C:/Sun/AppServer/lib\commons-launcher_ja.jar;C:/Sun/AppServer/lib\deployhelp_ja.jar;C:/Sun/AppServer/lib\j2ee_ja.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh_CN.jar;C:/Sun/AppServer/lib\appserv-cmp_zh.jar;C:/Sun/AppServer/lib\appserv-cmp_zh_CN.jar;C:/Sun/AppServer/lib\appserv-rt_zh.jar;C:/Sun/AppServer/lib\appserv-rt_zh_CN.jar;C:/Sun/AppServer/lib\commons-launcher_zh.jar;C:/Sun/AppServer/lib\commons-launcher_zh_CN.jar;C:/Sun/AppServer/lib\deployhelp_zh.jar;C:/Sun/AppServer/lib\deployhelp_zh_CN.jar;C:/Sun/AppServer/lib\j2ee_zh.jar;C:/Sun/AppServer/lib\j2ee_zh_CN.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ko.jar;C:/Sun/AppServer/lib\appserv-cmp_ko.jar;C:/Sun/AppServer/lib\appserv-rt_ko.jar;C:/Sun/AppServer/lib\commons-launcher_ko.jar;C:/Sun/AppServer/lib\deployhelp_ko.jar;C:/Sun/AppServer/lib\j2ee_ko.jar;C:/Sun/AppServer/lib\appserv-assemblytool_fr.jar;C:/Sun/AppServer/lib\appserv-cmp_fr.jar;C:/Sun/AppServer/lib\appserv-rt_fr.jar;C:/Sun/AppServer/lib\commons-launcher_fr.jar;C:/Sun/AppServer/lib\deployhelp_fr.jar;C:/Sun/AppServer/lib\j2ee_fr.jar;C:/Sun/AppServer/lib\appserv-assemblytool_es.jar;C:/Sun/AppServer/lib\appserv-cmp_es.jar;C:/Sun/AppServer/lib\appserv-rt_es.jar;C:/Sun/AppServer/lib\commons-launcher_es.jar;C:/Sun/AppServer/lib\deployhelp_es.jar;C:/Sun/AppServer/lib\j2ee_es.jar;C:/Sun/AppServer/lib\appserv-upgrade.jar;C:/Sun/AppServer/lib\appserv-ext.jar;C:/Sun/AppServer/lib\j2ee.jar;C:/Sun/AppServer/lib\activation.jar;C:/Sun/AppServer/lib\appserv-cmp.jar;C:/Sun/AppServer/lib\appserv-jstl.jar;C:/Sun/AppServer/lib\commons-launcher.jar;C:/Sun/AppServer/lib\commons-logging.jar;C:/Sun/AppServer/lib\j2ee-svc.jar;C:/Sun/AppServer/lib\jax-qname.jar;C:/Sun/AppServer/lib\jaxr-api.jar;C:/Sun/AppServer/lib\jaxr-impl.jar;C:/Sun/AppServer/lib\jaxrpc-api.jar;C:/Sun/AppServer/lib\jaxrpc-impl.jar;C:/Sun/AppServer/lib\mail.jar;C:/Sun/AppServer/lib\relaxngDatatype.jar;C:/Sun/AppServer/lib\saaj-api.jar;C:/Sun/AppServer/lib\saaj-impl.jar;C:/Sun/AppServer/lib\xsdlib.jar;C:/Sun/AppServer/lib/install/applications/jmsra/imqjmsra.jar;C:/Sun/AppServer/imq/lib/jaxm-api.jar;C:/Sun/AppServer/imq/lib/fscontext.jar;C:/Sun/AppServer/lib/ant/lib/ant.jar;C:/Sun/AppServer/pointbase/lib/pbclient.jar;C:/Sun/AppServer/pointbase/lib/pbembedded.jar
    com.sun.enterprise.server.PEMain
    start
    display
    native|#]
    [#|2005-11-02T11:47:57.533+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5034: Could not start the JMS service broker process.|#]
    [#|2005-11-02T11:47:57.543+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5036: More details may be available in the log file for the JMS service broker instance imqbroker. Please refer to the JMS provider documentation for the exact location of this log file.|#]
    [#|2005-11-02T11:47:57.543+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5024: JMS service startup failed.|#]
    [#|2005-11-02T11:47:57.563+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|UnknownException during startup. Disable quick startup by setting system property com.sun.enterprise.server.ss.ASQuickStartup to false
    com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:289)
    at com.sun.enterprise.server.ss.ASLazyKernel.startLifecycle(ASLazyKernel.java:188)
    at com.sun.enterprise.server.ss.ASLazyKernel.startMQ(ASLazyKernel.java:163)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:52)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    Caused by: com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:276)
    ... 5 more
    Caused by: java.io.IOException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
    at java.lang.Runtime.exec(Runtime.java:591)
    at java.lang.Runtime.exec(Runtime.java:464)
    at com.sun.messaging.jmq.admin.jmsspi.JMSAdminImpl.startProvider(JMSAdminImpl.java:769)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:269)
    ... 5 more
    |#]
    [#|2005-11-02T11:47:57.563+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|Exception while stoppping Lifecycle.
    java.lang.NullPointerException
    at com.sun.enterprise.jms.JmsProviderLifecycle.checkProviderStartup(JmsProviderLifecycle.java:389)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onShutdown(JmsProviderLifecycle.java:445)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopLifecycle(ASLazyKernel.java:175)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopMQ(ASLazyKernel.java:169)
    at com.sun.enterprise.server.ss.ASLazyKernel.exitServer(ASLazyKernel.java:74)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:67)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    |#]
    [#|2005-11-02T11:47:58.224+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=11;|sending notification to server...server|#]
    [#|2005-11-02T11:47:58.224+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=11;|Server shutdown complete.|#]
    [#|2005-11-02T11:49:01.705+0300|WARNING|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|LAUNCHER005:Spaces in your PATH have been detected. The PATH must be consistently formated (e.g. C:\Program Files\Java\jdk1.5.0\bin; ) or the Appserver may not be able to start and/or stop.  Mixed quoted spaces in your PATH can cause problems, so the launcher will remove all double quotes before invoking the process. The most reliable solution would be to remove all spaces from your path before starting the Appservers components.  |#]
    [#|2005-11-02T11:49:01.715+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|
    C:/Program Files/Java/jdk1.5.0_04\bin\java
    -client
    -Xmx512m
    -XX:NewRatio=2
    -Dcom.sun.aas.defaultLogFile=C:/Sun/AppServer/domains/domain1/logs/server.log
    -Djava.endorsed.dirs=C:/Sun/AppServer/lib/endorsed
    -Djava.security.policy=C:/Sun/AppServer/domains/domain1/config/server.policy
    -Djava.security.auth.login.config=C:/Sun/AppServer/domains/domain1/config/login.conf
    -Dsun.rmi.dgc.server.gcInterval=3600000
    -Dsun.rmi.dgc.client.gcInterval=3600000
    -Djavax.net.ssl.keyStore=C:/Sun/AppServer/domains/domain1/config/keystore.jks
    -Djavax.net.ssl.trustStore=C:/Sun/AppServer/domains/domain1/config/cacerts.jks
    -Djava.ext.dirs=C:/Program Files/Java/jdk1.5.0_04/jre/lib/ext;C:/Sun/AppServer/domains/domain1/lib/ext
    -Djdbc.drivers=com.pointbase.jdbc.jdbcUniversalDriver
    -Djavax.management.builder.initial=com.sun.enterprise.admin.server.core.jmx.AppServerMBeanServerBuilder
    -Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory
    -Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar
    -Dcom.sun.enterprise.taglisteners=jsf-impl.jar
    -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
    -Dcom.sun.aas.configName=server-config
    -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter
    -Ddomain.name=domain1
    -Djmx.invoke.getters=true
    -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
    -Dcom.sun.aas.promptForIdentity=true
    -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser
    -Dcom.sun.aas.instanceRoot=C:/Sun/AppServer/domains/domain1
    -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl
    -Dcom.sun.aas.domainName=domain1
    -Djava.util.logging.manager=com.sun.enterprise.server.logging.ServerLogManager
    -Dproduct.name=Sun-Java-System/Application-Server
    -Dcom.sun.enterprise.overrideablejavaxpackages=javax.faces,javax.servlet.jsp.jstl,javax.xml.bind,javax.help
    -Dcom.sun.aas.configRoot=C:/Sun/AppServer/config
    -Djava.library.path=C:\Program Files\Java\jdk1.5.0_04\jre\bin\client;C:\Sun\AppServer\lib;C:\Sun\AppServer\lib;C:\Program Files\Java\jdk1.5.0_04\bin;.;C:\WINDOWS\system32;C:\WINDOWS;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\lib;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\Sun\AppServer\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Rational\ClearQuest;
    -Dcom.sun.aas.instanceName=server
    -Dcom.sun.aas.processLauncher=SE
    -cp
    C:/Program Files/Java/jdk1.5.0_04/lib/tools.jar;C:/Sun/AppServer/lib/appserv-rt.jar;C:/Sun/AppServer/lib\admin-cli.jar;C:/Sun/AppServer/lib\appserv-admin.jar;C:/Sun/AppServer/lib\dom.jar;C:/Sun/AppServer/lib\jmxremote.jar;C:/Sun/AppServer/lib\jmxremote_optional.jar;C:/Sun/AppServer/lib\jsf-api.jar;C:/Sun/AppServer/lib\jsf-impl.jar;C:/Sun/AppServer/lib\rmissl.jar;C:/Sun/AppServer/lib\xalan.jar;C:/Sun/AppServer/lib\xercesImpl.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ja.jar;C:/Sun/AppServer/lib\appserv-cmp_ja.jar;C:/Sun/AppServer/lib\appserv-rt_ja.jar;C:/Sun/AppServer/lib\commons-launcher_ja.jar;C:/Sun/AppServer/lib\deployhelp_ja.jar;C:/Sun/AppServer/lib\j2ee_ja.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh.jar;C:/Sun/AppServer/lib\appserv-assemblytool_zh_CN.jar;C:/Sun/AppServer/lib\appserv-cmp_zh.jar;C:/Sun/AppServer/lib\appserv-cmp_zh_CN.jar;C:/Sun/AppServer/lib\appserv-rt_zh.jar;C:/Sun/AppServer/lib\appserv-rt_zh_CN.jar;C:/Sun/AppServer/lib\commons-launcher_zh.jar;C:/Sun/AppServer/lib\commons-launcher_zh_CN.jar;C:/Sun/AppServer/lib\deployhelp_zh.jar;C:/Sun/AppServer/lib\deployhelp_zh_CN.jar;C:/Sun/AppServer/lib\j2ee_zh.jar;C:/Sun/AppServer/lib\j2ee_zh_CN.jar;C:/Sun/AppServer/lib\appserv-assemblytool_ko.jar;C:/Sun/AppServer/lib\appserv-cmp_ko.jar;C:/Sun/AppServer/lib\appserv-rt_ko.jar;C:/Sun/AppServer/lib\commons-launcher_ko.jar;C:/Sun/AppServer/lib\deployhelp_ko.jar;C:/Sun/AppServer/lib\j2ee_ko.jar;C:/Sun/AppServer/lib\appserv-assemblytool_fr.jar;C:/Sun/AppServer/lib\appserv-cmp_fr.jar;C:/Sun/AppServer/lib\appserv-rt_fr.jar;C:/Sun/AppServer/lib\commons-launcher_fr.jar;C:/Sun/AppServer/lib\deployhelp_fr.jar;C:/Sun/AppServer/lib\j2ee_fr.jar;C:/Sun/AppServer/lib\appserv-assemblytool_es.jar;C:/Sun/AppServer/lib\appserv-cmp_es.jar;C:/Sun/AppServer/lib\appserv-rt_es.jar;C:/Sun/AppServer/lib\commons-launcher_es.jar;C:/Sun/AppServer/lib\deployhelp_es.jar;C:/Sun/AppServer/lib\j2ee_es.jar;C:/Sun/AppServer/lib\appserv-upgrade.jar;C:/Sun/AppServer/lib\appserv-ext.jar;C:/Sun/AppServer/lib\j2ee.jar;C:/Sun/AppServer/lib\activation.jar;C:/Sun/AppServer/lib\appserv-cmp.jar;C:/Sun/AppServer/lib\appserv-jstl.jar;C:/Sun/AppServer/lib\commons-launcher.jar;C:/Sun/AppServer/lib\commons-logging.jar;C:/Sun/AppServer/lib\j2ee-svc.jar;C:/Sun/AppServer/lib\jax-qname.jar;C:/Sun/AppServer/lib\jaxr-api.jar;C:/Sun/AppServer/lib\jaxr-impl.jar;C:/Sun/AppServer/lib\jaxrpc-api.jar;C:/Sun/AppServer/lib\jaxrpc-impl.jar;C:/Sun/AppServer/lib\mail.jar;C:/Sun/AppServer/lib\relaxngDatatype.jar;C:/Sun/AppServer/lib\saaj-api.jar;C:/Sun/AppServer/lib\saaj-impl.jar;C:/Sun/AppServer/lib\xsdlib.jar;C:/Sun/AppServer/lib/install/applications/jmsra/imqjmsra.jar;C:/Sun/AppServer/imq/lib/jaxm-api.jar;C:/Sun/AppServer/imq/lib/fscontext.jar;C:/Sun/AppServer/lib/ant/lib/ant.jar;C:/Sun/AppServer/pointbase/lib/pbclient.jar;C:/Sun/AppServer/pointbase/lib/pbembedded.jar
    com.sun.enterprise.server.PEMain
    start
    display
    native|#]
    [#|2005-11-02T11:49:05.671+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5034: Could not start the JMS service broker process.|#]
    [#|2005-11-02T11:49:05.671+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5036: More details may be available in the log file for the JMS service broker instance imqbroker. Please refer to the JMS provider documentation for the exact location of this log file.|#]
    [#|2005-11-02T11:49:05.681+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.jms|_ThreadID=10;|JMS5024: JMS service startup failed.|#]
    [#|2005-11-02T11:49:05.691+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|UnknownException during startup. Disable quick startup by setting system property com.sun.enterprise.server.ss.ASQuickStartup to false
    com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:289)
    at com.sun.enterprise.server.ss.ASLazyKernel.startLifecycle(ASLazyKernel.java:188)
    at com.sun.enterprise.server.ss.ASLazyKernel.startMQ(ASLazyKernel.java:163)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:52)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    Caused by: com.sun.appserv.server.ServerLifecycleException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:276)
    ... 5 more
    Caused by: java.io.IOException: CreateProcess: C:\Sun\AppServer\imq\bin\imqbrokersvc.exe -javahome "C:/Program Files/Java/jdk1.5.0_04" -varhome C:/Sun/AppServer/domains/domain1\imq -name imqbroker -console -port 7676 -bgnd -silent error=3
    at java.lang.ProcessImpl.create(Native Method)
    at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
    at java.lang.ProcessImpl.start(ProcessImpl.java:30)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
    at java.lang.Runtime.exec(Runtime.java:591)
    at java.lang.Runtime.exec(Runtime.java:464)
    at com.sun.messaging.jmq.admin.jmsspi.JMSAdminImpl.startProvider(JMSAdminImpl.java:769)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onInitialization(JmsProviderLifecycle.java:269)
    ... 5 more
    |#]
    [#|2005-11-02T11:49:05.691+0300|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=10;|Exception while stoppping Lifecycle.
    java.lang.NullPointerException
    at com.sun.enterprise.jms.JmsProviderLifecycle.checkProviderStartup(JmsProviderLifecycle.java:389)
    at com.sun.enterprise.jms.JmsProviderLifecycle.onShutdown(JmsProviderLifecycle.java:445)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopLifecycle(ASLazyKernel.java:175)
    at com.sun.enterprise.server.ss.ASLazyKernel.stopMQ(ASLazyKernel.java:169)
    at com.sun.enterprise.server.ss.ASLazyKernel.exitServer(ASLazyKernel.java:74)
    at com.sun.enterprise.server.ss.ASLazyKernel.startASSocketServices(ASLazyKernel.java:67)
    at com.sun.enterprise.server.PEMain.run(PEMain.java:274)
    at com.sun.enterprise.server.PEMain.main(PEMain.java:220)
    |#]
    [#|2005-11-02T11:49:06.432+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.system.core|_ThreadID=11;|sending notification to server...server|#]
    [#|2005-11-02T11:50:38.915+0300|WARNING|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|LAUNCHER005:Spaces in your PATH have been detected. The PATH must be consistently formated (e.g. C:\Program Files\Java\jdk1.5.0\bin; ) or the Appserver may not be able to start and/or stop.  Mixed quoted spaces in your PATH can cause problems, so the launcher will remove all double quotes before invoking the process. The most reliable solution would be to remove all spaces from your path before starting the Appservers components.  |#]
    [#|2005-11-02T11:50:38.925+0300|INFO|sun-appserver-pe8.1_02|javax.enterprise.tools.launcher|_ThreadID=10;|
    C:/Program Files/Java/jdk1.5.0_04\bin\java
    -client
    -Xdebug
    -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009
    -Xmx512m
    -XX:NewRatio=2
    -Dcom.sun.aas.defaultLogFile=C:/Sun/AppServer/domains/domain1/logs/server.log
    -Dcom.sun.aas.jdwpOptions=transport=dt_socket,server=y,suspend=n,address=9009
    -Djava.endorsed.dirs=C:/Sun/AppServer/lib/endorsed
    -Djava.security.policy=C:/Sun/AppServer/domains/domain1/config/server.policy
    -Djava.security.auth.login.config=C:/Sun/AppServer/domains/domain1/config/login.conf
    -Dsun.rmi.dgc.server.gcInterval=3600000
    -Dsun.rmi.dgc.client.gcInterval=3600000
    -Djavax.net.ssl.keyStore=C:/Sun/AppServer/domains/domain1/config/keystore.jks
    -Djavax.net.ssl.trustStore=C:/Sun/AppServer/domains/domain1/config/cacerts.jks
    -Djava.ext.dirs=C:/Program Files/Java/jdk1.5.0_04/

  • How do you deploy a stand alone app/game in java

    I have a few questions regarding creating a stand alone app for java.
    1) What is the best way to deploy it? how would I create the exe, etc. I've read that you can create executable jars but this doesn't seem like something that would be user friendly
    2) Is there a way to deploy the game/app with it's own JVM so the hosts machine doesn't have to have it installed? How would I go about doing this?
    3) How would I run the app in full screen? What libraries are available?
    Any other advice/comments welcome.

    @morgair: There are plenty of good reasons for using Java to develop software, even when you only plan on targeting Windows. As good as Java distribution is there is no way to guarantee that they a) have Java installed and more likely b) have the version you target installed. Telling a user that they need to go to a second website in order to download and install more software is a huge turn off.
    Most PC users have no experience with a .jar so when they download it they just don't know what to do (even if all they need to do is double-click just like a .exe). Giving out an executable .jar is another turnoff.
    sarcasteak wrote:
    1) What is the best way to deploy it? how would I create the exe, etc. I've read that you can create executable jars but this doesn't seem like something that would be user friendlyIn terms of the .exe, Java does not create .exe's. There are some java to native compilers that will turn your java code into a natice .exe that will run on it's own or with a bundled library. However they are either old, buggy and badly supported, or extremely expensive (googling Java native compiler should give you some good results). There are also plenty 'java to exe' pieces of software. Rather then compiling the java code to native code they wrap the .jar up inside a .exe. When you run the .exe it unpacks the .jar and runs it. To the user it looks like a .exe, however it's still just an executable jar and still requires Java to be pre-installed on their machine in order to run (although some can offer custom error messages if Java is not found).
    If Java is setup, then executable jars are essentially act the same as exe's. For creating them, if you are using NetBeans then they are already available in the project/dist folder after you build. You can also do it on the command line but I never need to so I don't know how. However as a tutorial [this site looks promising|http://neptune.netcomp.monash.edu.au/javahelp/howto/jar.htm].
    I personally use a small .exe which I built using the D programming language. It reads from a text file in the same directory and executes each line in turn. Typically all the text file contains is 'java -jar MyProg.jar'. This way my .jars for the user looks like a .exe.
    Instead of a .exe you could also use a .bat. There are also some .bat to .exe converters online, although I haven't tried any of them so use at your own risk.
    sarcasteak wrote:
    2) Is there a way to deploy the game/app with it's own JVM so the hosts machine doesn't have to have it installed? How would I go about doing this?Yes, you are allowed to redistribute the Sun Java runtime. Just zip up the JRE on your machine and include it with the app/game. You'll also need to ensure that whatever starts the jar uses your unzipped JRE and not the JRE on their machine. The exe I described above also allows this by having the text file contain something like: './my_jre/bin/java -jar MyProg.jar'.
    But first you should also take a look at the license restrictions, they should be in the JREs directory. For example you must redistribute the complete JRE which is a problem if your app is just a few megabytes (when zipped the runtime is usually over 30mb). There are probably plenty of topics on this forum which already discuss redistribution of the JRE.
    sarcasteak wrote:
    3) How would I run the app in full screen? What libraries are available?If it's an app then it should be approximately:
    JFrame frame = new JFrame();
    frame.setExtendedState(JFrame.MAXIMIZED_BOTH);or;
    JFrame frame = new JFrame();
    frame.setExtendedState(frame.getExtendedState() | JFrame.MAXIMIZED_BOTH);However if you want a proper full screen then you need to use the [Full-Screen exclusive mode|http://java.sun.com/docs/books/tutorial/extra/fullscreen/exclusivemode.html], approximately:
    JFrame frame = new JFrame();
    GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().setFullScreenWindow( frame );I've also heard plenty of people recommend using java web-start for desktop java apps. Personally I've never used it, but it's something you might want to research.
    Edited by: jl235 on Jun 22, 2009 3:03 AM

  • How do I run multiple java apps in one JVM to reduce memory use?

    Hi all,
    I saw an article either on the web or in a magazine not too long ago about how to "detect" if the app is already running, and if so, it hands off the new instance to the already running JVM, which then creates a thread to run the Java app in. As it turns out, my app will be used in an ASP environment, through Citrix. We may have as many as 50 to 100 users running the same app, each with their own unique user ID, but all using the same one server to run it on. Each instance eats up 25MB of memory right now. So the question is if anybody knows of a URL or an app like this that can handle the process of running the same (or even different Java) apps in one JVM as separate threads, instead of requring several instances of the JVM to run? I know this article presented a fully working example, and I believe I know enough to do it but I wanted ot use the article as a reference to make sure it is done right. I know that each app basically would use the same one "launcher" program that would on first launch "listen" to a port, as well as send a message through the port to see if an existing launcher was running. If it does, it hands off the Java app to be run to the existing luancher application and shuts down the 2nd launching app. By using this method, the JVM eats up its normal memory, but each Java app only consumes its necessary memory as well and doesn't use up more JVM instance memory.
    Thanks.

    <pre>
    import java.util.Properties;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.lang.reflect.Method;
    import java.lang.reflect.InvocationTargetException;
    import java.util.Enumeration;
    import java.util.NoSuchElementException;
    public class RunProg implements Runnable, Cloneable
    private String iProg;
    private String iArgs[];
    public static void main(String args[])
    new RunProg().main();
    // first step is to start main program itself
    private void main()
    Properties properties = System.getProperties();
    try
    properties.load(new FileInputStream("RunProg.properties"));
    catch(IOException e)
    System.setProperties(properties);
    int i = 0;
    System.out.println("enter main, activeCount=" + Thread.activeCount());
    while(true)
    String program = properties.getProperty("Prog" + i);
    if(program == null)
    break;
    StringTokenizer st = new StringTokenizer(program);
    String[] args = new String[st.countTokens() - 1];
    try
    RunProg rp = (RunProg)this.clone();
    rp.iProg = st.nextToken();
    for(int j = 0; st.hasMoreTokens(); j++)
         args[j] = st.nextToken();
    rp.iArgs = args;
    Thread th = new Thread(rp);
    th.setName("prog" + i + "=" + program);
    th.start();
    System.out.println("prog" + i + "=" + program + ", started");
    catch(CloneNotSupportedException e)
    System.out.println("prog" + i + "=" + program + ", can't start");
    i++;
         System.out.println("end of main, activeCount=" + Thread.activeCount());
    // next step is to start all others one by one
    public void run()
    try
    Class c = Class.forName(iProg);
    Class p[] = new Class[1];
    p[0] = String[].class;
    Method m = c.getMethod("main", p);
    Object o[] = new Object[1];
    o[0] = iArgs;
    m.invoke(null, o);
    catch(ClassNotFoundException e)
    System.out.println(iProg + "ClassNotFoundException");
    catch(NoSuchMethodException e)
    System.out.println(iProg + "NoSuchMethodException");
    catch(InvocationTargetException e)
    System.out.println(iProg + "NoSuchMethodException");
    catch(IllegalAccessException e)
    System.out.println(iProg + "NoSuchMethodException");
    System.out.println(Thread.currentThread().getName() + ", ended");
    System.out.println("exit run, activeCount=" + Thread.activeCount());
    // setup SecurityManager to disable method System.exit()
    public RunProg()
         SecurityManager sm = new mySecurityManager();
         System.setSecurityManager(sm);
    // inner-class to disable method System.exit()
    protected class mySecurityManager extends SecurityManager
         public void checkExit(int status)
              super.checkExit(status);
              Thread.currentThread().stop();
              throw new SecurityException();
    * inner-class to analyze StringTokenizer. This class is enhanced to check double Quotation marks
    protected class StringTokenizer implements Enumeration
    private int currentPosition;
    private int maxPosition;
    private String str;
    private String delimiters;
    private boolean retTokens;
    * Constructs a string tokenizer for the specified string. All
    * characters in the <code>delim</code> argument are the delimiters
    * for separating tokens.
    * <p>
    * If the <code>returnTokens</code> flag is <code>true</code>, then
    * the delimiter characters are also returned as tokens. Each
    * delimiter is returned as a string of length one. If the flag is
    * <code>false</code>, the delimiter characters are skipped and only
    * serve as separators between tokens.
    * @param str a string to be parsed.
    * @param delim the delimiters.
    * @param returnTokens flag indicating whether to return the delimiters
    * as tokens.
    public StringTokenizer(String str, String delim, boolean returnTokens)
    currentPosition = 0;
    this.str = str;
    maxPosition = str.length();
    delimiters = delim;
    retTokens = returnTokens;
    * Constructs a string tokenizer for the specified string. The
    * characters in the <code>delim</code> argument are the delimiters
    * for separating tokens. Delimiter characters themselves will not
    * be treated as tokens.
    * @param str a string to be parsed.
    * @param delim the delimiters.
    public StringTokenizer(String str, String delim)
    this(str, delim, false);
    * Constructs a string tokenizer for the specified string. The
    * tokenizer uses the default delimiter set, which is
    * <code>"&#92;t&#92;n&#92;r&#92;f"</code>: the space character, the tab
    * character, the newline character, the carriage-return character,
    * and the form-feed character. Delimiter characters themselves will
    * not be treated as tokens.
    * @param str a string to be parsed.
    public StringTokenizer(String str)
    this(str, " \t\n\r\f", false);
    * Skips delimiters.
    protected void skipDelimiters()
    while(!retTokens &&
    (currentPosition < maxPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) >= 0))
    currentPosition++;
    * Tests if there are more tokens available from this tokenizer's string.
    * If this method returns <tt>true</tt>, then a subsequent call to
    * <tt>nextToken</tt> with no argument will successfully return a token.
    * @return <code>true</code> if and only if there is at least one token
    * in the string after the current position; <code>false</code>
    * otherwise.
    public boolean hasMoreTokens()
    skipDelimiters();
    return(currentPosition < maxPosition);
    * Returns the next token from this string tokenizer.
    * @return the next token from this string tokenizer.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    public String nextToken()
    skipDelimiters();
    if(currentPosition >= maxPosition)
    throw new NoSuchElementException();
    int start = currentPosition;
    boolean inQuotation = false;
    while((currentPosition < maxPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) < 0 || inQuotation))
    if(str.charAt(currentPosition) == '"')
    inQuotation = !inQuotation;
    currentPosition++;
    if(retTokens && (start == currentPosition) &&
    (delimiters.indexOf(str.charAt(currentPosition)) >= 0))
    currentPosition++;
    String s = str.substring(start, currentPosition);
    if(s.charAt(0) == '"')
    s = s.substring(1);
    if(s.charAt(s.length() - 1) == '"')
    s = s.substring(0, s.length() - 1);
    return s;
    * Returns the next token in this string tokenizer's string. First,
    * the set of characters considered to be delimiters by this
    * <tt>StringTokenizer</tt> object is changed to be the characters in
    * the string <tt>delim</tt>. Then the next token in the string
    * after the current position is returned. The current position is
    * advanced beyond the recognized token. The new delimiter set
    * remains the default after this call.
    * @param delim the new delimiters.
    * @return the next token, after switching to the new delimiter set.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    public String nextToken(String delim)
    delimiters = delim;
    return nextToken();
    * Returns the same value as the <code>hasMoreTokens</code>
    * method. It exists so that this class can implement the
    * <code>Enumeration</code> interface.
    * @return <code>true</code> if there are more tokens;
    * <code>false</code> otherwise.
    * @see java.util.Enumeration
    * @see java.util.StringTokenizer#hasMoreTokens()
    public boolean hasMoreElements()
    return hasMoreTokens();
    * Returns the same value as the <code>nextToken</code> method,
    * except that its declared return value is <code>Object</code> rather than
    * <code>String</code>. It exists so that this class can implement the
    * <code>Enumeration</code> interface.
    * @return the next token in the string.
    * @exception NoSuchElementException if there are no more tokens in this
    * tokenizer's string.
    * @see java.util.Enumeration
    * @see java.util.StringTokenizer#nextToken()
    public Object nextElement()
    return nextToken();
    * Calculates the number of times that this tokenizer's
    * <code>nextToken</code> method can be called before it generates an
    * exception. The current position is not advanced.
    * @return the number of tokens remaining in the string using the current
    * delimiter set.
    * @see java.util.StringTokenizer#nextToken()
    public int countTokens()
    int count = 0;
    int currpos = currentPosition;
    while(currpos < maxPosition)
    * This is just skipDelimiters(); but it does not affect
    * currentPosition.
    while(!retTokens &&
    (currpos < maxPosition) &&
    (delimiters.indexOf(str.charAt(currpos)) >= 0))
    currpos++;
    if(currpos >= maxPosition)
    break;
    int start = currpos;
    boolean inQuotation = false;
    while((currpos < maxPosition) &&
    (delimiters.indexOf(str.charAt(currpos)) < 0 || inQuotation))
    if(str.charAt(currpos) == '"')
    inQuotation = !inQuotation;
    currpos++;
    if(retTokens && (start == currpos) &&
    (delimiters.indexOf(str.charAt(currpos)) >= 0))
    currpos++;
    count++;
    return count;
    </pre>
    RunProg.properties like this:
    Prog1=GetEnv 47838 837489 892374 839274
    Prog0=GetEnv "djkfds dfkljsd" dsklfj

  • I have purchased a from within an app. I submit my password for the app, and then my Apple ID.  I then get the following messages "Regrant failure _ please log in with the same user that has bought this app"  and that is followed  by "cant conn with IT _

    I have purchased an item from within the app PocketBible on my iPad.  However when I try to download it I am asked for my app User Name and Password and then my Apple ID and password.  I give both of these.  I then get a message which says Regrant failure - Please log in with the same user that has bought the app.  That is then followed by  Pocket Bible Alert - cannot connect to iTunes Store.
    Anybody got any ideas, both what the 1st alert means and how I get round the problem please.

    I had the same problem. My wife had the PocketBible on her Ipad 2 and she transferred ownership to me. I had to delete the app and reinstall it from the App store(logged in with my apple ID) and its working without a problem. I do not get those error messages when I attempt to Buy/Upgrade or Add/Remove books.

  • How to pass Objects from Java App to JavaFX Application

    Hello,
    New to the JavaFX. I have a Java Swing Application. I am trying to use the TreeViewer in JavaFX since it seems to be a bit better to use and less confusing.
    Any help is appreciated.
    Thanks
    I have my Java app calling my treeviewer JavaFX as
    -- Java Application --
    public class EPMFrame extends JFrame {
    Customer _custObj
    private void categoryAction(ActionEvent e)   // method called by Toolbar
            ocsCategoryViewer ocsFX;    //javaFX treeviewer
            ocsFX = new ocsCategoryViewer();    // need to pass in the Customer Object to this Not seeing how to do it.
                                                  // tried ocsFX = new ocsCategoryViewer(_custObj) ;    nothing happened even when set this as a string with a value
    public class ocsCategoryViewer extends Application {
    String _customer;
    @Override
        public void start(Stage primaryStage) {
         TreeView <String> ocsTree;
         TreeItem <String> root , subcat;
      TreeItem <String> root = new TreeItem <String> ("/");
            root.setExpanded(true);
             ocsTree = new TreeView <String> (root);
             buildTree();     // this uses the Customer Object.
            StackPane stkp_root = new StackPane();
            stkp_root.getChildren().add(btn);
            stkp_root.getChildren().add(ocsTree);
            Scene scene = new Scene(stkp_root, 300, 250);
            primaryStage.setTitle("Tree Category Viewer");
            primaryStage.setScene(scene);
            primaryStage.show();
        public static void main(String[] args) {
            _customer = args[0];      // temporarily trying to pass in string.
            launch(args);

    JavaFX and Swing integration is documented by Oracle - make sure you understand that before doing further development.
    What are you really trying to do?  The answer to your question depends on the approach you are taking (which I can't really work out from your question).  You will be doing one of:
    1. Run your Swing application and your JavaFX application as different processes and communicate between them.
    This is the case if you have both a Swing application with a main which you launch (e.g. java MySwingApp) and JavaFX application which extends application which you launch independently (e.g. java MyJavaFXApp).
    You will need to do something like open a client/server network socket between the applications and send the data between them.
    2. Run a Swing application with embedded JavaFX components.
    So you just run java MySwingApp.
    You use a JFXPanel, which is "a component to embed JavaFX content into Swing applications."
    3. Run a Java application with embedded Swing components.
    So you just run java MyJavaFXApp.
    You use a SwingNode, which is "used to embed a Swing content into a JavaFX application".
    My recommendation is:
    a. Don't use approach number one and have separate apps written in Swing and Java - that would be pretty complicated and unwarranted for almost all applications.
    b. Don't mix the two toolkits unless you really need to.  An example of a real need is that you have a huge swing app based upon the NetBeans platform and you want to embed a couple of JavaFX graphs in there.  But if your application is only pretty small (e.g., it took less than a month to write), just choose one toolkit or the other and implement your application entirely in that toolkit.  If your entire application is in Swing and you are just using JavaFX because you think its TreeView is easier to program, don't do that; either learn how to use Swing's tree control and use that or rewrite your entire application in JavaFX.  Reasons for my suggestion are listed here: JavaFX Tip 9: Do Not Mix Swing / JavaFX
    c. If you do need to mix the two toolkits, the answer of which approach to use will be obvious.  If you have a huge Swing app and want to embed one or two JavaFX components in it, then use JFXPanel.  If you have a huge JavaFX app and want to embed one or two Swing components in it, use a SwingNode.  Once you do start mixing the two toolkits be very careful about thread processing, which you are almost certain screw up at least during development, no matter how an experienced a developer you are.  Also sharing the data between the Swing and JavaFX components will be trivial as you are now running everything in the same application within the virtual machine and it is all just Java so you can just pass data around as parameters to constructors and method calls, the same way you usually do in a Java program, you can even use static classes and data references to share data but usually a dependency injection framework is better if you are going to do that - personally I'd just stick to simply passing data through method calls.

Maybe you are looking for

  • Outlook Web Access - Not Working In Safari

    Not sure if it can be fixed or not. I get the same problem in Camino. When I go to my works Outlook Web Access, I can login and see everything - however the setup is all wrong. There are boxes and files and folders in places that it should not be. It

  • Upgrade to iWeb 09 before pub to new web host?

    I never bought iLife 09 because in the last year I've almost exclusively used aperture and Photoshop for my photo management and post processing. I have a fairly simple website for our local community clubhouse and recreation area whose rentals I han

  • Printing Error - "not enough storage"

    Cant seem to print any scanned in and edited photos. Always get an error message saying "not enough storage to complete this operation". It's driving me insane as I've spent ages getting all my photos onto this package! Could anyone help, in "non-tec

  • Where do I find the "Maestro" font in Photoshop? It used to be included with all the other fonts. It is a set of musical symbols. Thanks.

    Where do I find the "Maestro" font in Photoshop? It used to be included with all the other fonts. It is a set of musical symbols. Thanks.

  • Crash logs

    I have a question regarding where to look for and how to interpret the logs whenever a Mac has a kernel panic. I recently had a crash and I am trying to determine what caused it to occur. Roland