MetaProperty with List<Map<String,String>> Serialize error

Hi,
I have a entity

@Transient
@MetaProperty
protected List<Map<String,String>> buildingList;

and get below error when Serialize to json

11:05:05.680 INFO  c.h.cuba.core.sys.MetadataImpl          - Initializing metadata
11:05:06.081 ERROR c.h.c.c.s.AbstractWebAppContextLoader   - Error initializing application
java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl cannot be cast to java.lang.Class
	at com.haulmont.cuba.core.sys.MetaModelLoader.getFieldType(MetaModelLoader.java:829) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetaModelLoader.loadCollectionProperty(MetaModelLoader.java:397) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetaModelLoader.initProperties(MetaModelLoader.java:253) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetaModelLoader.loadClass(MetaModelLoader.java:152) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetaModelLoader.loadModel(MetaModelLoader.java:123) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetadataLoader.loadMetadata(MetadataLoader.java:114) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.MetadataImpl.initMetadata(MetadataImpl.java:106) ~[cuba-global-6.10.3.jar:6.10.3]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_181]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_181]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_181]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_181]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.doInvoke(ApplicationListenerMethodAdapter.java:256) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.processEvent(ApplicationListenerMethodAdapter.java:177) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.onApplicationEvent(ApplicationListenerMethodAdapter.java:140) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:393) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:347) ~[spring-context-4.3.18.RELEASE.jar:4.3.18.RELEASE]
	at com.haulmont.cuba.core.sys.EventsImpl.publish(EventsImpl.java:33) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.web.sys.WebEvents.publish(WebEvents.java:36) ~[cuba-web-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.AbstractAppContextLoader.initAppContext(AbstractAppContextLoader.java:66) ~[cuba-global-6.10.3.jar:6.10.3]
	at com.haulmont.cuba.core.sys.AbstractWebAppContextLoader.contextInitialized(AbstractWebAppContextLoader.java:77) ~[cuba-global-6.10.3.jar:6.10.3]
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4792) [catalina.jar:8.5.33]
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256) [catalina.jar:8.5.33]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:8.5.33]
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754) [catalina.jar:8.5.33]
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730) [catalina.jar:8.5.33]
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734) [catalina.jar:8.5.33]
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1140) [catalina.jar:8.5.33]
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875) [catalina.jar:8.5.33]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_181]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_181]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_181]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_181]
	at java.lang.Thread.run(Thread.java:748) [na:1.8.0_181]
11:05:06.093 INFO  c.h.c.c.s.CubaClassPathXmlApplicationContext- Closing com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext@44c36188: startup date [Tue Aug 20 11:04:59 CST 2019]; root of context hierarchy
11:05:06.095 INFO  c.h.c.c.s.CubaThreadPoolTaskScheduler   - Shutting down ExecutorService 'scheduler'

Hi,
@MetaProperty can’t be used with List<Map<String, String>> type. CUBA doesn’t support that.
As workaround create separate not persistent entity Value using CUBA Studio and use it for buildingList property:

@Transient
@MetaProperty
protected List<Value> buildingList;

Value class:

@MetaClass(name = "metadatapropertytest_Value")
public class Value extends BaseUuidEntity {
    private static final long serialVersionUID = 97354987287628016L;

    @Column(name = "KEY_")
    @MetaProperty
    protected String key;

    @Column(name = "VALUE_")
    @MetaProperty
    protected String value;

    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }
}