Can't start multiuser Protege after reinstall/upgrade

Post Reply
bvasu
Posts: 7
Joined: 12 Feb 2020, 23:41

I have just completed installing the OS Essential Project on Windows Server 2016. It was working properly on another instance. This time I installed using all of the latest Essential Project downloads. I was successful up to and including the export of the ontology to a MySQL database from single user Protege 3.5. However, when I tried to start Protege 3.5 in the server mode I received the following error:

2020.05.09 07:26:30.861 PDT SEVERE: java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
java.lang.ClassNotFoundException: edu.stanford.smi.protege.server.Server_Stub
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:389)
at sun.rmi.transport.Transport$1.run(Transport.java:200)
at sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:196)

I have diligently searched Google for a fix. It seems to relate to rmi. However, none of the suggestions that I have found seem to resolve the issue. I have attached pdfs of both the complete log and the server bat file. Any assistance would be much appreciated.

Thanks, Bill
You do not have the required permissions to view the files attached to this post.
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hi,

Thanks for including the PDF of your run_protege_server.bat file - that shows what the issue is.

This post describes the issue and the resolution.

In summary, from Java 7, a change to how Java RMI makes connections means that we need to provide a copy of the JAR file via HTTP instead of by File - at least that's the work-around for Protege.

So, copy "protege.jar" from <YOUR APPLICATIONS>\Protege 3.5\protege.jar to the root of your Essential Viewer deployed WAR (the unpacked folder, not the single WAR file). Then you can update your run_protege_server.bat to change the value of the CODEBASE_URL variable to be (e.g.):

Code: Select all

set CODEBASE_URL=httpL//localhost:8080/essential_viewer/protege.jar
Make sure that Tomcat is running before you attempt to start Protege Server

Jonathan
Essential Project Team
bvasu
Posts: 7
Joined: 12 Feb 2020, 23:41

Thanks Jonathan,

That seemed to work for a while. The server window now indicates:

Protege server ready to accept connections...

However, after a few weeks, the server is starting fine but in the rmiregistry.exe window I now get:

Could not set up class specific logging
Exception configuring logger
Could not set logger level
Warning: IO exception getting logger. access denied ("java.util.PropertyPermission" "protege.properties.in.user.home" "read")

and I am unable to connect remotely.

I have spent hours trying to fix this to no avail. Any ideas?

Thanks!

Bill
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hi Bill,

Let's follow this one up in your post, here
Essential Project Team
Post Reply