Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-discussion] Saving modified protege server project to physical copy without re-initializing server

Philip Yeo yphilip at cs.dal.ca
Thu Nov 10 06:01:42 PST 2011


Hi Csongor,

Thanks. I've actually managed to figure it out on my one. It is exactly what you 
said plus a host of other stuff that I can do all under the package 
edu.stanford.smi.protege.server.metaproject.* 

However I am not sure if you have an idea on how to save a modified current 
project on protege server to its physical copy of the owl file. 

Right now, when anyone changes their protege server project's content e.g. add 
an instance, and then opens up the physical copy of the owl file (w/o connecting 
to the server), it does not show the modification - unless of course the Protege 
server has been re-initialized.

I'm not sure if that I can defy that programmatically. I've attempted a bit by 
looking at the Protege 3.4.7 source code (protege-src-3.4.7). I saw something 
which I thought may make it possible (saving the changes to the physical copy 
w/o server restarting), but I faced some errors. 

The attempt was to connect to that Project itself. So using,
edu.stanford.smi.protege.model.Project;
edu.stanford.smi.protege.server.RemoteServer;
and
edu.stanford.smi.protege.server.RemoteSession;

RemoteServer rserver = (RemoteServer) Naming.lookup("//" + serverName + "/" + 
Server.getBoundName());
RemoteSession rm = server.openSession("Testuser", "TEST-PC", "testuserpw");
remotepm = new RemoteProjectManager();
Project proj = remotepm.connectToProject(server, rm, "TestOntology");
KnowledgeBase kb = proj.getKnowledgeBase();
kb.getProject().save(null);

The error I faced is at connecting to the project. Apparently it calls 
RemoteProjectManager.connectToProject which in that method calls 
server.openProject(name, session); but doesn't return the desired 
RemoteServerProject object. 

Strange thing is, if I were to write the code, 
RemoteServerProject serverProject = server.openProject("TestOntology", session);
in my test code, this works.

I'm not sure if what I'm attempting is even possible in the first place. I 
thought I just get your thoughts on whether this is something futile or perhaps 
there's something I've missed. I've read an ol' forum archived which Tania 
responded to saying that this feature isn't available (downloading the owl file 
from webprotege) which is why I am attempting to do so. 

Sorry for the long email. and thanks in advance for your patience,
Philip 



More information about the protege-discussion mailing list