Quantcast
Channel: zeroturnaround.com » All Posts
Viewing all articles
Browse latest Browse all 2540

Reply To: JRebel vs ObjectDB compatibility problem

$
0
0

Resuming (after some years) with:

JRebel 6.5.1
ObjectDB-2.6.9_06 as JPA provider (with it own compile-time enhancement)
NetBeans8.1 (but Glassfish4.1, because for some strange reason my large web app takes about 10 times longer to deploy on Glassfish4.1.1 or Payara4.1).

In a relatively standard (but somewhat old) very large NetBeans web app, deployed over …/build/web.

I am getting copious output (1000s of lines) in the Glassfish log on deployment.

The basic form of the error (which repeats for many EJBs) seems to have something to do with a clash between ObjectDB’s enhancement and JRebel (at least as far as I can tell). For example (adapted Glassfish log output):

Info:   [2016-10-29 20:16:46 #6 enhancer.agent] 
Not Enhanced: com/example/ejb/query/__EJB31_Generated__ExampleQuery__Intf__: com.objectdb.o.TEX: Type com.example.ejb.query.__EJB31_Generated__ExampleQuery__Intf__ is not found
	at com.objectdb.o.MSG.e(MSG.java:108)
	at com.objectdb.o.SCM.w(SCM.java:459)
	at com.objectdb.o.JEW.aG(JEW.java:160)
	at com.objectdb.JEnhancerAgent.transform(JEnhancerAgent.java:155)
	at org.glassfish.persistence.jpa.ServerProviderContainerContractInfo$1.transform(ServerProviderContainerContractInfo.java:98)
	at org.glassfish.web.loader.WebappClassLoader$3.preprocess(WebappClassLoader.java:3465)
	at org.glassfish.web.loader.WebappClassLoader.process(WebappClassLoader.java)
	at org.zeroturnaround.javarebel.integration.util.WeakUtil$WeakClassBytecodeProcessorAdapter.process(SourceFile:287)
	at com.zeroturnaround.javarebel.rx.a(SourceFile:365)
	at com.zeroturnaround.javarebel.rx.a(SourceFile:354)
	at com.zeroturnaround.javarebel.rx.b(SourceFile:407)
	at com.zeroturnaround.javarebel.SDKIntegrationImpl.processManagedClass(SourceFile:43)
	at com.zeroturnaround.javarebel.SDKIntegrationImpl.runBytecodeProcessors(SourceFile:35)
	at com.zeroturnaround.javarebel.px.transform(SourceFile:94)
	at java.lang.ClassLoader.defineClass(ClassLoader.java)
	at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.__invoke(DelegatingMethodAccessorImpl.java:43)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.zeroturnaround.javarebel.ps.a(SourceFile:96)
	at com.zeroturnaround.javarebel.ps.a(SourceFile:85)
	at com.zeroturnaround.javarebel.pz.a(SourceFile:440)
	at com.zeroturnaround.javarebel.SDKIntegrationImpl.defineReloadableClass(SourceFile:111)
	at com.sun.ejb.codegen.EjbOptionalIntfGenerator.__define(EjbOptionalIntfGenerator.java)
	at com.sun.ejb.codegen.EjbOptionalIntfGenerator.makeClass(EjbOptionalIntfGenerator.java)
	at com.sun.ejb.codegen.EjbOptionalIntfGenerator.access$200(EjbOptionalIntfGenerator.java:65)
	at com.sun.ejb.codegen.EjbOptionalIntfGenerator$1.run(EjbOptionalIntfGenerator.java:100)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.ejb.codegen.EjbOptionalIntfGenerator.loadClass(EjbOptionalIntfGenerator.java:97)
	at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:753)
	at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:143)
	at com.sun.ejb.containers.StatelessSessionContainer.<init>(StatelessSessionContainer.java:137)
	at com.sun.ejb.containers.StatelessContainerFactory.createContainer(StatelessContainerFactory.java:61)
	at org.glassfish.ejb.startup.EjbApplication.loadContainers(EjbApplication.java:221)
	at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:291)
	at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:99)
	at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:206)
	at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:313)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:496)
	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:539)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:360)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:360)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
	at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
	at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
	at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
	at org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service(StaticHttpHandlerBase.java:189)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
	at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
	at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
	at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
	at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
	at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
	at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
	at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)
	at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
	at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: com.example.ejb.query.__EJB31_Generated__ExampleQuery__Intf__
	at java.lang.ClassLoader.findClass(ClassLoader.java:530)
	at com.objectdb.o.ACL.loadClass(ACL.java:131)
	at com.objectdb.o.BCL.loadClass(BCL.java:63)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	at com.objectdb.o.SCM.w(SCM.java:455)
	... 76 more
Severe:   [2016-10-29 20:16:46 #6 enhancer.agent] 
  • This reply was modified 1 day, 15 hours ago by  webel.

Viewing all articles
Browse latest Browse all 2540

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>