Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Tomcat 5 и 8 - разное поведение web.xml, На tomcat5 работает, на tomcat8 нет 
V
    Опции темы
aranea
Дата 22.1.2015, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 5.5.2008

Репутация: нет
Всего: нет



Здравствуйте!

в 2008 году по стопам темы JSP — с чего начать? сделал свое приложение, работало на Tomcat 5.5 на тот момент актуальной
недавно решил вспомнить старое, скачал новый Tomcat 8.0.17, развернул в нем проект - не работает, выдает 404 на главной странице (и как оказалось по любому адресу сайта, заканчивающемуся на / "слэш")
если слэш в конце удалить - то нужная страничка открывается

удивился, установил Tomcat 5.5, развернул в нем - работает по всем адресам как и в 2008 году
начал копать, оказывается для Tomcat 8 дело только в этой маппинге
Код

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.html</url-pattern>
  </servlet-mapping>

если его удалить - все работает, но *.html страницы тогда тоже пытаются через сервлет пролезать - не находит их

привожу web.xml
Код

<?xml version="1.0" encoding="Windows-1251"?>

<web-app>
  <display-name>...</display-name>
  <description>....</description>
  <context-param>
    <param-name>configFile</param-name>
    <param-value>/conf/wwwww.xml</param-value>
  </context-param>

<!-- *** listeners *** -->

  <listener>
    <listener-class>ru.wwwww.servlets.wwwwwContextListener</listener-class>
  </listener>

<!-- *** servlets *** -->
    <servlet>
        <servlet-name>wwwwwServlet</servlet-name>
        <servlet-class>ru.wwwww.servlets.wwwwServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

<servlet>
  <servlet-name>Connector</servlet-name> 
  <servlet-class>net.fckeditor.connector.ConnectorServlet</servlet-class> 
  <load-on-startup>1</load-on-startup> 
  </servlet>

<!-- *** servlet mappings *** -->
 <servlet-mapping>
  <servlet-name>Connector</servlet-name> 
  <url-pattern>/fckeditor/editor/filemanager/connectors/*</url-pattern> 
  </servlet-mapping>

    <servlet-mapping>
        <servlet-name>wwwwwServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>/doc/</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.html</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.css</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.gif</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.jpg</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.png</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.js</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.txt</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.ico</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
      <servlet-name>default</servlet-name>
      <url-pattern>*.xml</url-pattern>
  </servlet-mapping>

<!-- *** welcome files *** -->
  <welcome-file-list>
      <welcome-file>index.html</welcome-file>
  </welcome-file-list>

<!-- *** error page *** -->
  <error-page>
      <error-code>500</error-code>
      <location>/error_500.html</location>
  </error-page>
  <error-page>
      <error-code>404</error-code>
      <location>/error_404.html</location>
  </error-page>

<!-- JSPC servlet mappings end -->
</web-app>


причем если index.html положить в корень проекта, то в 8 версии открывается именно он по адресу сайта
маппинг / на wwwwwServlet не срабатывает почему-то и запрос не передается приложению

расскажите в чем разница пожалуйста!

Это сообщение отредактировал(а) aranea - 22.1.2015, 11:24
PM MAIL WWW   Вверх
Pawl
Дата 22.1.2015, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 649
Регистрация: 22.4.2008
Где: Витебск

Репутация: 3
Всего: 28



Цитата

   причем если index.html положить в корень проекта, то в 8 версии открывается именно он по адресу сайта
   

Попробуйте вместо index.html использовать index.jsp, а в нём делать редирект на ваш сервлет типа 
Код

<% response.sendRedirect("..."); %>

И ещё, у вас <load-on-startup>1</load-on-startup> стоит для всех сервлетов. Может, коннектор надо загружать вторым? Я не уверен, но возможно это тоже может влиять.

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
aranea
Дата 23.1.2015, 08:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 5.5.2008

Репутация: нет
Всего: нет



спасибо за ответ!

покопал в сторону welcome-file и index.html
получилось, что если на вэлком поставить index.htm и его же положить в корень, то запросы со / обрабатываются корректно, так же открывается корень сайта через сервлет (index.htm не показывается никогда)
*.html файлы отдаются напрямую, минуя сервлет
чего и требовалось достичь

Код

<?xml version="1.0" encoding="Windows-1251"?>

<web-app>

  <display-name>....</display-name>
  <description>....</description>

  <context-param>
    <param-name>configFile</param-name>
    <param-value>/conf/wwww.xml</param-value>
  </context-param>

<!-- *** listeners *** -->
  <listener>
    <listener-class>ru.wwww.servlets.wwwwContextListener</listener-class>
  </listener>

<!-- *** servlets *** -->
    <servlet>
        <servlet-name>wwwwServlet</servlet-name>
        <servlet-class>ru.wwww.servlets.wwwwServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>Connector</servlet-name> 
        <servlet-class>net.fckeditor.connector.ConnectorServlet</servlet-class> 
        <load-on-startup>2</load-on-startup>
    </servlet>

<!-- *** servlet mappings *** -->
    <servlet-mapping>
        <servlet-name>Connector</servlet-name>
        <url-pattern>/fckeditor/editor/filemanager/connectors/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>wwwwServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.html</url-pattern>
        <url-pattern>*.css</url-pattern>
        <url-pattern>*.gif</url-pattern>
        <url-pattern>*.png</url-pattern>
        <url-pattern>*.jpg</url-pattern>
        <url-pattern>*.xml</url-pattern>
        <url-pattern>*.txt</url-pattern>
        <url-pattern>*.ico</url-pattern>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>

<!-- *** welcome files *** -->
  <welcome-file-list>
      <welcome-file>index.htm</welcome-file>
  </welcome-file-list>

<!-- *** error page *** -->
  <error-page>
      <error-code>500</error-code>
      <location>/error_500.html</location>
  </error-page>

  <error-page>
      <error-code>404</error-code>
      <location>/error_404.html</location>
  </error-page>
</web-app>


как это объяснить и надо ли - не знаю =)

спасибо!
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0437 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.