| 
 | 
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Всем привет! Подскажите пожалуйста как реализовать создание страниц "на лету"? Описываю подробно что мне нужно. 1. У меня есть сервер который отвечает по адресу http://localhost/WebApp/index.html где WebApp имя приложения, а index.html стартовая страница. 2. Я хочу сделать так, при переходе по адресу http://localhost/WebApp/index2.html я не должен получить ошибку 404 что страницы нет, я хочу чтобы запрос передался в некий класс (например какой-нибудь сервлет) этот сервлет будет знать имя запрашиваемой страницы сгенерирует её и отдаст клиенту. Клиент вместо ошибки получит содержимое страницы. Если есть готовый пример буду сильно благодарен, направление куда загуглить тоже подойдёт :) Спасибо! ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 11:54 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Сделать сервлет и замарить его на index2.html ? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 11:57 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Технически это очень похоже на Rewrite rules в Tomcat или mod_rewrite из ApacheHttp server. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 12:45 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 13:25 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  lleming Сделать сервлет и замарить его на index2.html ? Как вариант да, но нужно чтобы это было динамически, каждый раз перезаливать приложение с новыми настройками не вариант, нужно чтобы все запросы на неизвестные страницы переводились на нужный сервлет с указанием запрошенной страницы. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 13:25 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Mandarin lleming Сделать сервлет и замарить его на index2.html ? Как вариант да, но нужно чтобы это было динамически, каждый раз перезаливать приложение с новыми настройками не вариант, нужно чтобы все запросы на неизвестные страницы переводились на нужный сервлет с указанием запрошенной страницы. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 13:26 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 13:30 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Mandarin , чтоб подитожить все что тут наговорили, есть два способа  динамически  генерировать страницы: 1. Генерировать их на сервере и отсылать браузеру полностью сформированные HTML 2. Отдать в браузер изначально HTML вместе с JS который будет уже генерить другой HTML. Для этого еще нужно чтоб JS получал данные с бека в виде, например, JSON'a. 1ое в Java+Tomcat делается с помощью сервлетов, а если это будет большое приложение, то с помощью доп надстройки в виде MVC фреймворка (Spring MVC). 2ое - хоть вручную генерить, хоть использовать всякие JS MVC фреймворки типа React, Angular, и пр. Но это значит что еще на бэке нужны ендпоинты которые JSON будут отдавать. В твоем простом случае звучит как будто бы сервлет - самое то. Получаешь запрос, и там уже в Java пишешь какую угодно динамическую логику. В web.xml можно замапить ошибки на location, а по этому location уже мапить сервлет: Код: xml 1. 2. 3. 4. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 13:32 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Stanislav Bashkyrtsev  Mandarin , чтоб подитожить все что тут наговорили, есть два способа  динамически  генерировать страницы: 1. Генерировать их на сервере и отсылать браузеру полностью сформированные HTML 2. Отдать в браузер изначально HTML вместе с JS который будет уже генерить другой HTML. Для этого еще нужно чтоб JS получал данные с бека в виде, например, JSON'a. 1ое в Java+Tomcat делается с помощью сервлетов, а если это будет большое приложение, то с помощью доп надстройки в виде MVC фреймворка (Spring MVC). 2ое - хоть вручную генерить, хоть использовать всякие JS MVC фреймворки типа React, Angular, и пр. Но это значит что еще на бэке нужны ендпоинты которые JSON будут отдавать. В твоем простом случае звучит как будто бы сервлет - самое то. Получаешь запрос, и там уже в Java пишешь какую угодно динамическую логику. В web.xml можно замапить ошибки на location, а по этому location уже мапить сервлет: Код: xml 1. 2. 3. 4. ну в 404.html можно еще добавить <meta http-equiv="refresh" content="0; URL='http://myhostname/mybasepage.html" /> ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 15:30 | 
  
  
  
   | 
||
| 
 
Tomcat 8.5 создание страниц " на лету" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Stanislav Bashkyrtsev, Главное что будет все равно Г... Так как невозможно сохранить урл на комп и не работает кнопа Назад. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 20.07.2021, 15:42 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=59&msg=40084881&tid=2120393]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    64ms | 
get topic data:  | 
    10ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    52ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 16ms | 
| total: | 178ms | 

| 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...