uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Richard Eckart de Castilho <richard.eck...@gmail.com>
Subject Re: UIMA + Google App Engine
Date Thu, 29 Aug 2013 10:15:40 GMT
In the Eclipse preferences under Java -> Installed JREs -> Execution Environments,
Eclipse offers the ability to select special profiles for different environments, 
e.g. to disallow access to classes not available on mobile platforms, etc.

Do you know if the Google Eclipse plugins ship with an execution environment
definition for the app engine or maybe if some third-party provides this? That
could offer a good way of checking at once which parts of the UIMA-SDK may be
incompatible with the App Engine.

Cheers,

-- Richard

Am 29.08.2013 um 04:00 schrieb Marshall Schor <msa@schor.com>:

> I did some more digging, and found this page:
> https://developers.google.com/appengine/docs/java
> 
> It has statements about what's allowed, and what's not, and a "Whitelist" of
> allowed classes.
> 
> https://developers.google.com/appengine/docs/java/jrewhitelist
> 
> My guess is that you've perhaps found just the 1st restricted class.
> 
> -Marshall
> 
> On 8/26/2013 6:20 AM, Lee Becker wrote:
>> Has anyone had any success deploying UIMA components in the Google App
>> Engine?  Right now, I am trying to package up some UIMAFit-based components
>> in a GAE servlet, but when I create my analysis engines, I get the
>> exception pasted below.
>> 
>> The trouble seems to come from this line in UimaContext.
>> 
>>    uniqueIdentifier = new UID().toString();
>> Basically, I believe UIMA is using the java.rmi package as a convenient way
>> to generate UIDs.  Meanwhile Google App Engine does not allow any access to
>> RMI classes.
>> 
>> Does anyone know any workarounds?
>> 
>> Thanks,
>> Lee
>> 
>> 
>> [INFO] java.lang.NoClassDefFoundError: java.rmi.server.UID is a restricted
>> class. Please see the Google  App Engine developer's guide for more details.
>> [INFO] at
>> com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java:51)
>> [INFO] at
>> org.apache.uima.impl.UimaContext_ImplBase.<init>(UimaContext_ImplBase.java:129)
>> [INFO] at
>> org.apache.uima.impl.RootUimaContext_impl.<init>(RootUimaContext_impl.java:41)
>> [INFO] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>> [INFO] at
>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>> [INFO] at
>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>> [INFO] at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>> [INFO] at
>> com.google.appengine.tools.development.agent.runtime.Runtime.newInstance_(Runtime.java:127)
>> [INFO] at
>> com.google.appengine.tools.development.agent.runtime.Runtime.newInstance(Runtime.java:148)
>> [INFO] at
>> org.apache.uima.impl.UIMAFramework_impl._newUimaContext(UIMAFramework_impl.java:383)
>> [INFO] at
>> org.apache.uima.UIMAFramework.newUimaContext(UIMAFramework.java:1031)
>> [INFO] at
>> org.apache.uima.resource.Resource_ImplBase.initialize(Resource_ImplBase.java:107)
>> [INFO] at
>> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.initialize(AnalysisEngineImplBase.java:157)
>> [INFO] at
>> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initialize(PrimitiveAnalysisEngine_impl.java:123)
>> [INFO] at
>> org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
>> [INFO] at
>> org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
>> [INFO] at
>> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:269)
>> [INFO] at
>> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:354)
>> [INFO] at
>> org.uimafit.factory.AnalysisEngineFactory.createPrimitive(AnalysisEngineFactory.java:392)
>> [INFO] at
>> com.hapara.analytics.nlp.PreprocessServlet.init(PreprocessServlet.java:52)
>> [INFO] at javax.servlet.GenericServlet.init(GenericServlet.java:212)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>> [INFO] at
>> com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:123)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:61)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>> [INFO] at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>> [INFO] at
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> [INFO] at
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>> [INFO] at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>> [INFO] at
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>> [INFO] at
>> com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:94)
>> [INFO] at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>> [INFO] at
>> com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:409)
>> [INFO] at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>> [INFO] at org.mortbay.jetty.Server.handle(Server.java:326)
>> [INFO] at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>> [INFO] at
>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
>> [INFO] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
>> [INFO] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
>> [INFO] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>> [INFO] at
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>> [INFO] at
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
>> [INFO]
>> 
> 


Mime
View raw message