Protege Server Startup Issues

Post Reply
esims77
Posts: 3
Joined: 19 Sep 2016, 22:38

Java v1.8.0_10
Protege v3.5
Tomcat v8.5.5
SQL Server 2012
Essential Meta Model v5.0.5

Having Protege Server Startup issues.

I have been able to start the Protege server, but after having issues with the essential metaproject I uninstalled essential server and reinstalled.

I verified that the Protege server would start up before converting the essential metaproject to database format.

Converted to database format successfully.

shutdown all services

restarted services...
attempted to restart Protege Server - getting class not found error for sqlserver jdbc driver.
*** NOTE ***
the server will started up without a problem until I added the baseline files to the metaproject.
*** END NOTE ***

*** cmd window after executing run_protege_server.bat ***

.5/protege.jar

C:\Program Files\Protege_3.5>start /Djre\bin /min rmiregistry.exe

C:\Program Files\Protege_3.5>set CLASSPATH=protege.jar;looks.jar;unicode_panel.j
ar;driver.jar;driver0.jar;driver1.jar

C:\Program Files\Protege_3.5>set MAINCLASS=edu.stanford.smi.protege.server.Serve
r

C:\Program Files\Protege_3.5>set METAPROJECT=examples\server\metaproject.pprj

C:\Program Files\Protege_3.5>rem -- old -- set METAPROJECT=EssentialAM\Repositor
y\myRepository.pprj

C:\Program Files\Protege_3.5>set MAX_MEMORY=-Xmx500M

C:\Program Files\Protege_3.5>set HEADLESS=-Djava.awt.headless=true

C:\Program Files\Protege_3.5>set CODEBASE=-Djava.rmi.server.codebase=file:/c:/pr
ogram%20files/protege_3.5/protege.jar

C:\Program Files\Protege_3.5>set LOG4J_OPT=-Dlog4j.configuration=file:log4j.xml


C:\Program Files\Protege_3.5>rem --- Optional arguments; uncomment if necessary
---

C:\Program Files\Protege_3.5>rem set HOSTNAME=-Djava.rmi.server.hostname=localho
st

C:\Program Files\Protege_3.5>rem set "PORTOPTS=-Dprotege.rmi.server.port=5200 -D
protege.rmi.registry.port=5100"

C:\Program Files\Protege_3.5>rem TX=-Dtransaction.level=READ_COMMITTED

C:\Program Files\Protege_3.5>rem "DEBUG_OPT=-Xdebug -Xrunjdwp:transport=dt_socke
t,address=8000,server=y,suspend=n"

C:\Program Files\Protege_3.5>set OPTIONS=-Xmx500M -Djava.rmi.server.codebase=fi
le:/c:/program%20files/protege_3.5/protege.jar -Djava.awt.headless=true -Dlog4j.
configuration=file:log4j.xml

C:\Program Files\Protege_3.5>rem ------------------- Cmd Options ---------------
----

C:\Program Files\Protege_3.5>rem If you want automatic saving of the project,

C:\Program Files\Protege_3.5>rem setup the number of seconds in SAVE_INTERVAL_VA
LUE

C:\Program Files\Protege_3.5>rem set SAVE_INTERVAL=-saveIntervalSec=120

C:\Program Files\Protege_3.5>rem ------------------- Cmd Options ---------------
----

C:\Program Files\Protege_3.5>jre\bin\java -Xmx500M -Djava.rmi.server.codebase=f
ile:/c:/program%20files/protege_3.5/protege.jar -Djava.awt.headless=true -Dlog4j
.configuration=file:log4j.xml -cp protege.jar;looks.jar;unicode_panel.jar;dr
iver.jar;driver0.jar;driver1.jar edu.stanford.smi.protege.server.Server example
s\server\metaproject.pprj
Can't load log handler "edu.stanford.smi.protege.util.FileHandler"
java.io.IOException: Couldn't get lock for C:\Program Files\Protege_3.5\logs\pro
tege_48.log
java.io.IOException: Couldn't get lock for C:\Program Files\Protege_3.5\logs\pro
tege_48.log
at java.util.logging.FileHandler.openFiles(Unknown Source)
at java.util.logging.FileHandler.<init>(Unknown Source)
at edu.stanford.smi.protege.util.FileHandler.<init>(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou
rce)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at java.util.logging.LogManager$7.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.util.logging.LogManager.initializeGlobalHandlers(Unknown Source)

at java.util.logging.LogManager.access$900(Unknown Source)
at java.util.logging.LogManager$RootLogger.getHandlers(Unknown Source)
at java.util.logging.Logger.log(Unknown Source)
at java.util.logging.Logger.doLog(Unknown Source)
at java.util.logging.Logger.log(Unknown Source)
at java.util.logging.Logger.info(Unknown Source)
at edu.stanford.smi.protege.server.Server.startServer(Unknown Source)
at edu.stanford.smi.protege.server.Server.main(Unknown Source)
Protege server is starting...
Protege 3.5 Build 663, JVM 1.6.0_01-b06, memory=466M, Windows Vista, encoding=UT
F-8, language=en, country=US
Server port = 0, registry port = 1099, compressed stream
Using metaproject from: file:/C:/Program%20Files/Protege_3.5/examples/server/met
aproject.pprj
WARNING: com/microsoft/sqlserver/jdbc/SQLServerDriver : Unsupported major.minor
version 52.0 -- java.lang.UnsupportedClassVersionError: com/microsoft/sqlserver/
jdbc/SQLServerDriver : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at edu.stanford.smi.protege.plugin.PluginUtilities.forName(Unknown Sourc
e)
at edu.stanford.smi.protege.plugin.PluginUtilities.forName(Unknown Sourc
e)
at edu.stanford.smi.protege.util.SystemUtilities.forName(Unknown Source)

at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.<init>(
Unknown Source)
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.getConn
ectionPool(Unknown Source)
at edu.stanford.smi.protege.storage.database.RobustConnection.<init>(Unk
nown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.cre
ateConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.ini
tialize(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.initializeKB(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.loadKnowledgeBase(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.loadKnowledgeBase(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadDomainKB(Unknown Source)
at edu.stanford.smi.protege.model.Project.createDomainKnowledgeBase(Unkn
own Source)
at edu.stanford.smi.protege.model.Project.<init>(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadProjectFromURI(Unknown Sou
rce)
at edu.stanford.smi.protege.server.metaproject.impl.MetaProjectImpl.<ini
t>(Unknown Source)
at edu.stanford.smi.protege.server.Server.initialize(Unknown Source)
at edu.stanford.smi.protege.server.Server.<init>(Unknown Source)
at edu.stanford.smi.protege.server.Server.startServer(Unknown Source)
at edu.stanford.smi.protege.server.Server.main(Unknown Source)

WARNING: Unable to load knowledgebase jdbc:sqlserver://localhost:1433;databaseNa
me=essentialdb;integratedsecurity=TRUE; -- java.lang.RuntimeException: class not
found: com.microsoft.sqlserver.jdbc.SQLServerDriver
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.<init>(
Unknown Source)
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.getConn
ectionPool(Unknown Source)
at edu.stanford.smi.protege.storage.database.RobustConnection.<init>(Unk
nown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.cre
ateConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.ini
tialize(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.initializeKB(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.loadKnowledgeBase(Unknown Source)
at edu.stanford.smi.protege.storage.database.DatabaseKnowledgeBaseFactor
y.loadKnowledgeBase(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadDomainKB(Unknown Source)
at edu.stanford.smi.protege.model.Project.createDomainKnowledgeBase(Unkn
own Source)
at edu.stanford.smi.protege.model.Project.<init>(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadProjectFromURI(Unknown Sou
rce)
at edu.stanford.smi.protege.server.metaproject.impl.MetaProjectImpl.<ini
t>(Unknown Source)
at edu.stanford.smi.protege.server.Server.initialize(Unknown Source)
at edu.stanford.smi.protege.server.Server.<init>(Unknown Source)
at edu.stanford.smi.protege.server.Server.startServer(Unknown Source)
at edu.stanford.smi.protege.server.Server.main(Unknown Source)

WARNING: com/microsoft/sqlserver/jdbc/SQLServerDriver : Unsupported major.minor
version 52.0 -- java.lang.UnsupportedClassVersionError: com/microsoft/sqlserver/
jdbc/SQLServerDriver : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at edu.stanford.smi.protege.plugin.PluginUtilities.forName(Unknown Sourc
e)
at edu.stanford.smi.protege.plugin.PluginUtilities.forName(Unknown Sourc
e)
at edu.stanford.smi.protege.util.SystemUtilities.forName(Unknown Source)

at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.<init>(
Unknown Source)
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.getConn
ectionPool(Unknown Source)
at edu.stanford.smi.protege.storage.database.RobustConnection.<init>(Unk
nown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.cre
ateConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.get
CurrentConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.IdleConnectionNarrowFrameSt
ore.setIdle(Unknown Source)
at edu.stanford.smi.protege.storage.database.IdleConnectionNarrowFrameSt
ore.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.MergingNarrowFrameStore.get
TransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.ClosureCachingBasicFrameSto
re.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.ImmutableNamesNarrowFrameSt
ore.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.SimpleFrameStore.getTransac
tionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.EventGeneratorFrameStore.se
tDelegate(Unknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.connect(U
nknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.enable(Un
known Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.setEnable
d(Unknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.setGenera
teEventsEnabled(Unknown Source)
at edu.stanford.smi.protege.model.DefaultKnowledgeBase.setGenerateEvents
Enabled(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadDomainKB(Unknown Source)
at edu.stanford.smi.protege.model.Project.createDomainKnowledgeBase(Unkn
own Source)
at edu.stanford.smi.protege.model.Project.<init>(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadProjectFromURI(Unknown Sou
rce)
at edu.stanford.smi.protege.server.metaproject.impl.MetaProjectImpl.<ini
t>(Unknown Source)
at edu.stanford.smi.protege.server.Server.initialize(Unknown Source)
at edu.stanford.smi.protege.server.Server.<init>(Unknown Source)
at edu.stanford.smi.protege.server.Server.startServer(Unknown Source)
at edu.stanford.smi.protege.server.Server.main(Unknown Source)

SEVERE: server startup failed -- java.lang.RuntimeException: class not found: co
m.microsoft.sqlserver.jdbc.SQLServerDriver
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.<init>(
Unknown Source)
at edu.stanford.smi.protege.storage.database.pool.ConnectionPool.getConn
ectionPool(Unknown Source)
at edu.stanford.smi.protege.storage.database.RobustConnection.<init>(Unk
nown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.cre
ateConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.AbstractDatabaseFrameDb.get
CurrentConnection(Unknown Source)
at edu.stanford.smi.protege.storage.database.IdleConnectionNarrowFrameSt
ore.setIdle(Unknown Source)
at edu.stanford.smi.protege.storage.database.IdleConnectionNarrowFrameSt
ore.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.MergingNarrowFrameStore.get
TransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.ClosureCachingBasicFrameSto
re.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.ImmutableNamesNarrowFrameSt
ore.getTransactionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.SimpleFrameStore.getTransac
tionStatusMonitor(Unknown Source)
at edu.stanford.smi.protege.model.framestore.EventGeneratorFrameStore.se
tDelegate(Unknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.connect(U
nknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.enable(Un
known Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.setEnable
d(Unknown Source)
at edu.stanford.smi.protege.model.framestore.FrameStoreManager.setGenera
teEventsEnabled(Unknown Source)
at edu.stanford.smi.protege.model.DefaultKnowledgeBase.setGenerateEvents
Enabled(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadDomainKB(Unknown Source)
at edu.stanford.smi.protege.model.Project.createDomainKnowledgeBase(Unkn
own Source)
at edu.stanford.smi.protege.model.Project.<init>(Unknown Source)
at edu.stanford.smi.protege.model.Project.loadProjectFromURI(Unknown Sou
rce)
at edu.stanford.smi.protege.server.metaproject.impl.MetaProjectImpl.<ini
t>(Unknown Source)
at edu.stanford.smi.protege.server.Server.initialize(Unknown Source)
at edu.stanford.smi.protege.server.Server.<init>(Unknown Source)
at edu.stanford.smi.protege.server.Server.startServer(Unknown Source)
at edu.stanford.smi.protege.server.Server.main(Unknown Source)
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Hi,

Apologies, I missed this post.

Firstly, I note that you'd posted not long after this that you had got things working. Can I assume that you resolve this JDBC driver issue yourself before your last post?

In case this is still an issue or anyone else is having a similar problem, there a number of different versions of the SQLServer JDBC driver available and it's important to use one that 'matches' your database. In practice, it's a case of making sure that you're using the correct JAR from the set available on the Microsoft website.

The IO exception that you're seeing is being raised by Protege about the log files. Check that Protege is able to write to its own log files folder, 'logs'.

Jonathan
Essential Project Team
Post Reply