I need to use the GridBagLayout but I get below error. Can you please help?
java.lang.IllegalArgumentException: cannot add to layout: constraints must be a GridBagConstraint at java.awt.GridBagLayout.addLayoutComponent(Unknown Source) at java.awt.Container.addImpl(Unknown Source) at java.awt.Container.add(Unknown Source) at havuzAracıFormu.(havuzAracıFormu.java:221) at havuzAracıFormu$1.run(havuzAracıFormu.java:47) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$500(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import org.jdatepicker.impl.JDatePanelImpl;
import org.jdatepicker.impl.JDatePickerImpl;
import org.jdatepicker.impl.UtilDateModel;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JFormattedTextField.AbstractFormatter;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Properties;
import java.awt.event.ActionEvent;
public class havuzAracıFormu extends JFrame {
    private JPanel contentPane;
    private JTextField textFieldAdSoyad;
    private JTextField textFieldGorev;
    private JTextField textFieldDepartman;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    havuzAracıFormu frame = new havuzAracıFormu();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    /**
     * Create the frame.
     * @throws ClassNotFoundException 
     * @throws SQLException 
     */
    public havuzAracıFormu() throws ClassNotFoundException, SQLException {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 728, 992);
        contentPane = new JPanel();
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        contentPane.setLayout(new GridBagLayout());
        GridBagConstraints gbc = new GridBagConstraints();
        gbc.gridx = 0;
        gbc.gridy = 0;
        gbc.fill = GridBagConstraints.HORIZONTAL;
        gbc.anchor = GridBagConstraints.CENTER;
        setContentPane(contentPane);
        JLabel lblKullancBilgileri = new JLabel("Kullan\u0131c\u0131 Bilgileri");
        Font font = lblKullancBilgileri.getFont();
        lblKullancBilgileri.setFont(new Font(font.getFontName(), Font.BOLD, 14));
        contentPane.add(lblKullancBilgileri);       
        JLabel lblAdSoyad = new JLabel("Ad\u0131 Soyad\u0131");
        JLabel lblGorevi = new JLabel("Görevi");
        JLabel lblDepartmani = new JLabel("Departman\u0131");
        contentPane.add(lblAdSoyad,gbc);
        textFieldAdSoyad = new JTextField();
        contentPane.add(textFieldAdSoyad, gbc);
        textFieldAdSoyad.setColumns(10);
        contentPane.add(lblGorevi);
        textFieldGorev = new JTextField();
        contentPane.add(textFieldGorev, gbc);
        textFieldGorev.setColumns(5);
        contentPane.add(lblDepartmani, gbc);
        textFieldDepartman = new JTextField();
        contentPane.add(textFieldDepartman);
        textFieldDepartman.setColumns(10);
        JLabel lblAracBilgileri = new JLabel("Araç Bilgileri");
        Font font2 = lblAracBilgileri.getFont();
        lblAracBilgileri.setFont(new Font(font2.getFontName(), Font.BOLD, 14));
        contentPane.add(lblAracBilgileri, gbc);
        JLabel lblMarka = new JLabel("Marka");
        contentPane.add(lblMarka, gbc);
        JTextField textFieldMarka = new JTextField(5);
        contentPane.add(textFieldMarka,gbc);
        textFieldMarka.setColumns(5);
        JLabel lblModel = new JLabel("Model");
        contentPane.add(lblModel,gbc);
        JTextField textFieldModel = new JTextField();
        contentPane.add(textFieldModel,gbc);
        textFieldModel.setColumns(5);
        JLabel lblPlakaNo = new JLabel("PlakaNo");
        contentPane.add(lblPlakaNo,gbc);
        JTextField textFieldPlakaNo = new JTextField();
        contentPane.add(textFieldPlakaNo,gbc);
        textFieldPlakaNo.setColumns(5);
        JLabel lblCikisTarihiveSaati = new JLabel("Çıkış Tarihi ve Saati");
        contentPane.add(lblCikisTarihiveSaati,gbc);
        JTextField textFieldCikis = new JTextField();
//      contentPane.add(textFieldCikis);
        UtilDateModel model = new UtilDateModel();
        Properties p = new Properties();
        p.put("text.today", "Today");
        p.put("text.month", "Month");
        p.put("text.year", "Year");
        JDatePanelImpl datePanel = new JDatePanelImpl(model, p);
        JDatePickerImpl datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter());
        contentPane.add(datePicker,gbc);
        textFieldCikis.setColumns(5);
        JLabel lblCikisKm = new JLabel("Çıkış Km");
        contentPane.add(lblCikisKm,gbc);
        JTextField textFieldCikisKm = new JTextField();
        contentPane.add(textFieldCikisKm,gbc);
        textFieldCikisKm.setColumns(5);
        JLabel lblDonusTarihiveSaati = new JLabel("Dönüş Tarihi ve Saati");
        contentPane.add(lblDonusTarihiveSaati,gbc);
        JTextField textFieldDonus = new JTextField();
        UtilDateModel model2 = new UtilDateModel();
        Properties p2 = new Properties();
        p2.put("text.today", "Today");
        p2.put("text.month", "Month");
        p2.put("text.year", "Year");
        JDatePanelImpl datePanel2 = new JDatePanelImpl(model2, p);
        JDatePickerImpl datePicker2 = new JDatePickerImpl(datePanel2, new DateLabelFormatter());
        contentPane.add(datePicker2,gbc);
        textFieldDonus.setColumns(5);
        JLabel lblDonusKm = new JLabel("Dönüş Km");
        contentPane.add(lblDonusKm,gbc);
        JTextField textFieldDonusKm = new JTextField();
        contentPane.add(textFieldDonusKm,gbc);
        textFieldDonusKm.setColumns(5);
        JLabel lblNeden = new JLabel("Aracın Kullanılacağı Yer-Kullanım Neden Geçici Araç");
        contentPane.add(lblNeden,gbc);
        JTextField textFieldNeden = new JTextField();
        contentPane.add(textFieldNeden,gbc);
        textFieldNeden.setColumns(5);
        JLabel lblKullanimSuresi = new JLabel("Kullanım Süresi");
        contentPane.add(lblKullanimSuresi,gbc);
        JTextField textFieldSure = new JTextField();
        contentPane.add(textFieldSure,gbc);
        textFieldSure.setColumns(5);
        JLabel lblHasarveEksiklikler = new JLabel("Hasar ve Eksiklikler");
        contentPane.add(lblHasarveEksiklikler,gbc);
        JLabel lblAractaGorulenHasarlar = new JLabel("Araçta Görülen Hasarlar veya Eksiklikler (Zincir, İstetme, İlk Yardım Çantası vs.");
        contentPane.add(lblAractaGorulenHasarlar,gbc);
        JTextField textFieldHasar = new JTextField();
        contentPane.add(textFieldHasar,gbc);
        textFieldHasar.setColumns(5);
        JButton btnNewButton = new JButton("Gönder");
        btnNewButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                String url = "jdbc:sqlserver://WIN-J53H5BK2ANC;databaseName=test;integratedSecurity=true;";
                try {
                    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
                Connection conn = DriverManager.getConnection(url);
                Statement st = conn.createStatement();
                String queryString = "insert into havuzAracıFormu values ('" + textFieldAdSoyad.getText() + "'," + 
                                                                          "'" + textFieldGorev.getText() + "'," +
                                                                          "'" + textFieldDepartman.getText() + "'," +
                                                                          "'" + textFieldMarka.getText() + "'," +
                                                                          "'" + textFieldModel.getText() + "'," +
                                                                          "'" + textFieldPlakaNo.getText() + "'," +
                                                                          "'" + datePicker.getJFormattedTextField().getText() + "'," +
                                                                          "'" + textFieldCikisKm.getText() + "'," +
                                                                          "'" + datePicker2.getJFormattedTextField().getText()+ "'," +
                                                                          "'" + textFieldDonusKm.getText() + "'," +
                                                                          "'" + textFieldNeden.getText() + "'," +
                                                                          "'" + textFieldSure.getText() + "'," +
                                                                          "'" + textFieldHasar.getText() + "')";
                st.executeUpdate(queryString);
                } catch (ClassNotFoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        });
        contentPane.add(btnNewButton, BorderLayout.SOUTH);
    }
}
class DateLabelFormatter extends AbstractFormatter{
    private String datePattern = "yyyy-MM-dd";
    private SimpleDateFormat dateFormatter = new SimpleDateFormat(datePattern);
    @Override
    public Object stringToValue(String text) throws ParseException {
        return dateFormatter.parseObject(text);
    }
    @Override
    public String valueToString(Object value) throws ParseException {
        if(value != null){
            Calendar cal = (Calendar) value;
            return dateFormatter.format(cal.getTime());
        }
        return "";
    }
}
 
     
     
    