Это также может произойти, если вы скомпилировали jar-файл, который включает его зависимости времени выполнения и содержит ссылку на старую версию tomcat servlet-api.jar.
Затем, когда ваш jar загружен в другую версию Tomcat, api сервлета неверен и выдает эту ошибку.
Так что проверьте, как ваш jar компилируется, и убедитесь, что он не включает в себя servlet-api.jar как-то в качестве зависимости!