I have just posted the following on Jena group -
http://tech.groups.yahoo.com/group/jena-dev/message/41935.


--- In [email protected], "pionx2000" <onlee2...@...> wrote:
>
>
> Thanks Taylor and Andy for your help.
>
> Now I can get it to work on the Google App Engine per your
> advice/instructions/sample code!
>
> Although it works now, I don't know if I did it correctly. I
> amrelatively new with Jena, Google App Engine, Google Web Toolkit and
> even Javabuild environments (ant, maven, etc). I only downloaded the
> compiled Jenabinaries in the past never build from the source directly.
>
> Anyway, I did the following:
>
> 1. Update to the latest Jena 2.6.2. My environments: GAE Java
> 1.2.6, GWT 1.7.1, Eclipse(Galileo), Windows
> Vista (32-bit).
>
>
>
> 2. " svn co https://jena.svn.sourceforge.net/svnroot/jena
> jena" as shown on http://sourceforge.net/projects/jena/develop
> <http://sourceforge.net/projects/jena/develop> .
>
> a. Edit
> D:\download\jena-src-2.6.2\jena-ARQ\ARQ\tags\ARQ-2.8.1\src\com\hp\hpl\je\
> na\sparql\lib\Metafile.javaas the following:
>
> public voidaddMetadata(String resourceName)
>
> {
>
> resources.add(resourceName) ;
>
> //read(properties, resourceName) ;
>
> init();
>
> }
>
>
>
> static private boolean initialized = false;
>
> private void init()
>
> {
>
> if ( ! initialized )
>
> {
>
> initialized = true ;
>
> properties = new Properties() ;
>
> }
>
> }
>
> b. Build using maven – not ant
>
> c. Copy the target\arq-2.8.1-jar to war\WEB-INF\lib
>
>
>
> 3. "cvs
> -z3-d:pserver:anonym...@...:/cvsroot/jena co –P
> jena2" asshown on as shown on
> http://sourceforge.net/projects/jena/develop
> <http://sourceforge.net/projects/jena/develop> .I did this cvs because I
> could not find AnonId.java on the above tree.
>
>
> a. Edit
> D:\download\jena-src-2.6.2\jena2\src\main\java\com\hp\hpl\jena\rdf\model\
> \AnonId.java as the following:
>
> public AnonId() {
>
> if(JenaParameters.disableBNodeUIDGeneration) {
>
> synchronized (AnonId.class) {
>
> id = "A" + idCount++; // +rand.nextLong();
>
> }
>
> } else {
>
> // id = (new UID()).toString();
>
> id =java.util.UUID.randomUUID().toString();
>
> }
>
> }
>
>
>
> b. Build using maven – not ant
>
> c. Copy the target\jena-2.6.3-SNAPSHOT-jar to war\WEB-INF\lib
>
>
>
> Although there are many hacks, at least I could continueworking for now.
>
> When are these patches going to be in the next Jena release?
>
> Again, thanks.
>
>

On Oct 29, 9:21 am, Vince Bonfanti <[email protected]> wrote:
> RE: "Since Jena is an open-source (third party) library, I don't have
> control over it."
>
> Because Jena is open-source, you *do* have control over it. See what
> it would take to modify Jena to run on GAE, then submit your patches
> back to the project owners.
>
> On Thu, Oct 29, 2009 at 11:20 AM, Pion <[email protected]> wrote:
>
> > I am using Jena which is an open-source Java framework for building
> > Semantic Web applications. It's been working fine on my local Eclipse
> > development. I have just deployed it and it fails because Jena uses
> > java.rmi.server.UID -- please see the error logs below.
>
> > java.rmi.server.UID is not listed on
> >http://code.google.com/intl/de/appengine/docs/java/jrewhitelist.html.
>
> > Since Jena is an open-source (third party) library, I don't have
> > control over it. One potential solution is to host Jena outside GAE
> > such as Amazon EC2. Obviously, it is not ideal.
> > It solves the limitation of the JRE Class White List but it will
> > introduce other problems (scalability, another indirection,
> > maintenance, etc).
>
> > I am sure this is a common issue as many of us are porting existing
> > apps/libraries/SDKs to Google App Engine.
>
> > I'd appreciate your advice on this issue.
> > Thanks in advance for your help.
>
> > My environments: GAE Java 1.2.6, GWT 1.7.1, Eclipse(Galileo), Windows
> > Vista (32-bit).
>
> > ERROR LOGS
> > 10-29 07:38AM 59.438 /col/input 500 6020ms 5638cpu_ms 0kb Mozilla/5.0
> > (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/
> > 3.5.3 (.NET CLR 3.5.30729),gzip(gfe)
> > 98.232.111.83 - - [29/Oct/2009:07:39:05 -0700] "POST /col/input HTTP/
> > 1.1" 500 113 "http://foafan2000.appspot.com/col/
> > 69AAFD5DE4B9915A24B29439E261B4A5.cache.html" "Mozilla/5.0 (Windows; U;
> > Windows NT 6.0; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET
> > CLR 3.5.30729),gzip(gfe)" "foafan2000.appspot.com"
> > E 10-29 07:39AM 05.433
> > javax.servlet.ServletContext log: Exception while dispatching incoming
> > RPC call
> > com.google.gwt.user.server.rpc.UnexpectedException: Service method
> > 'public abstract java.lang.String com.col.client.CInputService.getFoaf
> > (java.lang.String)' threw an unexpected exception:
> > java.lang.NoClassDefFoundError: java.rmi.server.UID is a restricted
> > class. Please see the Google App Engine developer's guide for more
> > details.
> >        at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure
> > (RPC.java:360)
> >        at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> > (RPC.java:546)
> >        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall
> > (RemoteServiceServlet.java:166)
> >        at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> > (RemoteServiceServlet.java:86)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> >        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
> > 487)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1093)
> >        at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter
> > (SaveSessionFilter.java:35)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1084)
> >        at
> > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter
> > (TransactionCleanupFilter.java:43)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1084)
> >        at org.mortbay.jetty.servlet.ServletHandler.handle
> > (ServletHandler.java:360)
> >        at org.mortbay.jetty.security.SecurityHandler.handle
> > (SecurityHandler.java:216)
> >        at org.mortbay.jetty.servlet.SessionHandler.handle
> > (SessionHandler.java:181)
> >        at org.mortbay.jetty.handler.ContextHandler.handle
> > (ContextHandler.java:712)
> >        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> > 405)
> >        at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle
> > (AppVersionHandlerMap.java:238)
> >        at org.mortbay.jetty.handler.HandlerWrapper.handle
> > (HandlerWrapper.java:139)
> >        at org.mortbay.jetty.Server.handle(Server.java:313)
> >        at 
> > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> > 506)
> >        at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete
> > (HttpConnection.java:830)
> >        at 
> > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable
> > (RpcRequestParser.java:76)
> >        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
> >        at
> > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest
> > (JettyServletEngineAdapter.java:139)
> >        at com.google.apphosting.runtime.JavaRuntime.handleRequest
> > (JavaRuntime.java:239)
> >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5135)
> >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5133)
> >        at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest
> > (BlockingApplicationHandler.java:24)
> >        at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
> > 363)
> >        at com.google.net.rpc.impl.Server$2.run(Server.java:814)
> >        at com.google.tracing.LocalTraceSpanRunnable.run
> > (LocalTraceSpanRunnable.java:56)
> >        at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan
> > (LocalTraceSpanBuilder.java:516)
> >        at com.google.net.rpc.impl.Server.startRpc(Server.java:769)
> >        at com.google.net.rpc.impl.Server.processRequest(Server.java:351)
> >        at com.google.net.rpc.impl.ServerConnection.messageReceived
> > (ServerConnection.java:437)
> >        at com.google.net.rpc.impl.RpcConnection.parseMessages
> > (RpcConnection.java:319)
> >        at com.google.net.rpc.impl.RpcConnection.dataReceived
> > (RpcConnection.java:290)
> >        at com.google.net.async.Connection.handleReadEvent(Connection.java:
> > 436)
> >        at com.google.net.async.EventDispatcher.processNetworkEvents
> > (EventDispatcher.java:762)
> >        at com.google.net.async.EventDispatcher.internalLoop
> > (EventDispatcher.java:207)
> >        at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
> > 101)
> >        at com.google.net.rpc.RpcService.runUntilServerShutdown
> > (RpcService.java:251)
> >        at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run
> > (JavaRuntime.java:396)
> >        at java.lang.Thread.run(Unknown Source)
> > Caused by: java.lang.NoClassDefFoundError: java.rmi.server.UID is a
> > restricted class. Please see the Google App Engine developer's guide
> > for more details.
> >        at java.rmi.server.UID.<clinit>(UID.java)
> >        at com.hp.hpl.jena.rdf.model.AnonId.<init>(AnonId.java:78)
> >        at com.hp.hpl.jena.rdf.model.AnonId.create(AnonId.java:60)
> >        at com.hp.hpl.jena.graph.Node.createAnon(Node.java:45)
> >        at com.hp.hpl.jena.rdf.arp.JenaReader.convert(JenaReader.java:116)
> >        at com.hp.hpl.jena.rdf.arp.JenaReader.convert(JenaReader.java:124)
> >        at com.hp.hpl.jena.rdf.arp.JenaHandler.statement(JenaHandler.java:64)
> >        at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.triple(XMLHandler.java:98)
> >        at com.hp.hpl.jena.rdf.arp.impl.ParserSupport.triple
> > (ParserSupport.java:240)
> >        at com.hp.hpl.jena.rdf.arp.states.WantDescription.startElement
> > (WantDescription.java:85)
> >        at com.hp.hpl.jena.rdf.arp.impl.XMLHandler.startElement
> > (XMLHandler.java:137)
> >        at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown
> > Source)
> >        at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement
> > (Unknown Source)
> >        at org.apache.xerces.impl.XMLNamespaceBinder.startElement(Unknown
> > Source)
> >        at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown
> > Source)
> >        at
> > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement
> > (Unknown Source)
> >        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl
> > $FragmentContentDispatcher.dispatch(Unknown Source)
> >        at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
> > (Unknown Source)
> >        at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
> >        at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
> >        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> >        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> >        at com.hp.hpl.jena.rdf.arp.impl.RDFXMLParser.parse(RDFXMLParser.java:
> > 107)
> >        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:158)
> >        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:145)
> >        at com.hp.hpl.jena.rdf.arp.JenaReader.read(JenaReader.java:215)
> >        at com.hp.hpl.jena.rdf.model.impl.ModelCom.read(ModelCom.java:217)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.findMetadata
> > (OntDocumentManager.java:895)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.initialiseMetadata
> > (OntDocumentManager.java:853)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>
> > (OntDocumentManager.java:201)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>
> > (OntDocumentManager.java:183)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.<init>
> > (OntDocumentManager.java:167)
> >        at com.hp.hpl.jena.ontology.OntDocumentManager.getInstance
> > (OntDocumentManager.java:245)
> >        at com.hp.hpl.jena.ontology.OntModelSpec.getDocumentManager
> > (OntModelSpec.java:340)
> >        at com.hp.hpl.jena.ontology.impl.OntModelImpl.getDocumentManager
> > (OntModelImpl.java:181)
> >        at
>
> ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to