Liferay 7 Eclipse IDE переопределяет поведение категорий по умолчанию - PullRequest
0 голосов
/ 09 июля 2019

Мне нужно создать портлет, чтобы изменить поведение / интерфейс категории по умолчанию в Liferay 7.
Моя цель - продублировать assetcategory таблицу, развернуть и изменить еестолбцы и используйте эту новую таблицу в качестве ссылки для категорий в бэкэнде Liferay.

Поэтому существует три ключевых момента, которые должен обновлять мой портлет:

  1. Пользовательский интерфейс организации категорийсоздавать / обновлять таблицы категорий на БД.Я могу создать новый проект модуля Liferay ( panel-app шаблон), который может представить интерфейс бэкэнда пользовательского интерфейса из бокового меню и взаимодействовать с БД.
  2. Переопределить по умолчанию выбор категории панель на панели свойств веб-материалов (метаданные> выбор категории).Я могу создать новый фрагмент проекта модуля Liferay, чтобы переопределить com.liferay.asset.categories.selector.web , однако я заметил, что могу выбрать только один путь к файлу (например, META-INF / resources / view.jsp )
  3. Переопределить поведение фильтра издателя ресурсов по умолчанию, чтобы разрешить выбор пользовательских категорий.Я еще не исследовал этот вопрос.

В данный момент я застрял в пункте 2, потому что после создания нового фрагмента проекта модуля Liferay установите целевой Host OSGI Bundle равным com.liferay.asset.categories.selector.web (который я считаю правильным, пожалуйста, исправьте меня, если это не так) и выбрав переопределенные файлы как META-INF / resources / view.jsp ,Я не могу перерисовать интерфейс выбора категории.

Вот мои попытки:

  1. Обновление кода view.jsp (например, добавлениенекоторые текстовые строки) Я правильно вижу их в портлете.
  2. Удаление / комментирование всего кода в view.jsp Отображается ошибка: Селектор категории активов временно недоступен
  3. Выбор всех трех файлов, доступных для переопределения в мастере главного портлета ( META-INF / resources / view.jsp , init.jsp и init-ext.jsp ) и обновление view.jsp (подобно первому example) в портлете ничего не происходит

Некоторые снимки экрана ниже:

Случай 1 enter image description here enter image description here

Корпус 2 enter image description here enter image description here

Корпус 3 enter image description here enter image description here

1 Ответ

0 голосов
/ 12 июля 2019

Мне нужно создать портлет, чтобы изменить поведение / интерфейс категории по умолчанию в Liferay 7. Моя цель - дублировать таблицу assetcategory, развернуть и изменить ее столбцы и использовать эту новую таблицу в качестве справочника для категорий.в бэкэнде Liferay.

Только это само по себе звучит как огромная задача, больше, чем то, что можно было бы уместить в вопросе переполнения стека.

AssetCategories используются в каждом отдельном типе контента, например, WebContent, статьи блога, сообщения на доске объявлений, вики-страницы, статьи базы знаний и т. Д. Замена такого важного компонента вашей собственной реализацией - это то, что безопасно испортит ваш следующийобновить опыт, потому что там вам придется сделать это снова, приведя ваш код к тем изменениям, которые будут внесены в следующей версии.И это «обновление» включает в себя исправления безопасности.

В целом, ваша посылка звучит для меня как xy проблема , и я скорее рекомендую вам отступить от намеченного решения и искать другиеварианты для удовлетворения потребностей вашего бизнеса.Там, безусловно, есть некоторые.

Моя рекомендация: вместо того, чтобы добавить что-то к платформе, чем вырвать очень центральный и общий компонент, реализуя его с учетом специфики бизнеса.Если вам нужна фильтрация, отличная от предоставляемой Asset Publisher: Создайте свой собственный Asset Publisher и примените там специфичные для бизнеса правила.Или подумайте еще раз об организации вашего контента иначе, чем вы это делаете в настоящее время.

Если вы уже не являетесь разработчиком Liferay Core и не попросите подсказку о том, как изменить реализацию для следующей версии.Но ваша история вопросов здесь не выглядит так.

...