I fixed it, added a test and pushed the update to github and an binary update 
to 
http://dist.neo4j.org/neo4j-jdbc/neo4j-jdbc-2.0.1-SNAPSHOT-jar-with-dependencies.jar

please try it out and report back if it worked.

Michael

Am 10.02.2014 um 13:40 schrieb Licio Mazzeo <[email protected]>:

> Ok, thank you Michael :)
> 
> Licio.
> 
> Il giorno lunedì 10 febbraio 2014 13:29:19 UTC+1, Michael Hunger ha scritto:
> Ok, sorry, my fault. I thought I correctly serialized maps in the jdbc driver.
> 
> So for now you'll have to go with individual fields. Sorry for that.
> 
> I fix it soon.
> 
> Michael
> 
> Am 10.02.2014 um 13:02 schrieb Licio Mazzeo <[email protected]>:
> 
>> Yes, i tried to do so .. but i got an exception..
>> 
>>  org.neo4j.jdbc.Neo4jConnection - Executing query: CREATE ({1})
>>  with params {1={filter_level=medium ... } //the json 
>> at org.neo4j.jdbc.Neo4jConnection.executeQuery(Neo4jConnection.java:255)
>>      at 
>> org.neo4j.jdbc.Neo4jPreparedStatement.executeQuery(Neo4jPreparedStatement.java:48)
>>      at 
>> org.pipe.java.web.netnografica.persistenza.graphdb.DAONodo.doInsertNodo(DAONodo.java:98)
>>      at 
>> org.pipe.java.web.netnografica.controllo.MyTwitterListener.onStatus(MyTwitterListener.java:52)
>>      at twitter4j.StatusStreamImpl.onStatus(StatusStreamImpl.java:75)
>>      at twitter4j.StatusStreamBase$1.run(StatusStreamBase.java:114)
>>      at twitter4j.internal.async.ExecuteThread.run(DispatcherImpl.java:116)
>> Caused by: java.lang.RuntimeException: Error executing cypher statement(s) 
>> [{code=Neo.ClientError.Statement.ParameterMissing, message=Expected a 
>> parameter named 1}]
>>      at 
>> org.neo4j.jdbc.rest.StreamingParser.handleErrors(StreamingParser.java:229)
>>      at org.neo4j.jdbc.rest.StreamingParser.skipTo(StreamingParser.java:206)
>>      at 
>> org.neo4j.jdbc.rest.StreamingParser.nextResult(StreamingParser.java:95)
>>      at 
>> org.neo4j.jdbc.rest.StreamingParser$2.hasNext(StreamingParser.java:170)
>>      at 
>> org.neo4j.jdbc.rest.TransactionalQueryExecutor.executeQuery(TransactionalQueryExecutor.java:163)
>>      at org.neo4j.jdbc.Neo4jConnection.executeQuery(Neo4jConnection.java:250)
>>      ... 6 more
>> 
>> 
>> This is my method
>> 
>> public void doInsertNode(Map<String, Object> map) {
>>         Connection connection = null;
>>         IDataSource dataSource = 
>> DataSourceFactory.getInstance().getDataSource();
>>         try {
>>             connection = dataSource.getConnection();
>>             PreparedStatement preparedStatement = 
>> connection.prepareStatement("CREATE ({1})");
>>             preparedStatement.setObject(1, map);
>>             preparedStatement.executeQuery();
>>         } catch (DAOException ex) {
>>             Logger.getLogger(DAONodo.class.getName()).log(Level.SEVERE, 
>> null, ex);
>>         } catch (SQLException ex) {
>>             Logger.getLogger(DAONodo.class.getName()).log(Level.SEVERE, 
>> null, ex);
>>         }
>>     }
>> 
>> Thanks :)
>> 
>> Il giorno domenica 9 febbraio 2014 19:27:00 UTC+1, Michael Hunger ha scritto:
>> Jdbc only allows for numeric parameters (starting at 1).
>> 
>>> Map<String, Object> params = new HashMap<String, Object>();
>>> params.put( "name", "a Name" );
>>> Now i'm thinking to do this 
>>> connection = dataSource.getConnection();
>>> PreparedStatement preparedStatement = connection.prepareStatement("CREATE 
>>> ({1})");
>>> preparedStatement.setObject(1, params);
>>> preparedStatement.executeQuery();
>> 
>> Michael
>> 
>> Am 09.02.2014 um 17:24 schrieb Licio Mazzeo <[email protected]>:
>> 
>>> Hi all, i have a question. How can i create a node passing the json or a 
>>> map into prepared statement just like the rest api docs?
>>> 
>>> Map<String, Object> params = new HashMap<String, Object>();
>>> params.put( "props", props );
>>> String query = "CREATE ({props})";
>>> engine.execute( query, params );
>>> 
>>> Now i'm thinking to do this 
>>> connection = dataSource.getConnection();
>>> PreparedStatement preparedStatement = connection.prepareStatement("CREATE 
>>> (n{?}");
>>> preparedStatement.setObject(0, map);
>>> preparedStatement.executeQuery();
>>> 
>>> but its sure wrong..
>>> 
>>> Thank you!!
>>> 
>>> -- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "Neo4j" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to [email protected].
>>> For more options, visit https://groups.google.com/groups/opt_out.
>> 
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Neo4j" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> For more options, visit https://groups.google.com/groups/opt_out.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to