Okay, i have found the culprit - thanks to the logs you asked for. The EjbModuleDeployer
(a.k.a SecondDeployer) even though it attaches the Ejb3Deployment to the unit, it never
declares/exposes it as an output (i.e. doesn't addOutput):
| public class EjbModuleDeployer...
| {
|
| public EjbModuleDeployer()
| {
| addOutput(JBossEnterpriseBeanMetaData.class);
| addOutput(BeanMetaData.class);
|
| // Jaikiran: The Ejb3Deployment is not set as an output
| // even though this deployer adds it as an attachment to the unit. see below
| }
|
| public void deploy(DeploymentUnit unit)
| {
| // do some stuff
|
| // Add Ejb3Deployment to unit (even though the deployer doesn't declare this
as an output)
| unit.addAttachment(Ejb3Deployment.class,obj);
| }
|
| ...
| }
|
Adding a addOutput(Ejb3Deployment.class) should fix this issue for me. I believe the
ordering of the deploying is done based on the input/output of various deployers.
But, i still think MC should have handled this differently (not complaining ;-) ). The
FinalDeployer was expecting 2 inputs and until the 2 inputs were available, it
shouldn't have been invoked.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4217769#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...