Локализация URL в Лене - PullRequest
       26

Локализация URL в Лене

0 голосов
/ 17 сентября 2010

Я пытаюсь локализовать URL публикации Лени. Я сохраняю перевод URL в метаданных документа и переписываю URL с помощью преобразователя URLRewriter.

например. я строю / Леня / по умолчанию / авторинг / о / дома от /lenya/default/authoring/index.html

Но я не могу найти простой способ заставить Леню перевести URI входящего запроса обратно на исходный путь: /lenya/default/authoring/index.html

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

Возможно ли это вообще? Я пытался добавить фильтр сервлетов и использовать диспетчер, но фильтр не может получить доступ к метаданным документов, поскольку объект Среды еще не находится в стеке обработки на данном этапе ...

(На данный момент я вижу только один способ - обновить классы CocoonServlet и Cocoon)

Спасибо!

1 Ответ

0 голосов
/ 21 сентября 2010

Мне удалось сделать это с помощью RequestListener.

В публичном методе onRequestStart (Environment Environment) void я создаю RequestWrapper с новым реальным URL и помещаю его в objectModel.Также я меняю контекст среды с реальным URL: env.setContext ("", realUrl, env.getContext ())

Это прекрасно работает!

...