2015-07-22 5 views
0

Мой код ниже, в соответствии с документацией он должен был дать мне значения узлов, но он бросает мне исключениеВыпуск литейной узла Neo4j

Exception in thread "main" java.lang.ClassCastException: scala.collection.convert.Wrappers$SeqWrapper cannot be cast to org.neo4j.graphdb.Node 
 
\t at com.neo4j.performance.FetchData.main(FetchData.java:32)
Я использую Neo4j 2.2.2.

import org.neo4j.graphdb.Node; 
import org.neo4j.graphdb.Result; 
import org.neo4j.graphdb.Transaction; 
import java.util.Iterator; 
import org.neo4j.helpers.collection.IteratorUtil; 




import com.neo4j.enitites.Global; 

public class FetchData { 
    public static void main(String[] args) throws Exception 
     { 

     String nodeResult = null; 
     try (Transaction ignored = Global.db.beginTx(); 
        Result result = Global.db.execute("MATCH path=()-[:route_1*]-() RETURN nodes(path) AS result")) 
      { 
       // START SNIPPET: items 
       Iterator<Node> n_column = result.columnAs("result"); 
       for (Node node : IteratorUtil.asIterable(n_column)) 
       { 
        nodeResult = node + ": " + node.getProperty("StationCode"); 
       } 
       // END SNIPPET: items 


      } 

     System.out.println(nodeResult); 
     } 
} 

Я искал ошибку, но только 2 или 3 сообщения там тоже не работают. Кто-нибудь сталкивался с этой проблемой или что-то не так в этом коде. Благодаря

ответ

0

Используйте этот фрагмент вместо внутри транзакции примерочных с-ресурсами блока:

 for (Object cell : IteratorUtil.asIterable(result.columnAs("result"))) { 
      Iterable<Node> nodes = (Iterable<Node>) cell; 
      for (Node n : nodes) { 
       System.out.println(n); 
      } 
     } 
+0

Спасибо, это сработало :) –