Создание сервисного конструктора Liferay без настройки какой-либо базы данных

Можно ли создать построитель сервисов liferay без настройки каких-либо таблиц базы данных в файле service.xml.

На самом деле целью здесь является создание сервисного слоя с помощью Liferay Service Builder. И непосредственно на этом сервисном слое нет взаимодействия с базой данных.


person DAIRAV    schedule 05.05.2016    source источник


Ответы (4)


Да и совсем просто. Хотя вам по-прежнему нужна сущность (которая предоставляет имя для вашей службы), вы можете оставить это определение сущности пустым.

Это создаст службу (локальную или удаленную, как настроено в объекте), но не модель, не постоянство и не таблицу базы данных.

Одна из ситуаций, когда это действительно удобно, — это когда вы хотите добавить еще один метод к существующей службе (чего вы не можете) — вы просто создаете новую службу с вашими пользовательскими методами и делегируете исходной службе.

person Olaf Kock    schedule 05.05.2016
comment
одна проблема заключается в том, что в таких случаях мы не можем иметь свой собственный класс в качестве возвращаемого типа вновь определенных методов в классах внедрения службы. Как и в предыдущем сценарии, я использовал JSONArray, JSONObject или любой другой класс, который присутствует в пакете liferay. Так что, когда вы выполняете «Build-Services», он также получает этот класс в сервисном проекте. Но если вы возьмете возвращаемый тип как класс «Студент» (определенный в портлет-проекте), но он не виден сервисному проекту. Есть ли другой способ сделать это? - person Gurpreet Singh; 16.07.2017

Я согласен с ответом @Olaf Kock, в котором говорится, что можно иметь пустую модель с построителем сервисов. Кроме того, у вас есть пустая сущность, которой вы можете воспользоваться, иметь тот же транзакционный контекст, что и ваш портал, и преимущества управления кластером, а также преимущества полной интеграции с порталом liferay.

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

Я надеюсь, что это размышление может добавить ценности.

person Valerio Vaudi    schedule 05.05.2016

Настоятельно рекомендуется, если вы создаете Service.xml, там должен быть хотя бы один объект. В противном случае нет необходимости добавлять эту конфигурацию.

person Ashish Dadhich    schedule 05.05.2016
comment
Этот ответ почти правильный. Просто открытие Нет неправильно. Вам понадобится сущность, но она не нуждается в постоянстве. - person Olaf Kock; 05.05.2016

Возможность создания построителя сервисов без реальных сущностей.

Как указано в ссылке на него можно создать построитель сервисов без сущностей.

Также более подробно обсуждается в этом форум

Надеюсь, это поможет кому-то. Спасибо

person DAIRAV    schedule 04.04.2018