neo4j-labs / neosemantics

Graph+Semantics: Import/Export RDF from Neo4j. SHACL Validation, Model mapping and more.... If you like it, please ★ ⇧
https://neo4j.com/labs/neosemantics/
Apache License 2.0
826 stars 143 forks source link

plugin does not install/work #17

Open mathib opened 7 years ago

mathib commented 7 years ago

Hi all, I am new to RDF and neo4j but interested in both techniques and possible data exchange. I'm working local with neo4j 3.1.1 community edition on Windows 10.

Today, I tried to install the plugin in different ways (the instructions are to brief for me). I used maven for building the project, but this only works if I force maven to skip testing; otherwise it says me that there is a 'built failure' because of one failed test: liteOntoImportSchemaOrg(semantics.LiteOntologyImporterTest): expected:<2> but was:<592>

When maven is done, I get two jars (neosemantics-1.0-SNAPSHOT.jar and original-neosemantics-1.0-SNAPSHOT.jar). Then I dropped both jars in the Program Files\Neo4j CE 3.1.1\plugins folder and modified the neo4j.conf file, by just copying 'dbms.unmanaged_extension_classes=semantics.extension=/rdf'. When I open neo4j and call dbms.procedures(), I don't see the documented procedures such as semantics.importRDF, etc.

Then I also noticed that neo4j creates a plugins folder for each neo4j database folder in Documents\Neo4j\databaseName. When I copy both jars here and try to open the neo4j database, I get the following alert: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@636e7c3a' was successfully initialized, but failed to start. Please see attached cause exception.. I can't open this neo4j database. This is the neo4j.log:

Error saving DB location
java.nio.file.AccessDeniedException: .dblocation
2017-02-14 18:11:26.594+0000 INFO  [o.n.s.CommunityNeoServer] No SSL certificate found, generating a self-signed certificate..
2017-02-14 18:11:27.040+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-02-14 18:11:28.202+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-02-14 18:11:31.307+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-02-14 18:11:31.409+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
feb 14, 2017 7:11:31 PM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
feb 14, 2017 7:11:31 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses
INFO: Root resource classes found:
  class semantics.extension.SemanticsSCOExpansionEndpoint
  class semantics.extension.RDFEndpoint
feb 14, 2017 7:11:31 PM com.sun.jersey.api.core.ScanningResourceConfig init
INFO: No provider classes found.
feb 14, 2017 7:11:31 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
feb 14, 2017 7:11:32 PM com.sun.jersey.spi.inject.Errors processErrorMessages
WARNING: The following warnings have been detected with resource and/or provider classes:
  WARNING: A HTTP GET method, public javax.ws.rs.core.Response semantics.extension.RDFEndpoint.exportOnto(org.neo4j.graphdb.GraphDatabaseService,java.lang.String), should not consume any entity.
  WARNING: A sub-resource method, public javax.ws.rs.core.Response semantics.extension.SemanticsSCOExpansionEndpoint.semanticypher(org.neo4j.graphdb.GraphDatabaseService,java.lang.String), with URI template, "/", is treated as a resource method
feb 14, 2017 7:11:32 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
feb 14, 2017 7:11:32 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
feb 14, 2017 7:11:32 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
2017-02-14 18:11:32.512+0000 INFO  [o.n.s.CommunityNeoServer] Remote interface available at http://localhost:7474/
2017-02-14 18:11:34.156+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-02-14 18:11:34.511+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.
2017-02-14 18:12:02.927+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-02-14 18:12:03.257+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.

Any pointers are appreciated.

mathib

lslkay commented 7 years ago

hi mathib I'm so sorry that i can't help you even a little.But i meet similar problems as you,such as the test failure.But i build jars succeed by reloading maven dependences. What's more embarrassed is that i find there is no neo4j.conf file in my \Neo4j CE 3.1.1\ .But after put two jars into \Neo4j CE 3.1.1\plugins and restart i get a procedure named apoc.schema..... And of course semantics\rdfs procedure did't work.Wish both of us can solve the problems.

mathib commented 7 years ago

@lslkay The neo4j.conf file is not located in \Neo4j CE 3.1.1\, but somewhere in AppData\Neo4j Community Edition. You can also access it when you open neo4j and select Options...

@jbarrasa Is it possible to help the both of us out? I assume we just need a little help, as we're both novices

jbarrasa commented 7 years ago

Hi guys, sorry I've not had much time to help recently. I pushed a couple of changes a couple of weeks ago that should have fixed the problems you mention. There was a problem with one unit test and a neo4j jar that was being packaged by mistake and causing neo4j not to start when neosemantics was in the plugins dir. If you update your repos and rebuild this should be solved. Give it a try and let me know if it solves the issue. Then regarding the folder structure in windows, and where your config file lives or where your extensions and plugins are to be found, that is something you can configure in the options window. I guess you can decide to have specific plugins per db or a shared plugins dir for all databases. See screen capture below

image

Hope this helps

JB.

mathib commented 7 years ago

Thanks for the info! With your updates I don't get the errors on the tests while building the jar with maven. I'm still struggling however to get it going.

Is it normal that I get two jars (neosemantics-1.0-SNAPSHOT.jar AND original-neosemantics-1.0-SNAPSHOT.jar)? Do I need to place both in the plugins folder? In which plugins folder (per db or shared) do you place the jar(s)?

When I place both jars in the plugins folder of a single neo4j db, I get the same kind of error as in my first post.

When I place both jars in the plugin folder of neo4j (under Program Files\Neo4j CE 3.1.1\plugins), I now get an alert when I start the neo4j server: Starting Neo4j failed: Multiple exceptions. The log file gives me:

Error saving DB location
java.nio.file.AccessDeniedException: .dblocation
2017-03-02 20:36:59.051+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-03-02 20:37:00.224+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-03-02 20:37:02.800+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-03-02 20:37:02.895+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
mrt 02, 2017 9:37:02 PM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
mrt 02, 2017 9:37:03 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
mrt 02, 2017 9:37:03 PM com.sun.jersey.server.impl.application.RootResourceUriRules <init>
SEVERE: The ResourceConfig instance does not contain any root resource classes.
2017-03-02 20:37:03.142+0000 ERROR [o.n.s.CommunityNeoServer] Failed to start Neo4j on localhost:7474: org.neo4j.server.web.NeoServletContainer-453393eb@b664522c==org.neo4j.server.web.NeoServletContainer,-1,false
2017-03-02 20:37:03.142+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-03-02 20:37:03.427+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.
2017-03-02 20:45:20.292+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-03-02 20:45:20.651+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-03-02 20:45:20.979+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-03-02 20:45:20.979+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
mrt 02, 2017 9:45:20 PM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
mrt 02, 2017 9:45:20 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
mrt 02, 2017 9:45:21 PM com.sun.jersey.server.impl.application.RootResourceUriRules <init>
SEVERE: The ResourceConfig instance does not contain any root resource classes.
2017-03-02 20:45:21.026+0000 ERROR [o.n.s.CommunityNeoServer] Failed to start Neo4j on localhost:7474: Multiple exceptions
2017-03-02 20:45:21.026+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-03-02 20:45:21.292+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.
2017-03-02 20:45:26.841+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-03-02 20:45:27.200+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-03-02 20:45:27.528+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-03-02 20:45:27.528+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
mrt 02, 2017 9:45:27 PM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
mrt 02, 2017 9:45:27 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
mrt 02, 2017 9:45:27 PM com.sun.jersey.server.impl.application.RootResourceUriRules <init>
SEVERE: The ResourceConfig instance does not contain any root resource classes.
2017-03-02 20:45:27.575+0000 ERROR [o.n.s.CommunityNeoServer] Failed to start Neo4j on localhost:7474: Multiple exceptions
2017-03-02 20:45:27.575+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-03-02 20:45:27.919+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.
Error saving DB location
java.nio.file.AccessDeniedException: .dblocation
2017-03-02 20:45:48.010+0000 INFO  [o.n.s.CommunityNeoServer] No SSL certificate found, generating a self-signed certificate..
2017-03-02 20:45:48.259+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-03-02 20:45:48.478+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-03-02 20:45:49.353+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-03-02 20:45:49.353+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
mrt 02, 2017 9:45:49 PM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
mrt 02, 2017 9:45:49 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
mrt 02, 2017 9:45:49 PM com.sun.jersey.server.impl.application.RootResourceUriRules <init>
SEVERE: The ResourceConfig instance does not contain any root resource classes.
2017-03-02 20:45:49.384+0000 ERROR [o.n.s.CommunityNeoServer] Failed to start Neo4j on localhost:7474: Multiple exceptions
2017-03-02 20:45:49.384+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-03-02 20:45:49.698+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.

Best regards,

mathib

mfkilgore commented 7 years ago

@mathib You should only be using one of the jar files neosemantics-1.0-SNAPSHOT.jar and it must be found in the plugins directory. With the latest jar you have this configuration should work.

mathib commented 7 years ago

@mfkilgore Okay, I took only the last one (original-neosemantics-1.0-SNAPSHOT.jar) and placed it in the shared plugins directory (C:\Program Files\Neo4j CE 3.1.1\plugins). When I try to start a neo4j db, I can't open it and I get an alert saying: Starting Neo4j failed: org/openrdf/model/ValueFactory

The neo4j.log gives me the following:

Error saving DB location
java.nio.file.AccessDeniedException: .dblocation
2017-03-03 09:25:31.115+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Starting...
2017-03-03 09:25:31.990+0000 INFO  [o.n.b.v.r.WorkerFactory] Bolt enabled on localhost:7687.
2017-03-03 09:25:34.334+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Started.
2017-03-03 09:25:34.428+0000 INFO  [o.n.s.m.ThirdPartyJAXRSModule] Mounted unmanaged extension [semantics.extension] at [/rdf]
mrt 03, 2017 10:25:34 AM com.sun.jersey.api.core.PackagesResourceConfig init
INFO: Scanning for root resource and provider classes in the packages:
  semantics.extension
mrt 03, 2017 10:25:34 AM com.sun.jersey.api.core.ScanningResourceConfig logClasses
INFO: Root resource classes found:
  class semantics.extension.RDFEndpoint
  class semantics.extension.SemanticsSCOExpansionEndpoint
mrt 03, 2017 10:25:34 AM com.sun.jersey.api.core.ScanningResourceConfig init
INFO: No provider classes found.
mrt 03, 2017 10:25:34 AM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
INFO: Initiating Jersey application, version 'Jersey: 1.19 02/11/2015 03:25 AM'
2017-03-03 09:25:34.678+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopping...
2017-03-03 09:25:34.959+0000 INFO  [o.n.s.d.LifecycleManagingDatabase] Stopped.

I already tried almost all combinations. Maybe it will help if you note very precisely how you managed to get the plugin running?

jbarrasa commented 7 years ago

Ok, it's the other one (the one called neosemantics-1.0-SNAPSHOT.jar) that you need to copy in the plugins dir. Also if you have apoc in there, you need to remove it because the neosemantics jar includes it. Sorry about the incomplete doc. I thought it was in the installation instructions but I've noticed it was on a response to an issue. I'll update shortly.

Let me know if this finally makes it work :) and thanks for your patience.

JB.

mathib commented 7 years ago

Patience is my middle name :) No I am excited to test your plugin after I have read your blog about it. It looks promising.

Back to business: when I only take the neosemantics-1.0-SNAPSHOT.jar and copy it in the shared plugins directory (C:\Program Files\Neo4j CE 3.1.1\plugins). I get no alert and I'm able to open the neo4j database (this should work for both new and existing neo4j db's, right?). When I enter call dbms.procedures(), I only see the procedures that were already there by default (I think; see screenshot). When I enter :GET /rdf/ping (no idea what this does), I get the following:

image

I don't have any apoc in my plugins directory. Actually, I don't have any plugins at the moment, except neosemantics.

jbarrasa commented 7 years ago

Well, that's looking good. The ping message indicates that the extension has been correctly mounted. Also in the list of procedures I can see an apoc one, which I asume is coming from the neosemantics jar. However it does not seem to be listing them all? Have you tried to run one of the examples? What happens if you run this? call semantics.previewRDF("https://raw.githubusercontent.com/motools/musicontology/master/examples/clapton_perf/clapton.n3","Turtle", true, true)

Does it parse the RDF and shows it in Neo4j or does it trhow an error?

mathib commented 7 years ago

If I run the call, I get the following error:

There is no procedure with the name semantics.previewRDF registered for this database instance. Please ensure you've spelled the procedure name correctly and that the procedure is properly deployed.

My above screenshot, lists all procedures atm.

jbarrasa commented 7 years ago

That's odd, I cannot reproduce this behavior. I'm tempted to send you a prebuilt jar to see if it works for you. I wonder if there's something wrong with your build. Could you send me your jar for me to try it? You can send it to my github user at outlook dot com

mfkilgore commented 7 years ago

@mathib I have been experimenting with Windows CE 3.1.1 and observed the following:

Could you try the zip version of Neo4j and see if that corrects the problem for you.

@jbarrasa it looks like a possible issue with unmanaged extensions, and CE. The original error when running is - Starting Neo4j failed: org.neo4j.server.web.NeoServletContainer-58f7be85@144b0fc8==org.neo4j.server.web.NeoServletContainer,-1,false

mathib commented 7 years ago

@mfkilgore I tried to add the jar without the changes to the config file, but I see the same limited list as in my screenshot.

I then looked for the zip version, copied the jar and changed the config file and it runs! Thanks for the tip, I'll stick with the console version from now on!

@jbarrasa I sended you the .jar file in mail, but I think you can neglect it. The problem should be with the standard CE edition and plugins...

Thanks for helping me out! Ready to start exploring :)

lslkay commented 7 years ago

@jbarrasa @mathib @mfkilgore thanks a lot! With you help i solve all the problems now! I'm really happy ! again thanks a lot!

mathib commented 7 years ago

@jbarrasa @mfkilgore Any ideas how I can get this plugin working on a Linux server version of neo4j (CE 3.1.2 tar)? I placed the same .jar file on the server version of neo4j, but I get no response of neo4j anymore. Neo4j gives no indication of any errors.

Maybe it has something to do with dependencies?

mfkilgore commented 7 years ago

@mathib, I believe the problem may be related to an issue with 3.1.2 and apoc described here https://github.com/neo4j-contrib/neo4j-apoc-procedures/issues/308 I have rebuilt using the later version of apoc and it is running for me on Mac OS, I do not have linux.

ags13e commented 7 years ago

@mfkilgore @jbarrasa has there been any resolve to the issue with unmanaged extensions, and CE (3.1.3)? Specifically for Windows 10, if that at all makes a difference.

sayednafiz commented 7 years ago

Dear all,

Now, I am using the zip version of the neo4j CE 3.1.3 on Windows 10. I have built using maven and copied the neosemantics-[…].jar file to the plugin directory (C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.3-windows\neo4j-community-3.1.3\plugins). I have added the line as in the instructions to neo4j.conf file. However, after I try to close and kill the neo4j-ce.exe and run again, I receive errors:

C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.3-windows\neo4j-community-3.1.3>bin\neo4j console 2017-05-02 16:27:29.889+0000 INFO ======== Neo4j 3.1.3 ======== 2017-05-02 16:27:30.075+0000 INFO Starting... 2017-05-02 16:27:30.563+0000 INFO Bolt enabled on localhost:7687. 2017-05-02 16:27:32.994+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@18d469b' was successfully initialized, but failed to start. Please see attached cause exception. Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@18d469b' was successfully initialized, but failed to start. Please see attached cause exception. org.neo4j.server.ServerStartupException: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@18d469b' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.server.exception.ServerStartupErrors.translateToServerStartupError(ServerStartupErrors.java:68) at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:230) at org.neo4j.server.ServerBootstrapper.start(ServerBootstrapper.java:91) at org.neo4j.server.ServerBootstrapper.start(ServerBootstrapper.java:68) at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:28) Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.server.database.LifecycleManagingDatabase@18d469b' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:443) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:202) ... 3 more Caused by: java.lang.RuntimeException: Error starting org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory, C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.3-windows\neo4j-community-3.1.3\data\databases\graph.db at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:199) at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.newFacade(GraphDatabaseFacadeFactory.java:130) at org.neo4j.server.CommunityNeoServer.lambda$static$0(CommunityNeoServer.java:57) at org.neo4j.server.database.LifecycleManagingDatabase.start(LifecycleManagingDatabase.java:89) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) ... 5 more Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'apoc.ApocKernelExtensionFactory$1@1f2ef95' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:443) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.kernel.extension.KernelExtensions.start(KernelExtensions.java:86) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:195) ... 9 more Caused by: java.lang.NoClassDefFoundError: org/neo4j/kernel/api/proc/Mode at apoc.schema.AssertSchemaProcedure.signature(AssertSchemaProcedure.java:152) at org.neo4j.kernel.impl.proc.ProcedureRegistry.register(ProcedureRegistry.java:53) at org.neo4j.kernel.impl.proc.Procedures.register(Procedures.java:103) at org.neo4j.kernel.impl.proc.Procedures.register(Procedures.java:76) at apoc.ApocKernelExtensionFactory$1.start(ApocKernelExtensionFactory.java:49) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) ... 14 more Caused by: java.lang.ClassNotFoundException: org.neo4j.kernel.api.proc.Mode at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 20 more

Can you please guide me to solve this issue ? I am actually trying to experiment on a recommendation framework (from unstructured text). I am interest to experiment on it.

Thanks,

mfkilgore commented 7 years ago

@sayednafiz As noted in previous messages, and I believe it is still true for 3.1.3, the Windows CE version does not support all of the plugins. Specifically those exposing a restful interface. To get around this please download the zip version expand and use it instead of the CE version.

sayednafiz commented 7 years ago

@mfkilgore : I have actually noted that I need to use the zip version but I am confused now which zip version is being discussed here. Both community and enterprise editions have zip versions. Today, I have downloaded the zip version of 3.1.4 (Community edition) on Windows 10. I have attached the screenshot. neo4j_install

Also including the errors: C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.4-windows\neo4j-community-3.1.4>bin\neo4j console 2017-05-04 03:01:22.819+0000 INFO ======== Neo4j 3.1.4 ======== 2017-05-04 03:01:22.868+0000 INFO No SSL certificate found, generating a self-signed certificate.. 2017-05-04 03:01:24.151+0000 INFO Starting... 2017-05-04 03:01:24.935+0000 INFO Bolt enabled on localhost:7687. 2017-05-04 03:01:28.710+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e889ef' was successfully initialized, but failed to start. Please see attached cause exception. Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e889ef' was successfully initialized, but failed to start. Please see attached cause exception. org.neo4j.server.ServerStartupException: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e889ef' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.server.exception.ServerStartupErrors.translateToServerStartupError(ServerStartupErrors.java:68) at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:230) at org.neo4j.server.ServerBootstrapper.start(ServerBootstrapper.java:91) at org.neo4j.server.ServerBootstrapper.start(ServerBootstrapper.java:68) at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:28) Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e889ef' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:443) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:202) ... 3 more Caused by: java.lang.RuntimeException: Error starting org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory, C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.4-windows\neo4j-community-3.1.4\data\databases\graph.db at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:199) at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.newFacade(GraphDatabaseFacadeFactory.java:130) at org.neo4j.server.CommunityNeoServer.lambda$static$0(CommunityNeoServer.java:57) at org.neo4j.server.database.LifecycleManagingDatabase.start(LifecycleManagingDatabase.java:89) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) ... 5 more Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'apoc.ApocKernelExtensionFactory$1@106e9ff' was successfully initialized, but failed to start. Please see attached cause exception. at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:443) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.kernel.extension.KernelExtensions.start(KernelExtensions.java:86) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:107) at org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:195) ... 9 more Caused by: java.lang.NoClassDefFoundError: org/neo4j/kernel/api/proc/Mode at apoc.schema.AssertSchemaProcedure.signature(AssertSchemaProcedure.java:152) at org.neo4j.kernel.impl.proc.ProcedureRegistry.register(ProcedureRegistry.java:53) at org.neo4j.kernel.impl.proc.Procedures.register(Procedures.java:103) at org.neo4j.kernel.impl.proc.Procedures.register(Procedures.java:76) at apoc.ApocKernelExtensionFactory$1.start(ApocKernelExtensionFactory.java:49) at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:433) ... 14 more Caused by: java.lang.ClassNotFoundException: org.neo4j.kernel.api.proc.Mode at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 20 more

I appreciate that you are bearing with me but please let me know, if you can provide me a pointer to the right version. I have tried with the zip version of the enterprise edition too (3.1.4) but the problem remains.

Thanks.

mfkilgore commented 7 years ago

The problem looks like, as you have pointed out a version problem. This plugin includes apoc with it (note - when using this plugin do not include apoc). In order to run on 3.1.3 you will need to rebuild this plugin including the 3.1.3 version apoc. Currently a previous version of apoc is included which does not run on 3.1.3.

This will hopefully clear up the problems, please let me know.

sayednafiz commented 7 years ago

@mfkilgore I have made changes in the following way in the pom.xml file

**

org.neo4j.procedure
        <artifactId>apoc</artifactId>
        <version>**3.1.2.5**</version>
    </dependency>**

I have tried with 3.1.3 for apoc but it does not work. I have tried with the apoc version 3.1.3.6 which is for neo4j 3.1.3 according to the apoc release. I am posting the screenshot: neosemantics_2

I have build failure. The messages are:

E:\Test_neo4j\neosemantics-master>mvn clean package [INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building the effective model for org.neo4j:neosemantics:jar:1.0-SNAPSHOT [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-shade-plugin is missing. @ line 110, column 12 [WARNING] [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build. [WARNING] [WARNING] For this reason, future Maven versions might no longer support building such malformed projects. [WARNING] [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building neosemantics 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ Downloading: https://repo.maven.apache.org/maven2/org/neo4j/procedure/apoc/3.1.3.6/apoc-3.1.3.6.pom [WARNING] The POM for org.neo4j.procedure:apoc:jar:3.1.3.6 is missing, no dependency information available Downloading: https://repo.maven.apache.org/maven2/org/neo4j/procedure/apoc/3.1.3.6/apoc-3.1.3.6.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 6.210 s [INFO] Finished at: 2017-05-11T20:10:31+08:00 [INFO] Final Memory: 12M/29M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal on project neosemantics: Could not resolve dependencies for project org.neo4j:neosemantics:jar:1.0-SNAPSHOT: Could not find artifact org.neo4j.procedure:apoc:jar:3.1.3.6 in central (https://repo.maven.apache.org/maven2) -> [Help 1]

So, I found from some other thread from the same forum that someone is using 3.1.2.5 version apoc. Now I have the following warnings:

C:\Users\Nafiz\Downloads\software\neo4j-community-3.1.3-windows\neo4j-community-3.1.3>bin\neo4j console 2017-05-11 05:01:29.810+0000 INFO ======== Neo4j 3.1.3 ======== 2017-05-11 05:01:30.025+0000 INFO Starting... 2017-05-11 05:01:30.511+0000 INFO Bolt enabled on localhost:7687. 2017-05-11 05:01:35.517+0000 INFO Started. 2017-05-11 05:01:35.593+0000 INFO Mounted unmanaged extension [semantics.extension] at [/rdf] 2017-05-11 05:01:36.206+0000 WARN The following warnings have been detected with resource and/or provider classes: WARNING: A HTTP GET method, public javax.ws.rs.core.Response semantics.extension.RDFEndpoint.exportOnto(org.neo4j.graphdb.GraphDatabaseService,java.lang.String), should not consume any entity. WARNING: A sub-resource method, public javax.ws.rs.core.Response semantics.extension.SemanticsSCOExpansionEndpoint.semanticypher(org.neo4j.graphdb.GraphDatabaseService,java.lang.String), with URI template, "/", is treated as a resource method 2017-05-11 05:01:36.565+0000 INFO Remote interface available at http://localhost:7474/ SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

I am trying to load locally stored OWL files but unable to do so. I am posting screenshots. neosemantics

However, while fetching from github, I can see it loaded. neosemantics_1

Please guide me if you can. Thanks.

mfkilgore commented 7 years ago

Sorry for the late reply. You are correct the latest maven version of apoc is the one you have included. As I often need the very latest apoc, I build it locally and add it to my repository. The version you have now should work fine, and the warning messages are not relevant.

I have done the same as you, copied the .owl file locally and run locally. On my MAC the following command works - CALL semantics.liteOntoImport('file:///Users/mfkilgore/Dropbox/InfoClear/RDF/moviesontology.owl','RDF/XML')

I do not have a Windows machine available to check but the file: form might need 3 /// for you as mine does to find the file.

dennisverspuij commented 7 years ago

Hello, thanks for your plugin, I however cannot get it to work. What I did:

What do I need to do to make it work?

dennisverspuij commented 7 years ago

Followup, I managed to make it work by not adding the dbms.unmanaged_extension_classes statement to the configuration. That way I do have the stored procedures available, but not the extensions. If I had put the jar in the Program Files plugins directory and do enable the statement in the configuration file I have the extension available but not the stored procedures. Weird?! Anyway, I just need the procedures so I am happy, thanks!

res-03wade commented 5 years ago

@mathib Have you solved the problem? Could you give some advices?Thanks!

mathib commented 5 years ago

See my earlier comment here: https://github.com/jbarrasa/neosemantics/issues/17#issuecomment-284061574

My issue was related with the wrong version of neo4j (needed zip install). If you have other problems then mentioned here, you should start a new issue