Liferay 6 / jBoss есть ли простой способ получить чистые ссылки? - PullRequest
0 голосов
/ 03 декабря 2010

Я работаю с Coldfusion 9, работаю под jBoss / Liferay 6.

Все хорошо, я разработал довольно много портлетов, для которых я обошел работу (когда я столкнулся с некоторыми проблемами, которые яобычно справляется прямым способом).В целом портлеты Coldfusion 9 очень хорошо работают внутри Liferay.

Одна вещь, которая мне действительно не нравится, это то, что URL-адреса настолько нечитаемы, и я действительно надеялся на чистые URL-адреса для моего приложения, поэтому, когда пользователь выполняет поиск и возвращается результат, я могу заставить его щелкнуть ссылкукак http://liferaysite.com/web/viewitem/ABC123.

В настоящее время я получаю рваный URL-адрес, который содержит состояние портлета, свойства, идентификатор портлета, связанный с передаваемой мной переменной (обычно это сочетание идентификатора портлета + переменная) и другой мусор, которыйненужный.

Есть ли «простой» способ получить чистые URL?Моя проблема в том, что я не являюсь человеком JAVA, поэтому я не слишком доверяю в изучении кода jBoss / Liferay, чтобы что-то сделать.Однако я чувствую, что Liferay достаточно «свободен от рук», так что я могу создавать свои портлеты и развертывать их, не изменяя код JAVA и не пачкаясь.

Есть идеи?Я не могу найти много статей по этому поводу, тем более что Liferay 6 настолько нов, и о нем так мало людей пишут.Может быть, это будет какое-то переписывание URL в Jboss?

Спасибо, благодарю за любые предложения :)

Ответы [ 2 ]

1 голос
/ 28 января 2011

Вас могут заинтересовать FriendlyUrlMappers. См. эту запись в блоге об основах.

Относительно «легкого» вы должны судить об этом сами. Природа порталов, например Комбинация совершенно разных и независимых приложений (портлетов) на одной странице дает вам возможность потерять контроль над URL-адресами (по умолчанию), потому что портал должен устранять неоднозначность. Чтобы вернуть контроль, вам нужно проделать определенную работу, FriendlyUrlMappers навязывает некоторую работу, но результат того стоит, ИМХО.

1 голос
/ 26 января 2011

Краткий ответ - использовать переписывание URL-адресов для достижения этой цели и преобразовывать URL-адреса Liferay в любую нужную форму.Я вижу две возможности сделать это:

  1. Поставить веб-сервер Apache перед вашим сервером Liferay и использовать mod_rewrite
  2. Использовать фильтр перезаписи URL это уже включено в Liferay, так как это подражает тому, что делает mod_rewrite без необходимости дополнительного сервера Apache
...