Добрый день.
В модуле portal создал контроллер для rest-сервиса и хотел бы в нем использовать функционал сервиса среднего слоя.
Правильно ли я понимаю, что для этого необходимо в файле portal-dispatcher-spring.xml указать в
<context:component-scan base-package=/> путь к package, где реализован сервис. Или же еще что-то необходимо добавить.?
Добрый день,
Нет, вам нужно пойти в portal-spring.xml и добавить туда список сервисов для создания клиентских заглушек:
<bean id="sales_proxyCreator" class="com.haulmont.cuba.portal.sys.remoting.PortalRemoteProxyBeanCreator">
<property name="serverSelector" ref="cuba_ServerSelector"/>
<property name="remoteServices">
<map>
<entry key="sales_MyService" value="com.company.sales.service.MyService"/>
</map>
</property>
</bean>
В web-spring.xml есть похожие определения, только класс ***Creator там другой.
Если у вас уже создан модуль portal, и вы создаете новый сервис через действие New → Service, то CUBA Studio сама пропишет этот сервис как нужно в web и portal модулях.
Добрый день.
Прописал указанные параметры в portal-spring.xml.
Пытаюсь вызвать стандартный метод login и получаю ошибку:
HTTP Status 404 – Не найдено
The requested resource [/app-portal/api/login] is not available
Может быть я что-то еще должен прописать ?
Это не похоже на стандартный метод login, скорее на контроллер в вашем проекте. Где вы узнали про него?
В документации указана именно ссылка:
http://localhost:8080/app-portal/api/login?u=admin&p=admin&l=ru
В какой документации, дайте ссылку.
У вас версия 5.6 платформы?
Вы проделали действия из пункта " 4.6.2.1. Включение в проект" Платформа CUBA. Руководство по разработке приложений ?
Ошибок при старте проекта в журнале не наблюдается?
Добрый день.
Решил вопрос, проанализировав свойства проекта.