Что вызывает повторяющиеся запросы с использованием Spring, Tomcat и гибернации

Я работаю над проектом на Java с использованием Spring framework, hibernate и tomcat.

Фон: У меня есть страница формы, которая принимает данные, проверяет, обрабатывает их и, в конечном итоге, сохраняет данные с помощью спящего режима. При обработке данных я выполняю какую-то специальную команду (модель) перед продолжением использования спящего режима.

Проблема: По какой-то причине мой метод onSubmit вызывается дважды, в первый раз через вещи обрабатываются правильно. Однако во второй раз они не проходят; и неправильный информация сохраняется.

Я также заметил, что на других страницах, которые просто извлекают информацию из данных база и отображение на экране; Там тоже бывают двойные запросы.

Есть ли что-то неправильно настроенное, я не использую Spring должным образом ... любая помощь в этом будет будь отличным!

Дополнительная информация:

Приложение все еще находится в разработке. При тестировании приложения я столкнулся с этой проблемой. Я использую приложение так, как и ожидал (одиночные щелчки, действительные данные и т. д.)

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
6
0
1 986
3

Ответы 3

Это может быть так же просто, как дважды щелкнуть ссылку, повторно отправить форму, пока сервер все еще обрабатывает первый запрос, или нажать кнопку «Обновить» на странице POST-ed.

Делаете ли вы что-нибудь на стороне сервера, чтобы учесть повторяющиеся запросы, подобные этим, от ваших пользователей?

Если вы тестируете в IE, обратите внимание, что в некоторых версиях IE он иногда отправляет два запроса. В каких браузерах вы тестируете приложение?

Проблема с javascript возникает, если обработчик по щелчку связан с кнопкой отправки и вызывает submit () и не возвращает false для отмены пузыря событий.

Это очень распространенная проблема, с которой сталкивается начинающий. И не очень уверен в экосистеме приложения. Чтобы развернуть приложение Spring, мы создаем файл войны. Затем мы помещаем его в папку «webapps» в Tomcat. Затем мы запускаем экземпляр tomcat с помощью терминала (я предполагаю, что это система Linux). Теперь мы настроили env в этом терминале.

Проблема возникает, когда мы настраиваем нашу среду для приложения Spring, где может быть развернуто более одного файла war. Затем мы должны учитывать тот факт, что env должен быть эксклюзивным для конкретного файла войны.

Для этого мы можем создавать эксклюзивные файлы env для каждой войны. (например, war_1.sh, war_2.sh, ....., war_n.sh) и так далее.

Теперь мы можем получить тот конкретный файл env, для которого мы должны развернуть соответствующую войну. Таким образом, мы можем разделить несколько войн (приложений) и их окружение.

Другие вопросы по теме