5.0.0CR1: deployment error with @PersistenceContext and @Ign
juergen.zimmermann Jul 4, 2008 12:21 AMAn exploded EAR deploys and runs fine with JBossAS 4.2.2. Adapting some DTD declarations and package names I tried the deployment with for 5.0.0CR1 and failed. The stacktrace is below.
The problem:
- KundenverwaltungBean is a SLSB and references the SLSB BestellverwaltungBean via its interface Bestellverwaltung
- The reference is declared with @PersistenceContext and @IgnoreDependency because BestellverwaltungBean also has a reference back to KundenverwaltungBean via its interface Kundenverwaltung
- BestellverwaltungBean has a field "em" of type EntityManager being annotated with @PersistenceContext(name="hskaPersistence")
- hskaPersistence is the name of <persistence-unit> inside META-INF/persistence.xml
Here is the stacktrace. Any hint is appreciated! Is this a bug in the hot deployment scanner?
2008-07-04 06:00:55,388 INFO [org.apache.coyote.ajp.AjpAprProtocol] (main) Starting Coyote AJP/1.3 on ajp-localhost%2F127.0.0.1-8009 2008-07-04 06:00:55,398 INFO [org.jboss.bootstrap.microcontainer.ServerImpl] (main) JBoss (Microcontainer) [5.0.0.CR1 (build: SVNTag=JBoss_5_0_0_CR1 date=200806301254)] Started in 1m:10s:120ms 2008-07-04 06:01:14,105 INFO [STDOUT] (HDScanner) ======> Creating interceptor metadata bridge 2008-07-04 06:01:14,816 INFO [STDOUT] (HDScanner) ======> Creating interceptor metadata bridge 2008-07-04 06:01:14,866 INFO [STDOUT] (HDScanner) ======> Creating interceptor metadata bridge 2008-07-04 06:01:15,007 INFO [STDOUT] (HDScanner) ======> Creating interceptor metadata bridge 2008-07-04 06:01:15,137 WARN [org.jboss.ejb3.interceptors.aop.InjectInterceptorsFactory] (HDScanner) WEIRDNESS IN AOP: advisor org.jboss.ejb3.aop.ExtendedManagedObjectAdvisor@32d4a8 2008-07-04 06:01:15,187 WARN [org.jboss.ejb3.interceptors.aop.InjectInterceptorsFactory] (HDScanner) WEIRDNESS IN AOP: advisor org.jboss.ejb3.aop.ExtendedManagedObjectAdvisor@32d4a8 2008-07-04 06:01:15,207 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) Created KernelDeployment for: hskaEJB.jar 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) installing bean: persistence.units:ear=hska.ear,jar=hskaEJB.jar,unitName=hskaPersistence 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) with dependencies: 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) and demands: 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) jboss.jca:name=hskaDS,service=DataSourceBinding 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) and supplies: 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) persistence.units:unitName=hskaPersistence 2008-07-04 06:01:15,217 INFO [org.jboss.ejb3.deployers.JBossASKernel] (HDScanner) Added bean(persistence.units:ear=hska.ear,jar=hskaEJB.jar,unitName=hskaPersistence) to KernelDeployment of: hskaEJB.jar 2008-07-04 06:01:15,217 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] (HDScanner) Error installing to Real: name=vfsfile:/C:/Programme/jboss/server/default/deploy/hska.ear/ state=PreReal mode=Manual requiredState=Real org.jboss.deployers.spi.DeploymentException: Error deploying hskaEJB.jar: <injection-target> could not be found: de.hska.bestellverwaltung.BestellverwaltungBean.hskaPersistence at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:192) at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:95) at org.jboss.deployers.vfs.spi.deployer.AbstractVFSRealDeployer.internalDeploy(AbstractVFSRealDeployer.java:45) at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50) at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:174) at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:970) at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1023) at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:911) at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348) at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1392) at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:784) at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:912) at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:834) at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:672) at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:455) at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:594) at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:541) at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:290) at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:221) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.RuntimeException: <injection-target> could not be found: de.hska.bestellverwaltung.BestellverwaltungBean.hskaPersistence at org.jboss.injection.InjectionUtil.findInjectionTarget(InjectionUtil.java:225) at org.jboss.injection.InjectionUtil.injectionTarget(InjectionUtil.java:301) at org.jboss.injection.PersistenceContextHandler.loadXml(PersistenceContextHandler.java:64) at org.jboss.ejb3.EJBContainer.processMetadata(EJBContainer.java:561) at org.jboss.ejb3.Ejb3Deployment.processEJBContainerMetadata(Ejb3Deployment.java:392) at org.jboss.ejb3.Ejb3Deployment.start(Ejb3Deployment.java:505) at org.jboss.ejb3.deployers.Ejb3Deployer.deploy(Ejb3Deployer.java:185) ... 27 more 2008-07-04 06:01:15,217 WARN [org.jboss.system.server.profileservice.hotdeploy.HDScanner] (HDScanner) Failed to process changes org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS): *** CONTEXTS IN ERROR: Name -> Error vfsfile:/C:/Programme/jboss/server/default/deploy/hska.ear/ -> java.lang.RuntimeException: <injection-target> could not be found: de.hska.bestellverwaltung.BestellverwaltungBean.hskaPersistence at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:676) at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:661) at org.jboss.system.server.profileservice.hotdeploy.HDScanner.scan(HDScanner.java:291) at org.jboss.system.server.profileservice.hotdeploy.HDScanner.run(HDScanner.java:221) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619)