No such screen при создании screen через Cuba CLI

Всем привет, только начинаю знакомиться с Cuba.

Делаю туториал по устаревшему видео ( https://www.youtube.com/watch?v=5nHeA57-628 ) где создается sales-приложение с созданием entity, screens через Cuba CLI.

  1. Создаю проект в Cuba CLI

create app

  1. Захожу через cmd в папку проекта, выполняю

gradlew assemble
gradlew startDb
gradlew createDb
gradlew setupTomcat deploy start

  1. Создаю через CLI сущность

create-entity
Name > Customer

  1. Создаю через CLI screen, browser, привязанный к Customer

create-screen

На всякий случай перезапускаю проект

gradlew setupTomcat deploy start

Перехожу на страницу Customer в приложении и получаю ошибку No such screen.

CLI No sush screen 1

Что может быть не так?

Ранее создавал screen через Cuba редактор и вроде бы проблем не было, но сейчас 30 дней тестовые закончились и не могу проверить.

Без проблем можете проверить и без активной лицензии.
Там и создание пустого экрана по стандартным шаблонам будет работать без лицензии.
И уж тем более - можно посмотреть что не так с экраном.
Не будет работать только визуальный конструктор экрана и визуальный конструктор сущностей.

Я имел в виду

  • и не могу проверить точно ли не работает потомучто я что-то не так делаю или потомучто баг в CLI и он “не привязывает” screen к entity.

Где в первую очередь посмотреть “привязку” контроллера к screen?
Или ссылку на доки где про это почитать

Спасибо.

sales5-2.zip (73.3 КБ)

Я сам CLI не использую, поэтому, точно не скажу откуда проблема, но код проекта у вас странный.
Вы точно использовали CLI последней версии?
Даже на беглый взгляд:

  1. Проект вроде сконфигурирован для использования Kotlin, но контроллер экрана сгенерирован на Java.
  2. Причем сгенерирован как-то криво - нет аннотаций @UiController, UiDescriptor. Как минимум отсюда и ваше сообщение об ошибке. Про эти аннотации есть в документации.
    Класс контроллера использует устаревший базовый класс экрана AbstractLookup.
  3. В дескрипторе используется устаревший Datasource вместо Datacontainer.

Но все что вы делали из CLI - вы можете сделать из плагина Cuba-Studio, легко и наглядно, даже если у вас нет лицензии.
Поэтому, если у вас нет принципиального нежелания по использовать IntellJ IDEA Commutity + Cuba-Studio без лицензии - я не вижу необходимости использовать CLI.

И если Cuba только начинаете изучать - лучше уже начинать сразу с Jmix.
Плагин Jmix-Studio для этого уже вполне стабильный, да и сама платформа - тоже.
И даже без лицензии на плагин Jmix-Studio вы получите на порядок больше сервиса от его использования, чем от использования связки CLI + IntellJ IDEA без плагина Cuba/Jmix.

Только вот пока отсутствуют репорты, что может стать большой проблемой…

Добрый день!

Был создан тикет на github по описанной проблеме