Liferay 7.4.3.61 - Blob type column in service builder

471 Views Asked by At

Since the upgrade from 7.4.3.19 to 7.4.3.61, my custom service builder doesn't start with the following error.

I tried to do an other service builder with a simple entity and it works. But when I added a Blob column, it doesn't.

So is Blob column doesn't supported anymore ? Am i missing something ? I don't understand why it falls on a class not found exception.

2023-01-30 15:18:39.512 ERROR [main][LogService:56] [main] Invocation of 'start' failed.
java.lang.Exception: Unable to start com.custom.service
    at com.liferay.portal.spring.extender.internal.context.ModuleApplicationContextRegistrator.start(ModuleApplicationContextRegistrator.java:142) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at org.apache.felix.dm.impl.InvocationUtil.invokeMethod(InvocationUtil.java:157) ~[bundleFile:?]
    at org.apache.felix.dm.impl.InvocationUtil.invokeCallbackMethod(InvocationUtil.java:112) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.invokeCallbackMethod(ComponentImpl.java:638) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.invoke(ComponentImpl.java:1783) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.invokeStart(ComponentImpl.java:1281) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.performTransition(ComponentImpl.java:1232) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.handleChange(ComponentImpl.java:1166) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.handleAdded(ComponentImpl.java:1337) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.lambda$handleEvent$6(ComponentImpl.java:565) ~[bundleFile:?]
    at org.apache.felix.dm.impl.SerialExecutor.runTask(SerialExecutor.java:138) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.runTasks(SerialExecutor.java:120) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.execute(SerialExecutor.java:86) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.execute(SerialExecutor.java:105) ~[?:?]
    at org.apache.felix.dm.impl.ComponentImpl.schedule(ComponentImpl.java:1930) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ComponentImpl.handleEvent(ComponentImpl.java:561) ~[bundleFile:?]
    at org.apache.felix.dm.impl.ServiceDependencyImpl.addedService(ServiceDependencyImpl.java:276) ~[?:?]
    at org.apache.felix.dm.tracker.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1283) ~[?:?]
    at org.apache.felix.dm.tracker.ServiceTracker$Tracked$2.execute(ServiceTracker.java:1399) ~[?:?]
    at org.apache.felix.dm.tracker.ServiceTracker$Tracked$1.run(ServiceTracker.java:1196) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.runTask(SerialExecutor.java:138) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.runTasks(SerialExecutor.java:120) ~[?:?]
    at org.apache.felix.dm.impl.SerialExecutor.execute(SerialExecutor.java:86) ~[?:?]
    at org.apache.felix.dm.tracker.ServiceTracker$Tracked.serviceChangedHideAspects(ServiceTracker.java:1202) ~[?:?]
    at org.apache.felix.dm.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1057) ~[?:?]
    at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:907) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:805) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:229) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:469) ~[org.eclipse.osgi.jar:?]
    .....
    
Caused by: org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:123) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:181) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:319) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:728) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:746) ~[hibernate-core.jar:5.6.7.Final]
    at org.springframework.orm.hibernate5.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:616) ~[spring-orm.jar:5.2.22.RELEASE]
    at com.liferay.portal.spring.hibernate.PortalHibernateConfiguration.buildSessionFactory(PortalHibernateConfiguration.java:212) ~[portal-impl.jar:?]
    at org.springframework.orm.hibernate5.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:600) ~[spring-orm.jar:5.2.22.RELEASE]
    .........
    
Caused by: org.hibernate.HibernateException: Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
    at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:91) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:116) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:432) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:613) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:126) ~[hibernate-core.jar:5.6.7.Final]
    at jdk.internal.reflect.GeneratedConstructorAccessor41.newInstance(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:96) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:181) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:319) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:728) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:746) ~[hibernate-core.jar:5.6.7.Final]
    at org.springframework.orm.hibernate5.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:616) ~[spring-orm.jar:5.2.22.RELEASE]
    .......
    
Caused by: java.lang.reflect.InvocationTargetException
    at jdk.internal.reflect.GeneratedConstructorAccessor42.newInstance(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
    at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:88) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.EntityTuplizerFactory.constructDefaultTuplizer(EntityTuplizerFactory.java:116) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:432) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:613) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:126) ~[hibernate-core.jar:5.6.7.Final]
    at jdk.internal.reflect.GeneratedConstructorAccessor41.newInstance(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:96) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:181) ~[hibernate-core.jar:5.6.7.Final]
    .............
    
Caused by: java.lang.IllegalArgumentException: Could not create type
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:155) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:175) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.load(ByteBuddyState.java:179) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(ByteBuddyState.java:103) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyHelper.buildProxy(ByteBuddyProxyHelper.java:59) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyFactory.postInstantiate(ByteBuddyProxyFactory.java:61) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:102) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:160) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:53) ~[hibernate-core.jar:5.6.7.Final]
    at jdk.internal.reflect.GeneratedConstructorAccessor42.newInstance(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
    at org.hibernate.tuple.entity.EntityTuplizerFactory.constructTuplizer(EntityTuplizerFactory.java:88) ~[hibernate-core.jar:5.6.7.Final]
    .......
    
Caused by: java.lang.IllegalStateException: java.lang.IllegalStateException: Failed to invoke proxy for public abstract java.lang.Class net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup$MethodHandles$Lookup.defineClass(java.lang.Object,byte[]) throws java.lang.IllegalAccessException
    at net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup.injectRaw(ClassInjector.java:1617) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassInjector$AbstractBase.inject(ClassInjector.java:114) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassLoadingStrategy$UsingLookup.load(ClassLoadingStrategy.java:492) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.TypeResolutionStrategy$Passive.initialize(TypeResolutionStrategy.java:100) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.DynamicType$Default$Unloaded.load(DynamicType.java:6154) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.lambda$load$0(ByteBuddyState.java:183) ~[hibernate-core.jar:5.6.7.Final]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:153) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:175) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.load(ByteBuddyState.java:179) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(ByteBuddyState.java:103) ~[hibernate-core.jar:5.6.7.Final]
    .........
    
Caused by: java.lang.IllegalStateException: Failed to invoke proxy for public abstract java.lang.Class net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup$MethodHandles$Lookup.defineClass(java.lang.Object,byte[]) throws java.lang.IllegalAccessException
    at net.bytebuddy.utility.dispatcher.JavaDispatcher$ProxiedInvocationHandler.invoke(JavaDispatcher.java:1157) ~[net.bytebuddy.byte-buddy.jar:?]
    at com.sun.proxy.$Proxy297.defineClass(Unknown Source) ~[?:?]
    at net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup.injectRaw(ClassInjector.java:1615) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassInjector$AbstractBase.inject(ClassInjector.java:114) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassLoadingStrategy$UsingLookup.load(ClassLoadingStrategy.java:492) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.TypeResolutionStrategy$Passive.initialize(TypeResolutionStrategy.java:100) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.DynamicType$Default$Unloaded.load(DynamicType.java:6154) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.lambda$load$0(ByteBuddyState.java:183) ~[hibernate-core.jar:5.6.7.Final]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:153) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:175) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.load(ByteBuddyState.java:179) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(ByteBuddyState.java:103) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyHelper.buildProxy(ByteBuddyProxyHelper.java:59) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyFactory.postInstantiate(ByteBuddyProxyFactory.java:61) ~[hibernate-core.jar:5.6.7.Final]
    .........
    
Caused by: java.lang.NoClassDefFoundError: org/hibernate/proxy/HibernateProxy
    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]
    at java.lang.System$2.defineClass(System.java:2127) ~[?:?]
    at java.lang.invoke.MethodHandles$Lookup.defineClass(MethodHandles.java:962) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
    at net.bytebuddy.utility.Invoker$Dispatcher.invoke(Unknown Source) ~[?:?]
    at net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher$ForNonStaticMethod.invoke(JavaDispatcher.java:1013) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.utility.dispatcher.JavaDispatcher$ProxiedInvocationHandler.invoke(JavaDispatcher.java:1142) ~[net.bytebuddy.byte-buddy.jar:?]
    at com.sun.proxy.$Proxy297.defineClass(Unknown Source) ~[?:?]
    at net.bytebuddy.dynamic.loading.ClassInjector$UsingLookup.injectRaw(ClassInjector.java:1615) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassInjector$AbstractBase.inject(ClassInjector.java:114) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.loading.ClassLoadingStrategy$UsingLookup.load(ClassLoadingStrategy.java:492) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.TypeResolutionStrategy$Passive.initialize(TypeResolutionStrategy.java:100) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.dynamic.DynamicType$Default$Unloaded.load(DynamicType.java:6154) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.lambda$load$0(ByteBuddyState.java:183) ~[hibernate-core.jar:5.6.7.Final]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:153) ~[net.bytebuddy.byte-buddy.jar:?]
    at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:175) ~[net.bytebuddy.byte-buddy.jar:?]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.load(ByteBuddyState.java:179) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(ByteBuddyState.java:103) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyHelper.buildProxy(ByteBuddyProxyHelper.java:59) ~[hibernate-core.jar:5.6.7.Final]
    at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyFactory.postInstantiate(ByteBuddyProxyFactory.java:61) ~[hibernate-core.jar:5.6.7.Final]
    ..............
    
Caused by: java.lang.ClassNotFoundException: org.hibernate.proxy.HibernateProxy cannot be found by com.custom.api_1.15.0
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:508) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:419) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:411) ~[org.eclipse.osgi.jar:?]
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:151) ~[org.eclipse.osgi.jar:?]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]
    at java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]
    at java.lang.System$2.defineClass(System.java:2127) ~[?:?]
    at java.lang.invoke.MethodHandles$Lookup.defineClass(MethodHandles.java:962) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    ................

And my service.xml :

    <?xml version="1.0"?>
    <!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 7.4.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_7_4_0.dtd">
    
    <service-builder dependency-injector="ds" package-path="zz2">
    
        <namespace>FOO2</namespace>
        
        <entity local-service="true" name="Foo2" remote-service="true" uuid="true">
    
            <column name="fooId" primary="true" type="long" />
    
            <column name="groupId" type="long" />
    
    
            <column name="companyId" type="long" />
            <column name="userId" type="long" />
            <column name="userName" type="String" />
            <column name="createDate" type="Date" />
            <column name="modifiedDate" type="Date" />
    
            <column name="field1" type="String" />
            <column name="field2" type="boolean" />
            <column name="field3" type="int" />
            <column name="field4" type="Date" />
            <column name="field5" type="String" />
            <column name="testBlob" type="Blob" lazy="true" />
            
            <order by="asc">
                <order-column name="field1" />
            </order>
    
            <finder name="Field2" return-type="Collection">
                <finder-column name="field2" />
            </finder>

        <reference entity="AssetEntry" package-path="com.liferay.portlet.asset" />
        <reference entity="AssetTag" package-path="com.liferay.portlet.asset" />
        
    </entity>
    
</service-builder>
0

There are 0 best solutions below