0

I have neo4j installed on mac with localhost:7474 .How can I add new person name and id via asynctask from android ? Please help me.I am trying from 2 weeks and still no-result.

I had added some code which I tried but I guess embedded db does not work in android: How can I access neo4j running on ( any http or localhost) from android

Also tried:

RestAPI graphDb = new RestAPIFacade("http://localhost:7474/db/data");

QueryEngine engine=new RestCypherQueryEngine(graphDb);
QueryResult<Map<String,Object>> result = engine.query("create (:Person {name:\"Steve\"}) return n", Collections.EMPTY_MAP);
Iterator<Map<String, Object>> iterator=result.iterator();

if(iterator.hasNext()) {
    Map<String,Object> row= iterator.next();

    int duration = Toast.LENGTH_LONG;
    Toast toast = Toast.makeText(getApplicationContext(),"" + row.get("total") , duration);
    toast.setGravity(Gravity.CENTER, 0, 0);
    toast.show();
}

Its still crashing.

Error: java.lang.NoClassDefFoundError: Failed resolution of: Lorg/neo4j/rest/graphdb/RestAPIFacade;

Also: Caused by: java.lang.ClassNotFoundException: Didn't find class "org.neo4j.rest.graphdb.RestAPIFacade" on path: DexPathList[[zip file "/data/app/com.example.1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

/////////

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    new JSONAsyncTask().execute();

}


class JSONAsyncTask extends AsyncTask<Void, Void, JSONArray> {


    @Override
    protected void onPreExecute() {
        super.onPreExecute();

    }

    @Override
    protected JSONArray doInBackground(Void... urls) {

        try {

            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://localhost:7474/db/data");

            //              // Add your data
            //              List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
            //              nameValuePairs.add(new BasicNameValuePair("node","1"));
            //              httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);

            BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            sb.append(reader.readLine() + "\n");
            String line = "0";
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            reader.close();
            String result = sb.toString();

            Log.d("log",result);
            // parsing data
            return new JSONArray(result);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    @Override
    protected void onPostExecute(JSONArray result) {

    }
}

////////////

{"extensions":{},"outgoing_relationships":"http://ip_add:7474/db/data/node/6/relationships/out","labels":"http://ip_add:7474/db/data/node/6/labels","traverse":"http://ip_add:7474/db/data/node/6/traverse/{returnType}","all_typed_relationships":"http://ip_add:7474/db/data/node/6/relationships/all/{-list|&|types}","self":"http://ip_add:7474/db/data/node/6","property":"http://ip_add:7474/db/data/node/6/properties/{key}","properties":"http://ip_add:7474/db/data/node/6/properties","outgoing_typed_relationships":"http://ip_add:7474/db/data/node/6/relationships/out/{-list|&|types}","incoming_relationships":"http://ip_add:7474/db/data/node/6/relationships/in","create_relationship":"http://ip_add:7474/db/data/node/6/relationships","paged_traverse":"http://ip_add:7474/db/data/node/6/paged/traverse/{returnType}{?pageSize,leaseTime}","all_relationships":"http://ip_add:7474/db/data/node/6/relationships/all","incoming_typed_relationships":"http://ip_add:7474/db/data/node/6/relationships/in/{-list|&|types}","metadata":{"id":6,"labels":[]},"data":{}}
Community
  • 1
  • 1
jason
  • 3,932
  • 11
  • 52
  • 123

1 Answers1

2

You will need to add the necessary JAR files to your android project.

[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ neo4j-rest-graphdb ---
[INFO] org.neo4j:neo4j-rest-graphdb:jar:1.9.3-SNAPSHOT
[INFO] +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.7:compile
[INFO] |  \- org.codehaus.jackson:jackson-core-asl:jar:1.9.7:compile
[INFO] +- org.neo4j:neo4j-kernel:jar:1.9.2:compile
[INFO] |  \- org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile
[INFO] +- org.neo4j:neo4j-lucene-index:jar:1.9.2:compile
[INFO] |  \- org.apache.lucene:lucene-core:jar:3.6.2:compile
[INFO] |  +- com.sun.jersey:jersey-core:jar:1.4:compile
[INFO] |  \- asm:asm:jar:3.1:compile
[INFO] \- com.sun.jersey:jersey-client:jar:1.4:compile

But perhaps start with a simple http request first and then try more.

Michael Hunger
  • 41,339
  • 3
  • 57
  • 80
  • Thanks for responding Sir.SO how do I start ? Simple synctask ? Editted Q with the sample asynctask .PLease let me know if that's right and also do I need to import anything? – jason Feb 21 '15 at 11:39
  • Also is this http right :http://localhost:7474/db/data or do I need to add something? – jason Feb 21 '15 at 11:41
  • Updated the code above but I am not receiving any value with the code above.WHat am I doing wrong ?? – jason Feb 21 '15 at 12:06
  • I got 'org.apache.http.conn.HttpHostConnectException: Connection to http://localhost:7474 refused' SO I changed the localhost to my ip then I got null value for db/data and db/data/node/ I recieved: – jason Feb 21 '15 at 12:55
  • Please respond Michael ,this is the closest I have got in weeks.I really appreciate your time and effort.Thanks – jason Feb 21 '15 at 13:01
  • Hi Michael .Please help me resolve this .http://stackoverflow.com/questions/28714278/merge-in-neo4j-post-params-array-error .Thanks.I really appreciate the help. – jason Feb 25 '15 at 08:35
  • How can I loop in neo4j? SHould I call the merge query 100 times if it has to loop though series of numbers? – jason Feb 25 '15 at 19:54