Java 无法以JSON格式从gremlin客户端检索查询结果

Java 无法以JSON格式从gremlin客户端检索查询结果,java,titan,gremlin,tinkerpop3,Java,Titan,Gremlin,Tinkerpop3,案例 我使用Java中ResultSet的submit方法(由org.apache.tinkerop:gremlin driver:3.0.1-incubating dependency提供)来查询gremlin服务器。我需要知道如何配置客户端以接收JSON格式的响应。 我所做的 我已尝试使用GraphSONMessageSerializerV1d0和GraphSONMessageSerializerGremlinV1d0序列化程序,但响应不是有效的json。这是我的gremlin-server

案例
我使用Java中ResultSet的submit方法(由org.apache.tinkerop:gremlin driver:3.0.1-incubating dependency提供)来查询gremlin服务器。我需要知道如何配置客户端以接收JSON格式的响应。

我所做的
我已尝试使用GraphSONMessageSerializerV1d0GraphSONMessageSerializerGremlinV1d0序列化程序,但响应不是有效的json。这是我的gremlin-server.yaml文件

authentication: {className: 
org.apache.tinkerpop.gremlin.server.auth.AllowAllAuthenticator,
config: null}
channelizer: 
org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
graphs: {graph: src/test/resources/titan-inmemory.properties}
gremlinPool: 8
host: localhost
maxAccumulationBufferComponents: 1024
maxChunkSize: 8192
maxContentLength: 65536
maxHeaderSize: 8192
maxInitialLineLength: 4096
metrics:
 consoleReporter: null
 csvReporter: null
 gangliaReporter: null
 graphiteReporter: null
 jmxReporter: null
 slf4jReporter: {enabled: true, interval: 180000, loggerName: 
org.apache.tinkerpop.gremlin.server.Settings$Slf4jReporterMetrics}
plugins: [aurelius.titan]
port: 8182
processors: []
resultIterationBatchSize: 64
scriptEngines:
gremlin-groovy:
config: null
imports: [java.lang.Math]
scripts: [src/test/resources/generate-asset-plus-locations.groovy]
staticImports: [java.lang.Math.PI]
scriptEvaluationTimeout: 30000
serializedResponseTimeout: 30000
serializers:
 - className: 
   org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
   config: {useMapperFromGraph: graph}
 - className: 
  org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0
  config: {serializeResultToString: true}
 - className: 
   org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializer
   GremlinV1d0
   config: {useMapperFromGraph: graph}
 - className: 
  org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0
  config: {useMapperFromGraph: graph}
  ssl: {enabled: false, keyCertChainFile: null, keyFile: null, keyPassword: 
   null, trustCertChainFile: null}
  threadPoolBoss: 1
  threadPoolWorker: 1
  writeBufferHighWaterMark: 65536
  writeBufferLowWaterMark: 32768

因此,如果有人能帮助我配置客户端以接收JSON格式的结果,那就太好了

要使用GraphSON作为序列化格式,只需将其指定给
集群
生成器:

Cluster cluster = Cluster.build().serializer(Serializers.GRAPHSON_V2D0).create();
但这不会返回一个JSON字符串供您使用,这是毫无价值的。它告诉服务器使用JSON作为序列化格式,但驱动程序将JSON反序列化为对象(映射、列表等)。如果需要实际的JSON字符串,那么应该在发送到服务器的脚本中返回一个。您唯一的其他选择是编写自己的序列化程序,该序列化程序始终只保留字符串