Как добавить краткое описание в компонент ATG?

Как добавить краткое описание свойства компонента в ATG. Пример: если мы увидим свойство loggingDebug в компонентной сети Nucleus. Краткое описание будет отображаться как True if debug log events should be generated. Как создать такое описание для моего свойства в компоненте>


person anonymous    schedule 05.06.2015    source источник


Ответы (2)


Простой ответ:

Вы не можете добавить описание для отдельного свойства.

Вы можете добавить описание компонента, указав $description в файле .properties.

Более сложный ответ:

Для просмотра на dyn/admin экранах каждый компонент Nucleus связан с Сервлетом администрирования. Это административный сервлет компонента, который отображает экран администратора (а не страницу JSP или JHTML).

Для данного компонента интерфейс администратора определяет сервлет администратора, который следует использовать для рендеринга экрана, запрашивая компонент.

ATG упаковывает ряд сервлетов администрирования вместе с платформой. По умолчанию используется ServiceAdminServlet и он связан с GenericService. Таким образом, все, что расширяется от GenericService — большинство компонентов, которые вы пишете — получает экран администратора, который отображается с помощью ServiceAdminServlet. Для класса Repository существует другой, поэтому экран администратора для компонента репозитория выглядит иначе, чем для большинства других компонентов.

Вы можете реализовать свой собственный интерфейс администратора для своих компонентов, внедрив собственный класс AdminServlet и перезаписав метод getAdminService() (определенный в интерфейсе AdminableService) в вашем компоненте, чтобы вернуть экземпляр вашего пользовательского сервлета администратора.

Однако GenericService уже реализует интерфейс и предоставляет удобный расширяемый метод ловушки createAdminServlet(), и предпочтительнее расширять ServiceAdminServlet, чем создавать собственный AdminServlet с нуля.

Класс ServiceAdminServlet определяет метод printAdmin(...), который вы переопределяете для вывода необходимого пользовательского HTML.

Предупреждение:

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

Я очень активно работаю с платформой ATG с 1998 года, и ни разу у меня не было причин создавать собственный интерфейс администратора.

person Vihung    schedule 07.07.2015
comment
но когда мы видим свойства OOTB, такие как loggingDebug, описание доступно правильно. Как это реализовано - person anonymous; 08.07.2015

Я думаю, что вам нужно создать MyComponentBeanInfo.java. если вы заглянете внутрь ATG_PATH\DAS\src\Java\atg\droplet, увидите что-то вроде этого: Component.java и ваш дескриптор ComponentBeanInfo.java.

я искал в документах Oracle и нашел эту ссылку: Документация Oracle: пример BeanInfo

внутри вашего компонента будет:

paramDescriptors[0] = new ParamDescriptor("myProperty",
                                            "this is my short description",
                                            DynamoServlet.class,
                                            false, true, outputDescriptors);

beanDescriptor = new BeanDescriptor(MyComponent.class);
beanDescriptor.setShortDescription("A custom servlet bean.");
beanDescriptor.setValue("paramDescriptors", paramDescriptors);
beanDescriptor.setValue("componentCategory", "Servlet Beans");
person Caio Leonhardt    schedule 19.07.2016