Hi,
We are migrating from 4.2.3 to 5.1.0 (JDK 6). We have migrated some
applications but I have a question about a problem we faced when migrating an
ear file.
After deploying I saw the following error in the log
| DEPLOYMENTS MISSING DEPENDENCIES:
| Deployment
"jboss.j2ee:ear=billing.ear,jar=billing-services-2.0-SNAPSHOT.jar,name=BillingLogicBean,service=EJB3_endpoint"
is missing the following dependencies:
| Dependency
"jboss.j2ee:ear=billing.ear,jar=billing-services-2.0-SNAPSHOT.jar,name=BillingLogicBean,service=EJB3"
(should be in state "Configured", but is actually in state "**ERROR**")
|
| DEPLOYMENTS IN ERROR:
| Deployment
"jboss.j2ee:ear=billing.ear,jar=billing-services-2.0-SNAPSHOT.jar,name=BillingLogicBean,service=EJB3"
is in error due to the following reason(s): java.lang.AssertionError:
container is null, **ERROR**
|
|
This error has to do with The BillingLogicBean that depends on another EJB
called RipePrintingService. For some reason we are referring to it as Local ejb
although it is deployed as seperate jar on the same machine. I did not know
this was possible but apparently it is.
Before migration we referred to it as follows (and that worked):
| @Stateless
| public class BillingLogicBean implements BillingLogic {
| @EJB
| private RipePrintingService printingService;
|
| // rest omitted
| }
|
Further up the logfile the following stacktrace was printed (we have assertions
put on)
| 2009-09-04 13:32:25,232 DEBUG
[org.jboss.ejb3.deployers.JBoss5DeploymentScope] (main) Failed to find endpoint
for interface: interface net.ripe.commons.printing.RipePrintingService
| 2009-09-04 13:32:25,232 ERROR
[org.jboss.kernel.plugins.dependency.AbstractKernelController] (main) Error
installing to Start:
name=jboss.j2ee:ear=billing.ear,jar=billing-services-2.0-SNAPSHOT.jar,name=BillingLogicBean,service=EJB3
state=Create
| java.lang.AssertionError: container is null
| at
org.jboss.ejb3.proxy.factory.ProxyFactoryHelper.getJndiName(ProxyFactoryHelper.java:410)
| at org.jboss.ejb3.Ejb3Deployment.getEjbJndiName(Ejb3Deployment.java:403)
| at org.jboss.ejb3.EJBContainer.getEjbJndiName(EJBContainer.java:1521)
| at org.jboss.injection.EjbEncInjector.inject(EjbEncInjector.java:80)
| at org.jboss.ejb3.EJBContainer.lockedStart(EJBContainer.java:900)
| at
org.jboss.ejb3.session.SessionContainer.lockedStart(SessionContainer.java:200)
| at
org.jboss.ejb3.session.SessionSpecContainer.lockedStart(SessionSpecContainer.java:577)
| at
org.jboss.ejb3.stateless.StatelessContainer.lockedStart(StatelessContainer.java:192)
| at org.jboss.ejb3.EJBContainer.start(EJBContainer.java:884)
| at sun.reflect.GeneratedMethodAccessor325.invoke(Unknown Source)
| at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:597)
| at
org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:59)
| at
org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:150)
| at
org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
| at
org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:241)
| at
org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
| at
org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:109)
| at
org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:70)
| at
org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:221)
| at
org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
| at
org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
| at
org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
| at
org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
| at
org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
| at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
| at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
| at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
| at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:774)
| at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:540)
| at
org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:121)
| at
org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:51)
| at
org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:62)
| at
org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
| at
org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1178)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1210)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
| at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
| at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
| at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
| at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
| at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
| at
org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
| at
org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:702)
| at
org.jboss.system.server.profileservice.repository.MainDeployerAdapter.process(MainDeployerAdapter.java:117)
| at
org.jboss.system.server.profileservice.repository.ProfileDeployAction.install(ProfileDeployAction.java:70)
| at
org.jboss.system.server.profileservice.repository.AbstractProfileAction.install(AbstractProfileAction.java:53)
| at
org.jboss.system.server.profileservice.repository.AbstractProfileService.install(AbstractProfileService.java:361)
| at
org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
| at
org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1631)
| at
org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1082)
| at
org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
| at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
| at
org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
| at
org.jboss.system.server.profileservice.repository.AbstractProfileService.activateProfile(AbstractProfileService.java:306)
| at
org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:271)
| at
org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:461)
| at org.jboss.Main.boot(Main.java:221)
| at org.jboss.Main$1.run(Main.java:556)
| at java.lang.Thread.run(Thread.java:619)
| 2009-09-04 13:32:25,296 WARN
[org.jboss.wsf.container.jboss50.deployer.WebServiceDeployerEJB] (main) Ingore
ejb deployment with null classname:
org.jboss.metadata.ejb.jboss.jbosssessionbeanmetad...@bab8daf9{billingdomainrepositorybean}
| 2009-09-04 13:32:25,296 WARN
[org.jboss.wsf.container.jboss50.deployer.WebServiceDeployerEJB] (main) Ingore
ejb deployment with null classname:
org.jboss.metadata.ejb.jboss.jbosssessionbeanmetad...@bab8daf9{billingdomainrepositorybean}
|
And a little further up I noticed a logging statement referring to
https://jira.jboss.org/jira/browse/EJBTHREE-1289
Complete log statement
| 2009-09-04 13:32:16,898 DEBUG
[org.jboss.ejb3.deployers.JBoss5DeploymentScope] (main) Failed to find endpoint
for interface: interface net.ripe.commons.printing.RipePrintingService
| 2009-09-04 13:32:16,899 WARN [org.jboss.injection.EJBRemoteHandler] (main)
EJBTHREE-1289: Using legacy EjbEncInjector, because mappedName for enc
"env/RipePrintingServiceBean", field "printingService" is null
(container.environmentRefGroup.annotatedEjbReferences =
[AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/customerFacade,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/CustomerFacadeBean/local-net.ripe.domain.billing.customerservice.CustomerFacade,beanInterface=interface
net.ripe.domain.billing.customerservice.CustomerFacade},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/afasIntegration,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/AfasIntegrationBean/local-net.ripe.billing.services.afas.AfasIntegration,beanInterface=interface
net.ripe.billing.services.afas.AfasIntegration}, AnnotatedEJBRefe!
renceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/config,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/BillingConfigBean/local-net.ripe.billing.services.BillingConfig,beanInterface=interface
net.ripe.billing.services.BillingConfig},
AnnotatedEJBReferenceMetaData{name=BillingDomainRepositoryBean,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/BillingDomainRepositoryBean/local-net.ripe.domain.billing.interfaces.BillingDomainRepository,beanInterface=interface
net.ripe.domain.billing.interfaces.BillingDomainRepository},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/asyncManager,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/AsyncManagerBean/local-net.ripe.billing.services.async.AsyncManager,beanInterface=interface
net.ripe.billing.services.async.AsyncManager}, AnnotatedE!
JBReferenceMetaData{name=RipePrintingServiceBean,ejb-ref-type=!
null,lin
k=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=null,beanInterface=interface
net.ripe.commons.printing.RipePrintingService},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/mailTemplateLoader,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/MailTemplateLoaderBean/local-net.ripe.billing.services.logic.MailTemplateLoader,beanInterface=interface
net.ripe.billing.services.logic.MailTemplateLoader},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/closeOrganisationService,ejb-ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/CloseOrganisationServiceBean/local-net.ripe.billing.services.logic.CloseOrganisationService,beanInterface=interface
net.ripe.billing.services.logic.CloseOrganisationService},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/paymentService,ejb-!
ref-type=null,link=null,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/PaymentServiceBean/local-net.ripe.billing.services.PaymentService,beanInterface=interface
net.ripe.billing.services.PaymentService},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/membershipInvoicingWorkflow,ejb-ref-type=null,link=MembershipInvoicingWorkflowBean,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/MembershipInvoicingWorkflowBean/local-net.ripe.billing.orchestration.InvoicingWorkflow,beanInterface=interface
net.ripe.billing.orchestration.InvoicingWorkflow},
AnnotatedEJBReferenceMetaData{name=net.ripe.billing.services.ejb.BillingLogicBean/meetingInvoicingWorkflow,ejb-ref-type=null,link=MeetingInvoicingWorkflowBean,ignore-dependecy=false,mapped/jndi-name=null,resolved-jndi-name=billing/MeetingInvoicingWorkflowBean/local-net.ripe.billing.orchestration.InvoicingWorkflow,beanInterface=interface
net.ripe.billing.orch!
estration.InvoicingWorkflow}])
|
Now we solved it by adding the "mappedName" property to the @EJB annotation on
the RipePrintingService property in the BillingLogicBean:
| @EJB(mappedName="RipePrintingServiceBean/local")
| private RipePrintingService printingService;
|
The thing is I do not understand why I need to do this in JBoss 5.1.0, it was
working in 4.2.3 without the mappedName property.
Thanks in advance.
Lars
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4253587#4253587
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4253587
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user