2016-01-21 5 views
0

В OpenCms я хочу получить доступ к одной странице контейнера с несколько URLsодной страница контейнера со ссылкой на несколько адресов

для Ex: рассмотрит А контейнера страницы я хочу получить доступ к странице контейнера с несколько URLs обозначаемого ниже

1>localhost:8080/xyz/abc 

    2>localhost:8080/xyz/abc?id=xxxabc. 

Предложите мне, как этого достичь. я пытаюсь добиться этого с помощью http://tuckey.org/urlrewrite/

предложить мне другие варианты также

+0

Уточните, пожалуйста, свой вопрос? Что показывает второй URL-адрес, если не страница контейнера? Если первый URL-адрес показывает это хорошо, я не понимаю, почему добавление какого-либо параметра url не должно работать или почему вам нужно использовать urlrewrite. –

+0

оба urls будут показывать одну и ту же страницу контейнера, в этом аспекте ресурс, то есть контейнерная страница присутствует в пути localhost: 8080/xyz. Но URL-адреса будут такими, как показано выше. Мне нужно вызвать ресурс внутри с изменением url в браузере, как я могу достичь этого – Gora

ответ

0

выше Таки urlrewrite должно быть в порядке; вам нужно будет настроить его как FORWARD.

Если вы хотите сделать это в шаблоне OpenCms JSP напрямую, вы можете сделать вперед непосредственно в JSP, как это:

<% if(request.getParameter("id")==null) request.getRequestDispatcher("/xyz/abc?id=xxxabc").forward(request, response);%> 

Но такой код в JSP, как правило, не лучшей практики. Использование tuckey urlrewrite, вероятно, является более чистым подходом.

+0

здесь мой url в браузере будет похож на localhost: 8080/xyz/abc, но ресурс на localhost: 8080/xyz, так что есть проблема. мы не можем использовать forward в jsp – Gora

+0

Я не понимаю, почему вы не можете использовать переадресацию там? Не поддерживает ли localhost: 8080/xyz/abc через шаблон jsp? Является ли это сервлетом с Java-кодом? Какой ресурс? –

+0

Ресурс - страница контейнера opencms, это присутствует на localhost: 8080/xyz. – Gora

1

Я использую фильтр http://tuckey.org/urlrewrite/ для удаления opencms/opencms в url.

Регулярные выражения могут использоваться для назначения нескольких URL-адресов одной странице контейнера. Фильтр Tuckey предоставляет urlrewrite.xml, указав здесь тег правила.

<rule> 
     <from>/products/([0-9]+)</from> 
     <to>/products/index.jsp?product_id=$1</to> 
</rule>