[ 
https://issues.apache.org/jira/browse/OPENJPA-2471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13872104#comment-13872104
 ] 

Kevin Sutter commented on OPENJPA-2471:
---------------------------------------

The stack trace you posted doesn't show anything related to OpenJPA.  The error 
posted in the StackOverflow question sounds more ominous:

Caused by: java.lang.AbstractMethodError: 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(Ljavax/persistence/SynchronizationType;Ljava/util/Map;)Ljavax/persistence/EntityManager;

This shows that a JPA 2.1 interface is being used (due to the 
SynchronizationType parameter).  OpenJPA currently doesn't support the JPA 2.1 
specification.

My guess is that Glassfish 4 is assuming the use of a JPA 2.1 provider and is 
providing and loading the JPA 2.1 APIs.  Unfortunately, those won't work with a 
provider that doesn't the JPA 2.1 spec...  You will have to remove or disable 
the JPA 2.1 APIs and provide the JPA 2.0 APIs instead.  These are packaged with 
OpenJPA.

Hope this helps.
Kevin

> OpenJPA does not work with Glassfish 4.0
> ----------------------------------------
>
>                 Key: OPENJPA-2471
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2471
>             Project: OpenJPA
>          Issue Type: Bug
>    Affects Versions: 2.2.2, 2.4.0
>         Environment: Windows 8.1
> Glassfish 4.0 Open Source Edition
> OpenJPA 2.2.2
> ClusterJ
> ClusterJPA
> MySQL Cluster 7.3.3
>            Reporter: Jake Breindel
>            Priority: Critical
>              Labels: Glassfish, OpenJPA
>
> I am unable to access the entity manager with OpenJPA with a Glassfish 4.0 
> runtime, even though using a different persistence provider I am. I think 
> that many people are having a similar issue. See this stack overflow question:
> http://stackoverflow.com/questions/19398168/has-anybody-successfully-used-openjpa-with-glassfish-4-yet
>  Here is the stack tract for creating an entity manager:
> SEVERE: Exception while invoking class 
> org.glassfish.ejb.startup.EjbApplication start method
> javax.ejb.EJBException: javax.ejb.CreateException: Initialization failed for 
> Singleton InitBean
>       at 
> com.sun.ejb.containers.AbstractSingletonContainer$SingletonContextFactory.create(AbstractSingletonContainer.java:656)
>       at 
> com.sun.ejb.containers.AbstractSingletonContainer.instantiateSingletonInstance(AbstractSingletonContainer.java:396)
>       at 
> org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:219)
>       at 
> org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:180)
>       at 
> org.glassfish.ejb.startup.SingletonLifeCycleManager.doStartup(SingletonLifeCycleManager.java:158)
>       at 
> org.glassfish.ejb.startup.EjbApplication.start(EjbApplication.java:166)
>       at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
>       at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
>       at 
> org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
>       at 
> com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:497)
>       at 
> com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
>       at 
> org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:356)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
>       at 
> com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
>       at 
> org.glassfish.admin.rest.resources.admin.CommandResource.executeCommand(CommandResource.java:396)
>       at 
> org.glassfish.admin.rest.resources.admin.CommandResource.execCommandSimpInMultOut(CommandResource.java:234)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:601)
>       at 
> org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
>       at 
> org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:125)
>       at 
> org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
>       at 
> org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:91)
>       at 
> org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:346)
>       at 
> org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
>       at 
> org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
>       at 
> org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:224)
>       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
>       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
>       at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
>       at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
>       at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
>       at 
> org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
>       at 
> org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:198)
>       at 
> org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:946)
>       at 
> org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:331)
>       at 
> org.glassfish.admin.rest.adapter.JerseyContainerCommandService$3.service(JerseyContainerCommandService.java:165)
>       at 
> org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
>       at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
>       at 
> org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
>       at 
> org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
>       at 
> org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
>       at 
> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
>       at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
>       at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
>       at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
>       at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
>       at 
> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
>       at 
> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
>       at 
> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
>       at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
>       at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
>       at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
>       at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
>       at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
>       at java.lang.Thread.run(Thread.java:722)



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to