private void registerButtonActionPerformed() {
        ArrayList<ScheduleDTO> schedule = saleTrainsTableModel.getTrains();

        request.setService(Constants.ClientService.buyTicket);

        int row = saleTrainsTable.getSelectedRow();

        if (row == -1) {
            JOptionPane.showMessageDialog(null, "Не выбран поезд");
            return;
        }

        order.setTrainNumber(schedule.get(row).getNumber());
        order.setFromStation(schedule.get(row).getFromStation());

        if (order.getFirstName() == null || order.getFirstName() == "") {
            JOptionPane.showMessageDialog(null, "Некорректно введено имя. Повторите ввод.");
            return;
        } else if (order.getSecondName() == null || order.getSecondName() == "") {
            JOptionPane.showMessageDialog(null, "Некорректно введена фамилия. Повторите ввод.");
            return;
        }

        request.setObject(order);

        ResponseDTO responce;
        try {
            responce = ClientConnectionManager.connect(request);
        } catch (ConnectToServerException ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
            return ;
        }

        if (responce.getStatus() == Constants.StatusOfExecutedService.success) {
            JOptionPane.showMessageDialog(null, "Пассажир успешно зарегистрирован");
        } else if (responce.getStatus() == Constants.StatusOfExecutedService.error) {
            JOptionPane.showMessageDialog(null, ((Exception)responce.getObject()).getMessage());
        }

        clearSaleWidgetsContent();
    }