We are in the process of integration of CDI into one of our server.(its simillar to GF and JBOSS). In doing so I have designed constrution of BDA using BeanDeploymentArchive SPI, created DeploymentImpl class implementing Deployment SPI. Created services like ServletServices, ValidationServices, Securityservices etc.
But while constructing EjbServices I am having some doubt.
1. Application is having both EJB and WAR (Example Weld-translator project). Our server deploys EJBs first and then Web component.(We have two saperate methods for doing that). Question is when to call CDI related deployment process ? I need to call WeldBootstrap.startInitialization(), deploybeans() etc methods. Where exactly I need to implement this ?
2. EJBs are already deployed. Weld specification says WELD deligates the process to EJBcontainer to respect the vendor implemetaion. What is meaning of it ? If I skip the existing EJB deployemnt and call CDI deployment then CDI will deploy the EJBs ?
I am confused about this delgation and need some thoughts to proceed. We want make our server CDI compatible like JBOSS and GF.