I have deployed a ReactJS application with neo4j database on CentOS 7
server. Neo4j version is 4.4.2. The application also uses apoc library. So i added apoc-4.4.0.1-all.jar
file to the /var/lib/neo4j/plugins
directory on the server. Then i did following-
-
chown neo4j:neo4j apoc-4.4.0.1-all.jar
-
chmod 755 apoc-4.4.0.1-all.jar
-
Modify
/etc/neo4j/neo4j.conf
file to-
dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*,apoc.*
-
dbms.security.procedures.unrestricted=apoc.*
-
uncomment
dbms.directories.plugins=/var/lib/neo4j/plugins
-
-
systemctl restart neo4j
After deploying the project, when i open the application on the browser and insert some values in a form, it shows following error-
Unknown function 'apoc.map.submap' (line 3, column 14 (offset: 56)) " WHERE apoc.map.submap(properties(n), keys(obj), [], false) = obj" ^
Did i miss anything in apoc configuration ?
2
Answers
The ownership of
/var/lib/neo4j/data
folder has to beneo4j
, notroot
Try changing the plugin directory from: /var/lib/neo4j/plugins to /var/lib/neo4j/graph.db/plugins directory then restart the neo4j server. You need to create the folder if not found.
If you install neo4j using an installer rather than download/untar/unzip a zipped/tar file; then neo4j server is looking at the apoc under default.graphdb folder
related: APOC is only partially installing its extension in neo4j (one procedure)