[MGNLRESTUI-64] Trying to create a component without modifying a jsonComboBoxField returns errors Created: 21/Apr/22  Updated: 08/Sep/23

Status: Open
Project: Magnolia REST Client UI
Component/s: None
Affects Version/s: 1.0.4
Fix Version/s: None

Type: Bug Priority: Neutral
Reporter: Roberto Gaona Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Problem/Incident
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Epic Link: RESTClient 2024
Team: DeveloperX

 Description   

We have found some errors when trying to work with the following definitions:

Field:

 

form:
  properties:
    categoryId:
      label: Legend Category ID
      $type: jsonComboBoxField
      datasource:
        name: rest
        $type: jsonDatasource
        restClient: restClientName
        restCall: combinedCategories
        jsonPathExpressions:
          itemId: '$.id'
          items: '$.*'
          describeBy: '$.name'

 

Rest client:

 

baseUrl: https://apitest.leisurecentre.com/api/external/v2/timetable
restCalls:
  combinedCategories:
    method: get
    entityClass: com.fasterxml.jackson.databind.node.ArrayNode
    path: /combined/categories
    headers:
      ApiKey: "B2F6F617-0348-43E7-B50D-DB8E8E48A23C" 

Ends up in multiple errors depending on the procedure:

 

  • If trying to simply save the component containing the field, it won't let you since you have to select a value. Adding emptySelectionAllowed should work, but it ends up causing the same issue when trying to commit until you select any field on the datasource.
  • However, adding the emptySelectionAllowed also makes it so the "empty" option returns an error like the following:
2022-04-21 08:24:29,740 ERROR nfo.magnolia.admincentral.AdmincentralErrorHandler: Admincentral has encountered an unhandled exception.
com.vaadin.server.ServerRpcManager$RpcInvocationException: Unable to invoke method select in com.vaadin.shared.data.selection.SelectionServerRpc
	at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:159) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:116) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:442) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:407) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:275) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:91) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1637) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:464) ~[vaadin-server-8.14.1.jar:8.14.1]
	at info.magnolia.admincentral.AdmincentralServlet.service(AdmincentralServlet.java:119) ~[magnolia-admincentral-6.2.18.jar:?]
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[servlet-api.jar:4.0.FR]
	at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:148) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:75) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.virtualuri.VirtualUriFilter.doFilter(VirtualUriFilter.java:102) ~[magnolia-virtual-uri-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cdn.filters.CDNHelperCacheFilter.doFilter(CDNHelperCacheFilter.java:41) ~[magnolia-cdn-helper-1.0.1.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.services.instrumentation.probes.filter.SimpleCounterFilterProbe.doFilter(SimpleCounterFilterProbe.java:61) ~[instrumentation-2.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58) ~[magnolia-cache-core-5.9.4.jar:?]
	at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:66) ~[magnolia-cache-core-5.9.4.jar:?]
	at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:164) ~[magnolia-cache-core-5.9.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:78) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cors.AbstractCorsFilter.doFilter(AbstractCorsFilter.java:77) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:84) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.module.site.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:119) ~[magnolia-site-1.4.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.multisite.filters.MultiSiteFilter.doFilter(MultiSiteFilter.java:120) ~[magnolia-module-multisite-2.1.2.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:74) ~[magnolia-cache-core-5.9.4.jar:?]
	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:128) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:91) ~[magnolia-module-enterprise-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.personalization.preview.filter.PreviewFilter.doFilter(PreviewFilter.java:92) ~[magnolia-personalization-preview-app-2.1.1.jar:?]
	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:155) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.services.instrumentation.probes.filter.SimplePassthroughFilterProbe.doFilter(SimplePassthroughFilterProbe.java:50) ~[instrumentation-2.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.services.instrumentation.probes.filter.SimpleSummaryPassthroughFilterProbe.doFilter(SimpleSummaryPassthroughFilterProbe.java:48) ~[instrumentation-2.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.services.instrumentation.probes.filter.SimpleCounterFilterProbe.doFilter(SimpleCounterFilterProbe.java:61) ~[instrumentation-2.4.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:128) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:75) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:107) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:67) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:110) ~[magnolia-core-6.2.18.jar:?]
	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96) ~[magnolia-core-6.2.18.jar:?]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) ~[catalina.jar:9.0.58]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) ~[catalina.jar:9.0.58]
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) ~[catalina.jar:9.0.58]
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[catalina.jar:9.0.58]
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540) ~[catalina.jar:9.0.58]
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) ~[catalina.jar:9.0.58]
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[catalina.jar:9.0.58]
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) ~[catalina.jar:9.0.58]
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[catalina.jar:9.0.58]
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:359) ~[catalina.jar:9.0.58]
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) ~[tomcat-coyote.jar:9.0.58]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-coyote.jar:9.0.58]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:889) ~[tomcat-coyote.jar:9.0.58]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1735) ~[tomcat-coyote.jar:9.0.58]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:9.0.58]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-util.jar:9.0.58]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-util.jar:9.0.58]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:9.0.58]
	at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_202]
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_202]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_202]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
	at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155) ~[vaadin-server-8.14.1.jar:8.14.1]
	... 135 more
Caused by: com.vaadin.event.ListenerMethod$MethodException: Invocation of method selectionChange in com.vaadin.ui.ComboBox$$Lambda$1325/1988560056 failed.
	at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:726) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:399) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:363) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1190) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.ui.AbstractSingleSelect.setSelectedItem(AbstractSingleSelect.java:360) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.ui.AbstractSingleSelect$1.select(AbstractSingleSelect.java:293) ~[vaadin-server-8.14.1.jar:8.14.1]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_202]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_202]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
	at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155) ~[vaadin-server-8.14.1.jar:8.14.1]
	... 135 more
Caused by: java.lang.NullPointerException
	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:889) ~[guava-31.1-jre.jar:?]
	at info.magnolia.rest.ui.JsonSelectFieldSupport.asText(JsonSelectFieldSupport.java:77) ~[magnolia-rest-client-ui-1.0.4.jar:?]
	at info.magnolia.rest.ui.JsonSelectFieldSupport.access$100(JsonSelectFieldSupport.java:40) ~[magnolia-rest-client-ui-1.0.4.jar:?]
	at info.magnolia.rest.ui.JsonSelectFieldSupport$JsonSelectFieldConverter.convertToModel(JsonSelectFieldSupport.java:95) ~[magnolia-rest-client-ui-1.0.4.jar:?]
	at info.magnolia.rest.ui.JsonSelectFieldSupport$JsonSelectFieldConverter.convertToModel(JsonSelectFieldSupport.java:92) ~[magnolia-rest-client-ui-1.0.4.jar:?]
	at com.vaadin.data.Converter$2.lambda$convertToModel$5daf174e$1(Converter.java:167) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.SimpleResult.flatMap(SimpleResult.java:66) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.ValidationResultWrap.flatMap(ValidationResultWrap.java:66) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Converter$2.convertToModel(Converter.java:167) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Converter$2.convertToModel(Converter.java:165) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder$BindingImpl.doConversion(Binder.java:1207) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder$BindingImpl.doValidation(Binder.java:1224) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder$BindingImpl.validate(Binder.java:1165) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder$Binding.validate(Binder.java:135) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder.handleFieldValueChange(Binder.java:1574) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.data.Binder$BindingImpl.handleFieldValueChange(Binder.java:1294) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.ui.ComboBox.lambda$addValueChangeListener$bddd7469$1(ComboBox.java:835) ~[vaadin-server-8.14.1.jar:8.14.1]
	at sun.reflect.GeneratedMethodAccessor524.invoke(Unknown Source) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
	at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:706) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:399) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:363) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.server.AbstractClientConnector.fireEvent(AbstractClientConnector.java:1190) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.ui.AbstractSingleSelect.setSelectedItem(AbstractSingleSelect.java:360) ~[vaadin-server-8.14.1.jar:8.14.1]
	at com.vaadin.ui.AbstractSingleSelect$1.select(AbstractSingleSelect.java:293) ~[vaadin-server-8.14.1.jar:8.14.1]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_202]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_202]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_202]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_202]
	at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:155) ~[vaadin-server-8.14.1.jar:8.14.1]
	... 135 more

The expected behaviour would be that, since the field is not "required" at any point, the user should be able to disregard giving it a value.


Generated at Mon Feb 12 06:51:31 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.