sono riuscito a risolvere

System.exit(0);

molto banalmente

ora devo trovare un modo che mi riesca a far chiudere un JInternalFrame, ma spulciando bene la documentazione qualcosa troverò sicuramente

per quanto riguarda la classe che stavo implementando, ti posto il codice intero così ti fai un'idea:
codice:
/*
 * FlowConfigView.java
 *
 * Created on 8 aprile 2008, 17.48
 */

package app;

/**
 *
 * @author  ethereal
 */
public class FlowConfigView extends javax.swing.JFrame {
    
    /** Creates new form FlowConfigView */
    public FlowConfigView() {
        initComponents();
    }
    
    /** 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() {

        menuPrincipale = new javax.swing.JMenuBar();
        fileMenu = new javax.swing.JMenu();
        newFlowMenuItem = new javax.swing.JMenuItem();
        openFlowMenuItem = new javax.swing.JMenuItem();
        exitMenuItem = new javax.swing.JMenuItem();
        helpMenu = new javax.swing.JMenu();
        aboutMenuItem = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        fileMenu.setText("File");

        newFlowMenuItem.setText("New Flow");
        newFlowMenuItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                newFlowMenuItemActionPerformed(evt);
            }
        });
        fileMenu.add(newFlowMenuItem);

        openFlowMenuItem.setText("Open Flow");
        openFlowMenuItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                openFlowMenuItemActionPerformed(evt);
            }
        });
        fileMenu.add(openFlowMenuItem);

        exitMenuItem.setText("Exit");
        exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                exitMenuItemActionPerformed(evt);
            }
        });
        fileMenu.add(exitMenuItem);

        menuPrincipale.add(fileMenu);

        helpMenu.setText("Help");

        aboutMenuItem.setText("About...");
        aboutMenuItem.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                aboutMenuItemActionPerformed(evt);
            }
        });
        helpMenu.add(aboutMenuItem);

        menuPrincipale.add(helpMenu);

        setJMenuBar(menuPrincipale);

        org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(0, 278, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                        

    private void newFlowMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                                
        // TODO add your handling code here:
    }                                               

    private void openFlowMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                                 
        // TODO add your handling code here:
    }                                                

    private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                             
        System.exit(0);
    }                                            

    private void aboutMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                              
        // TODO add your handling code here:
    }                                             
    
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new FlowConfigView().setVisible(true);
            }
        });
    }
    
    // Variables declaration - do not modify                     
    private javax.swing.JMenuItem aboutMenuItem;
    private javax.swing.JMenuItem exitMenuItem;
    private javax.swing.JMenu fileMenu;
    private javax.swing.JMenu helpMenu;
    private javax.swing.JMenuBar menuPrincipale;
    private javax.swing.JMenuItem newFlowMenuItem;
    private javax.swing.JMenuItem openFlowMenuItem;
    // End of variables declaration                   


    
}

trovi delle ridondanze? qualcosa che non avrei dovuto mettere?