2013-02-19 3 views
0

Итак, у меня есть файл jsp, и внутри этого файла я хочу динамически генерировать URL-адрес в новый файл jsp.Динамически создавать url в файле jsp

Как это сделать? Если я просто напишу <a href="newfile.jsp"> " Click here" </a>, а затем запустите мою программу, когда я нажму на ссылку, я просто получу ошибку 404 вместо пустой новой страницы. Что еще нужно, чтобы установить это?

+0

Вам нужно предоставить больше информации, чтобы получить ответ. Где вторая страница находится в приложении? Какой «url» вы используете для перехода на первую страницу? – udalmik

+0

Ну, это мой вопрос. Вторая страница не находится нигде, потому что я ее не создал. Я хочу знать, как создать его «на лету», когда я нажимаю на ссылку (потому что ссылка в моей программе будет меняться в зависимости от разных факторов). Первая страница - это домашняя страница, поэтому я запускаю программу прямо оттуда. Ссылка не требуется. – user1782677

+0

@ user1782677 Вы не должны пытаться создать страницу на лету. Если ваша страница будет изменяться в зависимости от разных факторов, вы можете передать разные параметры в URL-адресе на страницу, которая будет контролировать способ загрузки страницы. – Danny

ответ

1

Итак, как я вижу, вам нужно создать веб-ресурс на лету. Я не думаю, что создание JSP страниц - это правильный способ приблизиться к этому. У вас может быть один Servlet для обработки этих запросов, а также он может содержать веб-ресурсы реестра. Простой сценарий:

  1. Пользователь нажимает на ссылку /createProductA =>Servlet сохраняет это «productA» с некоторой соответствующей информации (некоторые детали, информация, соответствующая шаблон для визуализации и т.д.)
  2. Тогда вы попали /vewProductA =>Servlet обрабатывает это тоже, но знайте, что нужно предоставить страницу сведений. Он захватывает информацию из своего реестра и отображает необходимый шаблон. Для клиента это будет то же самое, что и страница.

Этот сценарий может помочь, если вам нужно изменить шаблоны рендеринга «на лету», например. в базе данных. Если ваш макет страницы сведений статичен, вы можете иметь одну страницу, например. /viewProduct.jsp и передать id. Это общий подход для Java веб-приложений.

0

Либо делать это с помощью сервлета, как объяснял мудалов, либо вы можете использовать файл .htaccess и определить любой URL-адрес, например. something.html или something.jsp быть перенаправлены на нужную JSP/Servlet

RewriteRule ^/(.*)\.html /servlets/controllerServlet/id=$1 

Так что, если ваш URL является newfile.html, то ваш ControllerServlet получит запрос с параметром ID = «NewFile»

Смежные вопросы