10 Replies Latest reply on Feb 28, 2008 11:55 PM by starksm64

    Removing deployers from core

    starksm64

      I see the deployers are still in the ejb3-core project. Can we drop these classes so there are not duplicates between this and jbossas?

        • 1. Re: Removing deployers from core
          alrubinger

          There are dependencies on the deployers elsewhere in EJB3 Core. Because I cant have Core depend on the deployers in EJB3 Module of AS (would introduce cyclic dependency), need some guidance as to what may be removed, and how the errors might be resolved.

          S,
          ALR

          • 2. Re: Removing deployers from core
            starksm64

            Dependencies preventing this include:

            - MockEjb3Deployment used by tests
            - org.jboss.ejb3.Ejb3Deployment references Ejb3Deployer for CacheFactoryRegistry, RemoteProxyFactoryRegistry, PersistenceManagerFactoryRegistry
            - EJBContainer casts to a specific JBoss5DependencyPolicy for addSupply. The supply/demands needs to be redone anyway.
            - ClientENCInjectionContainer references JBoss5DependencyPolicy and JBoss5DeploymentUnit
            - injection classes cast to a JBoss5DependencyPolicy.

            • 3. Re: Removing deployers from core
              starksm64

              The JBoss5DependencyPolicy supply/demands are not useful and are even obsolete in the mc. The dependency should just be on a name, and if we need an abstraction, the mc alias mechanism used.

              I'm starting to work on the injection stuff, so we'll see how that can be cleaned up.

              • 4. Re: Removing deployers from core
                alrubinger

                Beat me to the list of dependencies. :)

                Looks like I can start to hack away at this once the dependency policy stuff is moved off to MC.

                Won't worry about the mock deployment for now, those tests may even be moved to ejb3 module in AS. Unless we create some notion of a deployment in EJB3 Core itself for use in embedded/standalone.

                S,
                ALR

                • 5. Re: Removing deployers from core
                  anil.saldhana

                  Scott/ALR, what is the final goal here for EJB3? The external project contains ejb3 core and AS workspace contains the ejb3 integration code?

                  I have disabled ejb3 jacc layer. I will not venture into ejb3 land for a week.

                  • 6. Re: Removing deployers from core
                    alrubinger

                     

                    "anil.saldhana@jboss.com" wrote:
                    Scott/ALR, what is the final goal here for EJB3? The external project contains ejb3 core and AS workspace contains the ejb3 integration code?


                    Yes.

                    The *final* goal in terms of AS Build is:

                    Build AS Components
                    Build External Components dependent on AS Components (ie. EJB3)
                    Build AS Integration Modules
                    Run AS Build (Assembly) to create distribution

                    S,
                    ALR

                    • 7. Re: Removing deployers from core
                      starksm64

                      The minimal changes I need to get the Ejb3Deployer out so I can have the ejb3.deployer provide it are:

                      Ejb3Deployment - remove the Ejb3Deployer reference and just add setters for the CacheFactoryRegistry, RemoteProxyFactoryRegistry, PersistenceManagerFactoryRegistry. Also need to add a PoolFactoryRegistry.
                      EJBContainer - need to get the PoolFactoryRegistry from the Ejb3Deployment

                      I have made these changes locally and am testing them in the server.

                      • 8. Re: Removing deployers from core
                        alrubinger

                        Yes, the Registries are simply POJO objects that can be MC beans anywhere; were placed in the deployers initially as a convenience.

                        S,
                        ALR

                        • 9. Re: Removing deployers from core
                          starksm64

                          I have comitted the changes to trim the ejb3-core to only include 3 org.jboss.ejb3.deployers classes. I have also deleted all but the org.jboss.ejb3.deployers classes in jbossas/trunk. The test classes are also still there, but not included in the eclipse project settings.

                          • 10. Re: Removing deployers from core
                            starksm64

                            I also want to remove the org.jboss.ejb3.clientmodule as this is the only user of the org.jboss.ejb3.deployers.JBoss5DeploymentUnit/JBoss5DeploymentScope, and this needs to be coming from the jbossas integration code.