Normal java app

I know this is way off topic but I don't know where else to ask. It feels like I've been though every google search possible. I have also been in a whole list of irc channels… anyways I don't want my frame to close if I click the x at the top of the screen I want it to ask do you want to save yes no or cancel (cancel should make it stop quiting) I don't have a problem with writing the prompt but it still quits after some one would press cancel thats what I'm struggling with.

here's my app:

import java.awt.Dimension;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;

/**
 * @author Willem Dreyer
 */
public class Capp implements ActionListener {

   static JFrame frame;

   private static void createAndShowGUI() {

      JPanel mainPanel = new javax.swing.JPanel();
      JMenuBar mainMenu = new javax.swing.JMenuBar();
      JMenu fileMenu = new javax.swing.JMenu();
      JMenuItem exitMenuItem = new javax.swing.JMenuItem();

      JFrame.setDefaultLookAndFeelDecorated(true);

      frame = new JFrame("Capp");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

      JLabel jlabel1 = new JLabel(":P");
      fileMenu.setMnemonic('F');
      fileMenu.setText("File");
      exitMenuItem.setMnemonic('X');
      exitMenuItem.setText("Save");
      exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
         public void actionPerformed(java.awt.event.ActionEvent evt) {
            exitjMenuItemActionPerformed(evt);
         }
      });
      fileMenu.add(exitMenuItem);

      mainPanel.setBorder(javax.swing.BorderFactory.createEmptyBorder(12, 12, 12, 12));
      mainPanel.setMinimumSize(new java.awt.Dimension(297, 200));
      frame.getContentPane().add(mainPanel);
      mainPanel.add(mainMenu);
      mainMenu.add(fileMenu);
      mainPanel.add(jlabel1);

      frame.addWindowListener(new java.awt.event.WindowAdapter() {
         public void windowClosing(java.awt.event.WindowEvent evt) {
            exitForm(evt);
         }
      });

      frame.setSize(new java.awt.Dimension(400, 200));
      frame.pack();
      frame.setVisible(true);
      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
      Dimension frameSize = frame.getSize();
      frame.setLocation(new Point((screenSize.width - frameSize.width) / 2,
            (screenSize.height - frameSize.width) / 2));
   }

   protected static void exitForm(WindowEvent evt) {
      System.out.println("shuting down");
      //Here I don't want it to exit!?
      //System.exit(0);
   }

   protected static void exitjMenuItemActionPerformed(ActionEvent evt) {
      System.out.println("shuting down");
      //new Exit(frame).setVisible(true);
   }

   public static void main(String[] args) {
      javax.swing.SwingUtilities.invokeLater(new Runnable() {
         public void run() {
            createAndShowGUI();
         }
      });
   }

   public void actionPerformed(ActionEvent arg0) {
      
   }
}

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); is maybe the problem?

Yay got it thx for the tip shingoki