Как создать список описаний типов контента с помощью Magnolia 5.6
В Magnolia есть несколько классов, которые вы можете использовать для описания формы / диалога, с которым вы хотите работать с редактором контента, однако я не нашел функционирующего способа создать список описания в виде поля MultiValue.
Стремление создать компонент, такой как FAQ, где пользователь будет добавлять столько элементов, сколько ему нужно, где каждый элемент имеет два поля - вопрос и ответ. Тогда позже возможно дополнительное изображение.
Как я могу добиться этого с Магнолией? Ниже моя самая разумная попытка.
form:
label: FAQ list
tabs:
- name: tabMain
label: Q/A
fields:
- name: list
class: info.magnolia.ui.form.field.definition.MultiValueFieldDefinition
label: Q/A
field:
name: qaField
class: info.magnolia.ui.form.field.definition.CompositeFieldDefinition
label: Q/A
fields:
- name: question
class: info.magnolia.ui.form.field.definition.TextFieldDefinition
label: Question
- name: answer
class: info.magnolia.ui.form.field.definition.TextFieldDefinition
label: Answer
Ниже приведен журнал ошибок, и я делаю следующее, чтобы вызвать его:
- Перейти на мою страницу
- Отредактируйте компонент для моего светового модуля
- Магнолия показывает мне короткое красное сообщение об ошибке (подробности ниже)
2018-01-22 19: 09: 15,230 ОШИБКА info.magnolia.pages.app.editor.PageEditorPresenter: Произошла ошибка при выполнении действия [editComponent] info.magnolia.ui.api.action.ActionExecutionException: Не удалось выполнить действие для действия: editComponent на info.magnolia.ui.api.action.AbstractActionExecutor.execute(AbstractActionExecutor.java:64) ~[magnolia-ui-api-5.6.jar:?] на info.magnolia.pages.app.editor.PageEditorPresenter.onAction(PageEditorPresenter.java:175) [magnolia-pages-app-5.6.jar:?] at info.magnolia.ui.vaadin.editor.PageEditor$1.editComponent(PageEditor.java:102) [magnolia-pages-editor-widget-5.6.jar:5.6] в sun.reflect.NativeMethodAccessorImpl.invoke0(собственный метод) ~[?:1.8.0_144] в sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62_14] [4] 1.8.0 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_144] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_144] в com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155) [vaadin-server-8.1.5.jar:8.1.5] в com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:116) [vaadin-server-8.1.5.jar:8.1.5] на com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:445) [vaadin-server-8.1.5.jar:8.1.5] на com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:410) [vaadin-server-8.1.5.jar:8.1.5] в com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:274) [vaadin-server-8.1.5.jar:8.1.5] на com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:90) [vaadin-server-8.1.5.jar:8.1.5] на com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41) [vaadin-server-8.1.5.jar:8.1.5] в com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1568) [vaadin-server-8.1.5.jar:8.1.5] at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:381) [vaadin-server-8.1.5.jar:8.1.5] по адресу info.magnolia.ui.admincentral.AdmincentralVaadinServlet.service(AdmincentralVaadinServlet.java:147) [magnolia-ui-admincentral-5.6.jar:?] на javax.servlet.http.HttpServlet.service(HttpServlet.java:729) [servlet-api.jar:?] на info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:1): 1 -5.6.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [magnolia-core-5.6.jar:?] на странице info. magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:81) [magnolia-core-5.6.jar:?] в info.magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:81) -5.6.jar:?] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] на info.magnolia.virtualuri.VirtualUriFilter.doFilter(VirtualUriFilter.java:98) [magnolia-virtual-uri-5.6.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter (AbstractMgnlFilter.java:85) [ magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] на info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58) [magnolia-cache-core-5.6.jar:?] at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:67) [magnolia-cache-core-5.6.jar:?] at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:220) [magnolia-cache-core-5.6.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] на info.magnolia. cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] в info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:89):.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain. java: 79) [magnolia-core-5.6.jar:?] в info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:77) [magnolia-core-5.6.jar:?] в info.magnolia. cms.filters.AbstractMgnlFilter.doFilter (AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] at info.magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:79) [magnolia-core-5.6].jar:?] at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [magnolia-core-5.6.jar: ] at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:84) [magnolia-core-5.6.jar:?] по адресу info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter.doFilter.terf (OncePerRejlest) ([magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] на info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94) [magnolia-core-5.6.jar:?] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [magnolia-core-5.: 5. ] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] at info.magnolia.module.site.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:119) [magnolia-site-1.2.jar:?] в info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] в info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters. AbstractMgnlFilter.doFilter (AbstractMgnlFilter.java:85) [magnolia-core-5.6.jar:?] at info.magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:79) [magnolia-core-5.6.jar:? ] в info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73) [magnolia-cache-core-5.6.jar:?] в info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter (OncePerRegnlF) (OncePerRegnlF) Java:59) [magnolia-core-5.6.jar:?] на info.magnolia.cms.filters.MgnlFilterC hain.doFilter (MgnlFilterChain.java:79) [magnolia-core-5.6.jar:?] в info.magnolia.cms.filters.MgnlFilterChain.doFilter (MgnlFilterChain.java:81) [magnolia-core-5.6.jar:? ] в info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:127) [magnolia-core-5.6.jar:?] в info.magnolia.cms.filters.AbstractMgnlFilter.doFilter (AbstractMgnlFil