Подробности ошибки сервлета потенциально интересны. API сервлетов вообще не должны выдавать ошибки, я думаю, что это какая-то ошибка приложения.
Общий принцип, который я пытаюсь применить:
1). Мы создаем пользовательский интерфейс, чтобы пользователю было трудно непреднамеренно отправить один и тот же запрос дважды (например, снять с моего счета 100 фунтов стерлингов, на самом деле не хочу отправлять два таких запроса. Именно в этом может помочь некоторый JavaScript-код nift.
2). Мы создаем приложение для защиты от неосторожных двойных запросов, например, путем включения какого-либо идентификатора в запросы, который позволяет обнаруживать дубликаты.
Мы не предполагаем, что пользовательский интерфейс совершенен, наш уровень бизнес-приложений несет конечную ответственность за предотвращение двойных действий.