Могу ли я использовать Apache Tomcat 7 с API сервлета 2.5?

В tomcat 6 есть утечка, поэтому я обновляюсь до tomcat 7.082, который использует API сервлета 3.0.

Я развернул военный файл, который использует сервлет 2.5, в Apache Tomcat 7.0.82. приложение работает нормально, и я не вижу каких-либо непосредственных проблем.

поэтому мой вопрос в том, нормально ли это делать? В конечном итоге я буду внедрять это изменение в производство...


person ido    schedule 27.10.2017    source источник
comment
Кстати, я использую java 6   -  person ido    schedule 27.10.2017


Ответы (1)


Tomcat 7 отлично запустит приложение Servlet 2.5. Самое главное — убедиться, что в вашем файле web.xml указана версия. Итак, для вашего примера это будет выглядеть примерно так:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
          http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
          version="2.5">

    ...

</web-app>

Это сообщает контейнеру (в данном случае Tomcat), что это веб-приложение соответствует спецификации Servlet 2.5.

person stdunbar    schedule 27.10.2017
comment
это для web.xml с кодом, например. src\main\webapp\WEB-INF\web.xml или web.xml внутри tomcat\conf\web.xml? - person ido; 27.10.2017
comment
В вашем проекте - src\main\webapp\WEB-INF\web.xml - person stdunbar; 27.10.2017
comment
этот уже определен следующим образом:‹веб-приложение xmlns:xsi=w3.org/2001/ Экземпляр XMLSchema xmlns=java.sun.com/xml/ns/javaee xmlns:web=java.sun.com/xml/ns/ javaee/web-app_2_5.xsd xsi:schemaLocation=java.sun.com/xml /ns/javaee java.sun.com/xml/ ns/javaee/web-app_2_5.xsd версия=2.5› - person ido; 27.10.2017