mongodb - Appengine + Hibernate OMG - how to make it work? -
i trying simple example running jetty dev server comes eclipse plugin. far no luck.
code:
this code: entitymanagerfactory entitymanagerfactory; entitymanager entitymanager; entitymanagerfactory = persistence.createentitymanagerfactory( "hike-pu" ); entitymanager=entitymanagerfactory.createentitymanager(); entitymanager.gettransaction().begin(); person p = new person("peter"); entitymanager.persist(p); hike mountkillmore=new hike("mountkillmore flat", "palm springs"); mountkillmore.organizer=p; p.organizedhikes.add(mountkillmore); hike rushduddeldei=new hike("rushdudeldidei down", "rush upstream"); rushduddeldei.organizer=p; p.organizedhikes.add(rushduddeldei); entitymanager.persist(p); entitymanager.persist(mountkillmore); entitymanager.persist(rushduddeldei); entitymanager.gettransaction().commit(); entitymanagerfactory.close();
and here error stacktrace getting:
java.lang.exceptionininitializererror @ java.lang.class.forname0(native method) @ java.lang.class.forname(unknown source) @ com.google.appengine.tools.development.agent.runtime.runtimehelper.checkrestricted(runtimehelper.java:70) @ com.google.appengine.tools.development.agent.runtime.runtime.checkrestricted(runtime.java:65) @ org.hibernate.ogm.transaction.impl.ogmtransactionfactoryinitiator.(ogmtransactionfactoryinitiator.java:31) @ java.lang.class.forname0(native method) @ java.lang.class.forname(unknown source) @ com.google.appengine.tools.development.agent.runtime.runtimehelper.checkrestricted(runtimehelper.java:70) @ com.google.appengine.tools.development.agent.runtime.runtime.checkrestricted(runtime.java:65) @ org.hibernate.ogm.service.impl.ogmintegrator.prepareservices(ogmintegrator.java:161) @ org.hibernate.boot.registry.standardserviceregistrybuilder.applyservicecontributingintegrators(standardserviceregistrybuilder.java:264) @ org.hibernate.boot.registry.standardserviceregistrybuilder.build(standardserviceregistrybuilder.java:248) @ org.hibernate.jpa.boot.internal.entitymanagerfactorybuilderimpl.buildserviceregistry(entitymanagerfactorybuilderimpl.java:1025) @ org.hibernate.jpa.boot.internal.entitymanagerfactorybuilderimpl.build(entitymanagerfactorybuilderimpl.java:837) @ org.hibernate.jpa.hibernatepersistenceprovider.createentitymanagerfactory(hibernatepersistenceprovider.java:75) @ org.hibernate.ogm.jpa.hibernateogmpersistence.createentitymanagerfactory(hibernateogmpersistence.java:62) @ javax.persistence.persistence.createentitymanagerfactory(persistence.java:150) @ javax.persistence.persistence.createentitymanagerfactory(persistence.java:70) @ moe.bang.ytanothergoservlet.doget(ytanothergoservlet.java:19) @ javax.servlet.http.httpservlet.service(httpservlet.java:617) @ javax.servlet.http.httpservlet.service(httpservlet.java:717) @ org.mortbay.jetty.servlet.servletholder.handle(servletholder.java:511) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1166) @ com.google.appengine.api.socket.dev.devsocketfilter.dofilter(devsocketfilter.java:74) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.responserewriterfilter.dofilter(responserewriterfilter.java:127) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.headerverificationfilter.dofilter(headerverificationfilter.java:34) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.api.blobstore.dev.serveblobfilter.dofilter(serveblobfilter.java:63) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.apphosting.utils.servlet.transactioncleanupfilter.dofilter(transactioncleanupfilter.java:43) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.staticfilefilter.dofilter(staticfilefilter.java:125) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.devappservermodulesfilter.dodirectrequest(devappservermodulesfilter.java:366) @ com.google.appengine.tools.development.devappservermodulesfilter.dodirectmodulerequest(devappservermodulesfilter.java:349) @ com.google.appengine.tools.development.devappservermodulesfilter.dofilter(devappservermodulesfilter.java:116) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:388) @ org.mortbay.jetty.security.securityhandler.handle(securityhandler.java:216) @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:182) @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:765) @ org.mortbay.jetty.webapp.webappcontext.handle(webappcontext.java:418) @ com.google.appengine.tools.development.devappenginewebappcontext.handle(devappenginewebappcontext.java:98) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ com.google.appengine.tools.development.jettycontainerservice$apiproxyhandler.handle(jettycontainerservice.java:503) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ org.mortbay.jetty.server.handle(server.java:326) @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:542) @ org.mortbay.jetty.httpconnection$requesthandler.headercomplete(httpconnection.java:923) @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:547) @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:212) @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404) @ org.mortbay.io.nio.selectchannelendpoint.run(selectchannelendpoint.java:409) @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.java:582) caused by: java.security.accesscontrolexception: access denied ("java.lang.runtimepermission" "createsecuritymanager") @ java.security.accesscontrolcontext.checkpermission(unknown source) @ java.security.accesscontroller.checkpermission(unknown source) @ java.lang.securitymanager.checkpermission(unknown source) @ com.google.appengine.tools.development.devappserverfactory$customsecuritymanager.checkpermission(devappserverfactory.java:429) @ java.lang.securitymanager.(unknown source) @ org.hibernate.ogm.util.impl.loggerfactory$callerprovider.(loggerfactory.java:24) @ org.hibernate.ogm.util.impl.loggerfactory$callerprovider.(loggerfactory.java:24) @ org.hibernate.ogm.util.impl.loggerfactory.(loggerfactory.java:18) ... 56 more caused by: java.security.accesscontrolexception: access denied ("java.lang.runtimepermission" "createsecuritymanager") @ java.security.accesscontrolcontext.checkpermission(unknown source) @ java.security.accesscontroller.checkpermission(unknown source) @ java.lang.securitymanager.checkpermission(unknown source) @ com.google.appengine.tools.development.devappserverfactory$customsecuritymanager.checkpermission(devappserverfactory.java:429) @ java.lang.securitymanager.(unknown source) @ org.hibernate.ogm.util.impl.loggerfactory$callerprovider.(loggerfactory.java:24) @ org.hibernate.ogm.util.impl.loggerfactory$callerprovider.(loggerfactory.java:24) @ org.hibernate.ogm.util.impl.loggerfactory.(loggerfactory.java:18) @ java.lang.class.forname0(native method) @ java.lang.class.forname(unknown source) @ com.google.appengine.tools.development.agent.runtime.runtimehelper.checkrestricted(runtimehelper.java:70) @ com.google.appengine.tools.development.agent.runtime.runtime.checkrestricted(runtime.java:65) @ org.hibernate.ogm.transaction.impl.ogmtransactionfactoryinitiator.(ogmtransactionfactoryinitiator.java:31) @ java.lang.class.forname0(native method) @ java.lang.class.forname(unknown source) @ com.google.appengine.tools.development.agent.runtime.runtimehelper.checkrestricted(runtimehelper.java:70) @ com.google.appengine.tools.development.agent.runtime.runtime.checkrestricted(runtime.java:65) @ org.hibernate.ogm.service.impl.ogmintegrator.prepareservices(ogmintegrator.java:161) @ org.hibernate.boot.registry.standardserviceregistrybuilder.applyservicecontributingintegrators(standardserviceregistrybuilder.java:264) @ org.hibernate.boot.registry.standardserviceregistrybuilder.build(standardserviceregistrybuilder.java:248) @ org.hibernate.jpa.boot.internal.entitymanagerfactorybuilderimpl.buildserviceregistry(entitymanagerfactorybuilderimpl.java:1025) @ org.hibernate.jpa.boot.internal.entitymanagerfactorybuilderimpl.build(entitymanagerfactorybuilderimpl.java:837) @ org.hibernate.jpa.hibernatepersistenceprovider.createentitymanagerfactory(hibernatepersistenceprovider.java:75) @ org.hibernate.ogm.jpa.hibernateogmpersistence.createentitymanagerfactory(hibernateogmpersistence.java:62) @ javax.persistence.persistence.createentitymanagerfactory(persistence.java:150) @ javax.persistence.persistence.createentitymanagerfactory(persistence.java:70) @ moe.bang.ytanothergoservlet.doget(ytanothergoservlet.java:19) @ javax.servlet.http.httpservlet.service(httpservlet.java:617) @ javax.servlet.http.httpservlet.service(httpservlet.java:717) @ org.mortbay.jetty.servlet.servletholder.handle(servletholder.java:511) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1166) @ com.google.appengine.api.socket.dev.devsocketfilter.dofilter(devsocketfilter.java:74) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.responserewriterfilter.dofilter(responserewriterfilter.java:127) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.headerverificationfilter.dofilter(headerverificationfilter.java:34) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.api.blobstore.dev.serveblobfilter.dofilter(serveblobfilter.java:63) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.apphosting.utils.servlet.transactioncleanupfilter.dofilter(transactioncleanupfilter.java:43) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.staticfilefilter.dofilter(staticfilefilter.java:125) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ com.google.appengine.tools.development.devappservermodulesfilter.dodirectrequest(devappservermodulesfilter.java:366) @ com.google.appengine.tools.development.devappservermodulesfilter.dodirectmodulerequest(devappservermodulesfilter.java:349) @ com.google.appengine.tools.development.devappservermodulesfilter.dofilter(devappservermodulesfilter.java:116) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1157) @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:388) @ org.mortbay.jetty.security.securityhandler.handle(securityhandler.java:216) @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:182) @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:765) @ org.mortbay.jetty.webapp.webappcontext.handle(webappcontext.java:418) @ com.google.appengine.tools.development.devappenginewebappcontext.handle(devappenginewebappcontext.java:98) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ com.google.appengine.tools.development.jettycontainerservice$apiproxyhandler.handle(jettycontainerservice.java:503) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152) @ org.mortbay.jetty.server.handle(server.java:326) @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:542) @ org.mortbay.jetty.httpconnection$requesthandler.headercomplete(httpconnection.java:923) @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:547) @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:212) @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404) @ org.mortbay.io.nio.selectchannelendpoint.run(selectchannelendpoint.java:409) @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.java:582)
my first guess might running whitelisting issue loaded classes. reason being, exact same code works fine standalone client using same persistence unit, jars.
what think? can somehow overcome this: access denied ("java.lang.runtimepermission") ?
Comments
Post a Comment