AtlasOfLivingAustralia / image-service

Image repository and tiling services
https://images.ala.org.au
0 stars 17 forks source link

ClassCastException: class au.org.ala.images.StorageLocation$HibernateProxy$CsV93d6U cannot be cast to class au.org.ala.images.FileSystemStorageLocation #167

Open yasima-csiro opened 2 years ago

yasima-csiro commented 2 years ago

Following error is appearing when trying to upload an image.

org.quartz.JobExecutionException: java.lang.ClassCastException: class au.org.ala.images.StorageLocation$HibernateProxy$CsV93d6U cannot be cast to class au.org.ala.images.FileSystemStorageLocation (au.org.ala.images.StorageLocation$HibernateProxy$CsV93d6U and au.org.ala.images.FileSystemStorageLocation are in unnamed module of loader org.springframework.boot.devtools.restart.classloader.RestartClassLoader @60816d89) at grails.plugins.quartz.GrailsJobFactory$GrailsJob.execute(GrailsJobFactory.java:111) at org.quartz.core.JobRunShell.run(JobRunShell.java:202) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) Caused by: java.lang.ClassCastException: class au.org.ala.images.StorageLocation$HibernateProxy$CsV93d6U cannot be cast to class au.org.ala.images.FileSystemStorageLocation (au.org.ala.images.StorageLocation$HibernateProxy$CsV93d6U and au.org.ala.images.FileSystemStorageLocation are in unnamed module of loader org.springframework.boot.devtools.restart.classloader.RestartClassLoader @60816d89) at au.org.ala.images.FileSystemStorageLocation$tilerByteSinkFactory$2.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127) at au.org.ala.images.ImageStoreService.tileImage(ImageStoreService.groovy:213) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite$StaticMetaMethodSiteNoUnwrapNoCoerce.invoke(StaticMetaMethodSite.java:149) at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.callStatic(StaticMetaMethodSite.java:100) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:55) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:196) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:208) at au.org.ala.images.ImageStoreService.generateTMSTiles(ImageStoreService.groovy:194) at au.org.ala.images.ImageStoreService$generateTMSTiles$5.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127) at au.org.ala.images.ImageService.generateTMSTiles(ImageService.groovy:861) at au.org.ala.images.ImageService$generateTMSTiles$16.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127) at au.org.ala.images.ImageBackgroundTask$_execute_closure1.doCall(ImageBackgroundTask.groovy:29) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:263) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041) at groovy.lang.Closure.call(Closure.java:405) at groovy.lang.Closure.call(Closure.java:421) at grails.gorm.transactions.GrailsTransactionTemplate$2.doInTransaction(GrailsTransactionTemplate.groovy:94) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:140) at grails.gorm.transactions.GrailsTransactionTemplate.execute(GrailsTransactionTemplate.groovy:91) at org.grails.datastore.gorm.GormStaticApi.withTransaction(GormStaticApi.groovy:1014) at org.grails.datastore.gorm.GormStaticApi.withTransaction(GormStaticApi.groovy:966) at org.grails.datastore.gorm.GormStaticApi.withNewTransaction(GormStaticApi.groovy:927) at org.grails.datastore.gorm.GormEntity$Trait$Helper.withNewTransaction(GormEntity.groovy:954) at org.grails.datastore.gorm.GormEntity$Trait$Helper$withNewTransaction$1.call(Unknown Source) at au.org.ala.images.Image.withNewTransaction(Image.groovy) at au.org.ala.images.Image$withNewTransaction$5.call(Unknown Source) at au.org.ala.images.ImageBackgroundTask.execute(ImageBackgroundTask.groovy:20) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:351) at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:64) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:160) at au.org.ala.images.BackgroundTask$_doExecute_closure1.doCall(BackgroundTask.groovy:18) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:263) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041) at groovy.lang.Closure.call(Closure.java:405) at groovy.lang.Closure.call(Closure.java:421) at org.grails.orm.hibernate.GrailsHibernateTemplate.doExecute(GrailsHibernateTemplate.java:297) at org.grails.orm.hibernate.GrailsHibernateTemplate.execute(GrailsHibernateTemplate.java:241) at org.grails.orm.hibernate.GrailsHibernateTemplate.executeWithNewSession(GrailsHibernateTemplate.java:153) at org.grails.orm.hibernate.AbstractHibernateDatastore.withNewSession(AbstractHibernateDatastore.java:360) at org.grails.orm.hibernate.AbstractHibernateGormStaticApi.withNewSession(AbstractHibernateGormStaticApi.groovy:82) at org.grails.datastore.gorm.GormEntity$Trait$Helper.withNewSession(GormEntity.groovy:1027) at org.grails.datastore.gorm.GormEntity$Trait$Helper$withNewSession$10.call(Unknown Source) at au.org.ala.images.Image.withNewSession(Image.groovy) at au.org.ala.images.Image$withNewSession$4.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127) at au.org.ala.images.BackgroundTask.doExecute(BackgroundTask.groovy:17) at au.org.ala.images.BackgroundTask$doExecute.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:119) at au.org.ala.images.ImageService.processTileBackgroundTasks(ImageService.groovy:816) at au.org.ala.images.ImageService$processTileBackgroundTasks$0.call(Unknown Source) at au.org.ala.images.ProcessBackgroundTilingTasksJob.execute(ProcessBackgroundTilingTasksJob.groovy:18) at jdk.internal.reflect.GeneratedMethodAccessor485.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at grails.plugins.quartz.GrailsJobFactory$GrailsJob.execute(GrailsJobFactory.java:104) ... 2 common frames omitted

yasima-csiro commented 2 years ago

https://github.com/AtlasOfLivingAustralia/image-service/commit/832d75f41dc9774c8d8a1086f72e08ea2c7c87bb

yasima-csiro commented 2 years ago

@sbearcsiro Can you please review this change? Thank you