Details
-
Task
-
Resolution: Unresolved
-
Neutral
-
1.0.4
-
None
-
-
Empty show more show less
-
Empty show more show less
Description
Celum Java SDK will be sunset end of 2024, and we are already facing issues with recent version of Celum where it's not behaving properly anymore, getting errors like below:
Exception in thread "main" com.celum.api.remote.json.SerializationException: com.fasterxml.jackson.databind.exc.InvalidTypeIdException: Could not resolve subtype of [simple type, class com.celum.api.queries.sorters.AssetSorter]: missing type id property '_class' (for POJO property 'sorter') at [Source: (String)"{"query":{"_class":"com.celum.api.queries.AssetSearchQuery","credentials":{"userId":{"_class":"com.celum.api.identifiers.UserId","id":102,"isSystem":false}},"informationFieldIds":[],"loadAllInformationFields":true,"loadFileProperties":true,"filter":{"_class":"com.celum.api.serialization.filters.AssetsByNodeFilter","nodeIds":[{"_class":"com.celum.api.identifiers.NodeId","id":10051}],"recursive":true,"useAndOperator":true},"sorter":{"empty":true,"present":false}},"batchNumber":1,"batchSize":200}"; line: 1, column: 464] (through reference chain: com.celum.api.remote.query.RemoteIterableQueryMessage["query"]->com.celum.api.queries.AssetSearchQuery["sorter"]) at com.celum.api.remote.json.JsonHelper.fromJson(JsonHelper.java:60) at com.celum.api.remote.vertx.ApiMessageHelper.createObjectFromPayload(ApiMessageHelper.java:19) at com.celum.api.endpoint.RepositoryVerticle.lambda$handleMessage$14(RepositoryVerticle.java:166) at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:313) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.lang.Thread.run(Thread.java:829)
We need to change the service layer by removing the current celum java remote api and introducing the new rest service provided by Celum.
UPDATE on the above issue : can be fix by activating the backward compatibility on Celum server (Celum ticket PS-11136)
this issue was fixed by enabling backward compatibility. See:
https://community.celum.com/kb/display/CS/Fixed+and+Known+Issues+for+Release+22.9
The fix is by default disabled. Please set the following property as JVM property in the setenv.sh file:
compatibility.jackson.deserializer.enabled=true
and restart the appserver.
It should fix the issue.
So if the compatibility works it will let us more time to migrate to the new Rest API, especially considering that identified blockers below might prevent us to migrate.
Resources:
https://www.celum.com/en/blog/new-rest-api-reduces-complexity-and-cost-for-you/
https://community.celum.com/kb/display/CS/CELUM+Content+REST+API
Identified blockers:
- Rest API doesn't seem to offer access to the public URLs of an asset (Celum ticket PS-11137)
Feedback from support :
This function is not available yet in Rest API and it is planned in CH version 23.12
Sadly, I do not have an exact date for when this version will be available.