2017-12-17 6 views
0

ちょうどtinkerpopコンソールを使い始めていて、それを使ってサブグラフを持つgraphmlファイルを扱うことに興味があります。私は「Getting Started」を終え、他のドキュメントを開始しました。サブグラフ付きグラフを読むときにTinkerpopコンソールがnullpointerexceptionを返す

グラフグラフファイルをサブグラフなしでインポートすることはできますが、サブグラフが存在する場合はファイルを読み取ることができません。これはサポートされていますか? (サイトの私の検索は、それがサポートされていないではなかった示しているわけではありませんでした)

gremlin> graph = TinkerGraph.open() 
==>tinkergraph[vertices:0 edges:0] 
gremlin> graph.io(graphml()).readGraph('data/xsmall0.graphml') 
==>null 
gremlin> g = graph.traversal() 
==>graphtraversalsource[tinkergraph[vertices:3 edges:2], standard] 
gremlin> g.V() 
==>v[n1] 
==>v[n2] 
==>v[n3] 
gremlin> graph = TinkerGraph.open() 
==>tinkergraph[vertices:0 edges:0] 
gremlin> graph.io(graphml()).readGraph('data/xsmall2.graphml') 
java.lang.NullPointerException 
Type ':help' or ':h' for help. 
Display stack trace? [yN]y 
java.lang.NullPointerException 
    at org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLReader.readGraph(GraphMLReader.java:175) 
    at org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLIo.readGraph(GraphMLIo.java:92) 
    at org.apache.tinkerpop.gremlin.structure.io.Io$readGraph.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) 
    at groovysh_evaluate.run(groovysh_evaluate:3) 
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232) 
    at org.codehaus.groovy.tools.shell.Interpreter.evaluate(Interpreter.groovy:70) 
    at org.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:191) 
    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:93) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1213) 
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132) 
    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.GeneratedMethodAccessor34.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:93) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1213) 
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132) 
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:152) 
    at org.codehaus.groovy.tools.shell.InteractiveShellRunner.work(InteractiveShellRunner.groovy:124) 
    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.lang.reflect.Method.invoke(Method.java:498) 
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1213) 
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(ScriptBytecodeAdapter.java:132) 
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuper0(ScriptBytecodeAdapter.java:152) 
    at org.codehaus.groovy.tools.shell.InteractiveShellRunner.run(InteractiveShellRunner.groovy:83) 
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232) 
    at org.apache.tinkerpop.gremlin.console.Console.<init>(Console.groovy:143) 
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:232) 
    at org.apache.tinkerpop.gremlin.console.Console.main(Console.groovy:450) 
gremlin> 

ここで私が輸入していますxsmall2.graphmlファイル(http://kb.yworks.com/article/78/からコピー)

<?xml version="1.0" encoding="UTF-8"?> 
<graphml> 
    <graph id="G" edgedefault="directed"> 
    <node id="n0"/> 
    <node id="n1"/> 
    <node id="n2"> 
     <graph id="n2::" edgedefault="directed"> 
     <node id="n2::n0"/> 
     <node id="n2::n1"> 
      <graph id="n2::n1::" edgedefault="directed"> 
      <node id="n2::n1::n0"/> 
      <node id="n2::n1::n1"/> 
      <node id="n2::n1::n2"/> 
      <edge id="e0" source="n2::n1::n1" target="n2::n1::n0"/> 
      <edge id="e1" source="n2::n1::n2" target="n2::n1::n1"/> 
      </graph> 
     </node> 
     <node id="n2::n2"/> 
     <edge id="e2" source="n2::n1" target="n2::n0"/> 
     <edge id="e3" source="n2::n2" target="n2::n1"/> 
     </graph> 
    </node> 
    <edge id="e4" source="n1" target="n0"/> 
    <edge id="e5" source="n1" target="n2::n1"/> 
    <edge id="e6" source="n0" target="n2"/> 
    </graph> 
</graphml> 
+0

...と私は グラム= graph.traversal() GV()を使用する場合 私は、私はそれらの約半分欠けているノードを参照してください、しかし –

答えて

1

TinkerPopのGraphMLReader doesnのですサブグラフをサポートしていません。私はパーサーが別の<graph>要素に埋め込まれた<graph>要素を見つけることを期待していないと思う。

+0

ない私は期待していた答えが、権威それにもかかわらず:) –

関連する問題