java.rmi.unmarshalexception

Post Reply
j_paglione
Posts: 31
Joined: 22 Feb 2018, 12:00

Hello,

I'm having this problem while running the protege server, I alredy set the correct CODEBASE_URL but i'm still having the problem in the screenshot.

Do you have any ideas?

Thanks!
You do not have the required permissions to view the files attached to this post.
j_paglione
Posts: 31
Joined: 22 Feb 2018, 12:00

Hello,

I post my protege server config for a better understanding of my problem.

Hoping for an answer.

TY!
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 posting the screenshots.
From the second screenshot, it looks like there is an error with the definition of the CODEBASE_URL parameter.

It seems that you have it set to:

Code: Select all

set CODEBASE_URL=file:/C:/program%%20files/protege_3.5/protege.jar
It _should_ read:

Code: Select all

set CODEBASE_URL=file:/C:/program%20files/protege_3.5/protege.jar
Also, if you haven’t already seen this post, have a look at the last post in this post describes how to set CODEBASE_URL for both Protege and the RMI Server.

Jonathan
Essential Project Team
j_paglione
Posts: 31
Joined: 22 Feb 2018, 12:00

Hello,

Thank you very much for the answer,
I tried to do as you have recommended but unfortunately nothing (hereafter my updated configuration)

I also read the posts, but the problem that others have is immediately after the loading of class instances while the my arrives a lot later, I also tried to set: rmiregistry -J-Djava.rmi.server.useCodebaseOnly = false (using io java1.8). The error occurs after loading all the projects, the error screens below, I do not understand the reason because if I change the path to protege.jar does not even begin to instantiate the objects

Thank you,

Julian
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 Julian,

Thanks for posting the additional error screenshots.

I've spotted a clue in there and I think it's all to do with the Project file that you are trying to convert to be backed by the database. That is, Protege server seems to be having trouble with the project "Pizza".

Keeping all the same settings that you have, try removing ALL the out-of-the-box Projects from your Protege meta project (metaproject.pprj) so that ONLY the Essential repository and Essential Annotations projects are defined. Then restart the Protege server and see whether that resolves the issue.

Also, can I ask whether you have already converted the Essential repository project to be stored in a database (rather than the default Protege files)?

Jonathan
Essential Project Team
j_paglione
Posts: 31
Joined: 22 Feb 2018, 12:00

Hello,

I tried to follow your advice, deleting all the projects in the metaproject.pprj, but the problem persists.
I do not have Already Converted to the Essential Repository Project (My additional problem) but while I was browsing the package explorer I realized that the class that derives the error ClassNotFound Exeption (EDU.STANDFORD.SMI.PROTEGE.SERVER) actually is not present in the package explorer (I attach the image)

I add a further problem that I found by converting the essential repository: The JDBC driver is not on the classpath despite having followed the setup guide configurations.

Thank you very much for your patience and for the answers, I hope that it can also help other users.

Julian
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

Thanks for the update, Julian.

Sounds like you have made progress, there.
Have you now got the Essential Open Source platform running?

Jonathan
Essential Project Team
j_paglione
Posts: 31
Joined: 22 Feb 2018, 12:00

Yes, the server works was a problem with the jre8, I solved by going to version 1.7 of java.
Now I'm trying to configure the protegedb but i'm having some problem; I put the drivers in the same folder as protect (i tried 1 by 1 all driver for mysql server version and i'm using MySQL Server 8.0) and using in the conversion screen for protege DB:
- Driver class name: com.microsoft.sqlserver.jdbc.SQLServerDriver
- URL: jdbc: sqlserver: // localhost; databaseName = essentialdb

It keep giving me the error: the JDBCs are not on the classpath.

Do you have any idea why?

thank you so much,

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

Hi Julian,

MySQL 8.0 is not currently supported. We can support MySQL 5.6 / 5.7 and out of the box, MySQL 5.5.

To support MySQL 5.6, we need to define some extra Java properties to the Protege environment. You can add these to your Protege start up script (run_protege.bat / run_protege.sh). There are two settings:

Code: Select all

-DDatabase.type.varchar.maxsize.com.mysql.jdbc.Driver=255
-DDatabase.typename.short.value.type.com.mysql.jdbc.Driver=VARCHAR\(255\)
Protege will work with MS SQLServer. Make sure to use the version 4 drivers and copy sqljdbc4.jar to <PROTEGE INSTALL DIRECTORY>/driver.jar

For the JDBC configuration, assuming a database called ‘essentialdb’ for the SQLServer database, with username ‘dbuser’, with password ‘password’ use the following:
  • Database driver name: com.microsoft.sqlserver.jdbc.SQLServerDriver
  • URL: jdbc:sqlserver://localhost;databaseName=essentialdb
  • username: dbuser
  • password: password
Each project (repository) that you create with be created as a table in this database. It’s worth checking that you don’t have any spaces in the URL.

I suspect that copying the JDBC driver into the root folder of Protege - as ‘driver.jar’, ‘driver1.jar’ etc. -will resolve the error messages that you are getting. As part of its startup process, these are added to the Protege class path.

Jonathan
Essential Project Team
Post Reply