5 Replies Latest reply on Apr 5, 2013 11:18 AM by jaigates

    Migrating ejb3 appliction from jboss eap 5.x to jboss eap 6.x

    jaigates

      We are build a ejb3(ssb,mdb)+ ws application bulled in single EAR workign fine in jboss eap 5.2 I am trying tom igrate from jboss eap 5.2 to eap  6.0.1. after some hickups i configures data sources, queues in jboss eap  6.0.1 and trying to deploy my ear file and i am getting lot of issues.

      The exisiting applicatio was developed in jee5 standards containg ejb3,hibernate3.x,drools libraries involved.

       

      Is there any tools which can help migrating applications from 5.x to 6.x or any comprehensive checklist site which can help me to do this.

       

       

      Latest exception i have got is  ::

       

      7:53:44,943 INFO  [org.jboss.as.osgi] (MSC service thread 1-6) JBAS011907: Register module: Module "deployment.GlobalAPI-EAR.ear:main" from Service Module Loader

      17:53:44,989 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.deployment.subunit."GlobalAPI-EAR.ear"."EJB.jar".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.subunit."GlobalAPI-EAR.ear"."EJB.jar".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment "EJB.jar" of deployment "GlobalAPI-EAR.ear"

          at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:123) [jboss-as-server-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]

          at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA-redhat-2.jar:1.0.2.GA-redhat-2]

          at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA-redhat-2.jar:1.0.2.GA-redhat-2]

          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_03]

          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_03]

          at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_03]

      Caused by: java.lang.NullPointerException

          at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.addJndiBinding(ModuleJndiBindingProcessor.java:261)

          at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor$1.handle(ModuleJndiBindingProcessor.java:194)

          at org.jboss.as.ee.component.ClassDescriptionTraversal.run(ClassDescriptionTraversal.java:54)

          at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.processClassConfigurations(ModuleJndiBindingProcessor.java:162)

          at org.jboss.as.ee.component.deployers.ModuleJndiBindingProcessor.deploy(ModuleJndiBindingProcessor.java:155)

          at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116) [jboss-as-server-7.1.3.Final-redhat-4.jar:7.1.3.Final-redhat-4]

          ... 5 more

       

      17:53:45,253 INFO  [org.jboss.as.server] (management-handler-thread - 4) JBAS015870: Deploy of deployment "GlobalAPI-EAR.ear" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.subunit.\"GlobalAPI-EAR.ear\".\"EJB.jar\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"GlobalAPI-EAR.ear\".\"EJB.jar\".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment \"EJB.jar\" of deployment \"GlobalAPI-EAR.ear\"

          Caused by: java.lang.NullPointerException"},"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]","jboss.deployment.unit.\"GlobalAPI-EAR.ear\".CLEANUP Missing[JBAS014861: <one or more transitive dependencies>]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.ValidatorFactory Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.HandleDelegate Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.ORB Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]","jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.Validator Missing[jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]"]}

      17:53:45,283 INFO  [org.jboss.as.osgi] (MSC service thread 1-6) JBAS011908: Unregister module: Module "deployment.GlobalAPI-EAR.ear:main" from Service Module Loader

        • 1. Re: Migrating ejb3 appliction from jboss eap 5.x to jboss eap 6.x
          ctomc

          This code was changed/fixed in EAP 6.1.

           

          would it be possible for you to try with EAP 6.1.0.Alpha?

           

           

          --

          tomaz

          • 2. Re: Migrating ejb3 appliction from jboss eap 5.x to jboss eap 6.x
            jaigates

            alpha version could be liitle high as of now. i assume this is becos of jndi expectation from eap 6. could you clarify this so that i can try to alter.

            Also, if any links available as checklist would be great.

            • 3. Re: Migrating ejb3 appliction from jboss eap 5.x to jboss eap 6.x
              jaigates

              okay, i have downloaded eap 6.1 alpha...getting similar error now

               

              20:24:10,938 ERROR [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "GlobalAPI-EAR.ear" was rolled back with the following failure message:

              {

                  "JBAS014671: Failed services" => {"jboss.deployment.subunit.\"GlobalAPI-EAR.ear\".\"EJB.jar\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.subunit.\"GlobalAPI-EAR.ear\".\"EJB.jar\".INSTALL: JBAS018733: Failed to process phase INSTALL of subdeployment \"EJB.jar\" of deployment \"GlobalAPI-EAR.ear\"

                  Caused by: java.lang.NullPointerException"},

                  "JBAS014771: Services with missing/unavailable dependencies" => [

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.QueueUtils]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]",

                      "jboss.deployment.unit.\"GlobalAPI-EAR.ear\".deploymentCompleteService is missing [jboss.deployment.subunit.\"GlobalAPI-EAR.ear\".\"EJB.jar\".deploymentCompleteService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.AuthorizationDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolRequestMDB]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.HandleDelegate is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService.ValidatorFactory is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolService]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO.Validator is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.StatusDAO]",

                      "jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO.ORB is missing [jboss.naming.context.java.comp.GlobalAPI-EAR.EJB.SchoolDAO]"

                  ]

              }

               

              let me know how to solve this.

              • 4. Re: Migrating ejb3 appliction from jboss eap 5.x to jboss eap 6.x
                jaigates

                Solved this issue.

                Looks like its a bug and appropriate validations errors and thrown for this scenario.

                 

                Root cause was there was some @resource tag with name,mappedname,type attributes, fixed it by only retaining name attribute

                 

                problem

                @Resource(name = <<somename>>), mappedName =<<somename>>, type = javax.jms.Queue.class)

                 

                fix

                @Resource(name = <<somename>>)