Re: when i use Janusgraph in Apache Atlas, i found an error


HadoopMarc <bi...@...>
 

Hi Pavel,

I do not recognize the way you want to register classes for serialization by JanusGraph towards gremlin driver, but this may be due to my limited knowledge on this issue. JanusGraph itself registers the additional classes it has defined in the following way:

So, this would involve defining your own IoRegistry class and configuring it for gremlin server (and optionally for the remote-objects.yaml for gremlin driver).

HTH,   Marc

Op woensdag 22 juli 2020 om 17:21:15 UTC+2 schreef pav...@...:

Hello,

I've got the same issue with the latest version of JanusGraph and Atlas from master branch. Did you manage somehow appropriate type/serializer registration to produce GraphSON output? I'd like to visualise graph via Cytoscape or Graphexp. Thanks for any advice!

I've tried already - gremlin config (using Scylla and ES):
attributes.custom.attribute1.attribute-class=org.apache.atlas.typesystem.types.DataTypes.TypeCategory
attributes.custom.attribute1.serializer-class=org.apache.atlas.repository.graphdb.janus.serializer.TypeCategorySerializer
attributes.custom.attribute2.attribute-class=java.util.ArrayList
attributes.custom.attribute2.serializer-class=org.janusgraph.graphdb.database.serialize.attribute.SerializableSerializer
attributes.custom.attribute3.attribute-class=java.math.BigInteger
attributes.custom.attribute3.serializer-class=org.apache.atlas.repository.graphdb.janus.serializer.BigIntegerSerializer
attributes.custom.attribute4.attribute-class=java.math.BigDecimal
attributes.custom.attribute4.serializer-class=org.apache.atlas.repository.graphdb.janus.serializer.BigDecimalSerializer

then from gremlin cli:
graph.io(IoCore.graphson()).writeGraph("/atlas.json")

resulting into:
org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not find a type identifier for the class : class org.apache.atlas.typesystem.types.DataTypes$TypeCategory. Make sure the value to serialize has a type identifier registered for its class.
Dne středa 15. ledna 2020 v 14:31:09 UTC+1 uživatel mar...@... napsal:
Hi,

See a similar question on:


HTH,   Marc

Op woensdag 15 januari 2020 14:11:14 UTC+1 schreef qi...@...:
hello i am new in JanusGraph. When i use Janusgraph in Apache Atlas, i found a question, the error is :
Could not find a type identifier for the class : class org.apache.atlas.typesystem.types.DataTypes$TypeCategory. Make sure the value to serialize has a type identifier registered for its class.
org
.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not find a type identifier for the class : class org.apache.atlas.typesystem.types.DataTypes$TypeCategory. Make sure the value to serialize has a type identifier registered for its class.
at org
.apache.tinkerpop.shaded.jackson.databind.ser.DefaultSerializerProvider._wrapAsIOE(DefaultSerializerProvider.java:509)
at org
.apache.tinkerpop.shaded.jackson.databind.ser.DefaultSerializerProvider._serialize(DefaultSerializerProvider.java:482)
at org
.apache.tinkerpop.shaded.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:319)
at org
.apache.tinkerpop.shaded.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3893)
at org
.apache.tinkerpop.shaded.jackson.databind.ObjectMapper.writeValue(ObjectMapper.java:3164)
at org
.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONWriter.writeVertex(GraphSONWriter.java:82)
at org
.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONWriter.writeVertices(GraphSONWriter.java:110)
at org
.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONWriter.writeGraph(GraphSONWriter.java:71)
at org
.apache.tinkerpop.gremlin.structure.io.graphson.GraphSONIo.writeGraph(GraphSONIo.java:83)
at org
.apache.tinkerpop.gremlin.structure.io.Io$writeGraph.call(Unknown Source)
at org
.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
at org
.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
at org
.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128)
at groovysh_evaluate
.run(groovysh_evaluate:3)
at org
.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:236)
at org
.codehaus.groovy.tools.shell.Interpreter.evaluate(Interpreter.groovy:71)
at org
.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:196)
at org
.apache.tinkerpop.gremlin.console.GremlinGroovysh.super$3$execute(GremlinGroovysh.groovy)
at sun
.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
at sun
.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java
.lang.reflect.Method.invoke(Method.java:498)
at org
.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
at groovy
.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at groovy
.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1225)
at org
.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:145)
at org
.apache.tinkerpop.gremlin.console.GremlinGroovysh.execute(GremlinGroovysh.groovy:72)
at org
.codehaus.groovy.tools.shell.Shell.leftShift(Shell.groovy:122)
at org
.codehaus.groovy.tools.shell.ShellRunner.work(ShellRunner.groovy:95)
at org
.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$work(InteractiveShellRunner.groovy)
at sun
.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun
.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java
.lang.reflect.Method.invoke(Method.java:498)
at org
.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:98)
at groovy
.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
at groovy
.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1225)
at org
.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:145)
at org
.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:165)
at org
.codehaus.groovy.tools.shell.InteractiveShellRunner.work(InteractiveShellRunner.groovy:130)
at org
.codehaus.groovy.tools.shell.ShellRunner.run(ShellRunner.groovy:59)
at org
.codehaus.groovy.tools.shell.InteractiveShellRunner.super$2$run(InteractiveShellRunner.groovy)
at sun
.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun
.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java
.

how can i solve it? thank you very much

Join janusgraph-users@lists.lfaidata.foundation to automatically receive all group messages.