6 Replies Latest reply on Apr 28, 2008 9:41 AM by Timo Wiedenmann

    Deploy ZIP vs. EAR

    Timo Wiedenmann Newbie

      Hey,

      is there anything to think about when I deploy a ZIP file instead of an EAR file ?

      I currently build a rich client application, which will use JBoss Remoting for communication with the AppServer over HTTPS.
      Therefore I created a SAR for the transport connector MBean, a WAR for the servlets and a JAR for the session beans.

      If I deploy those as EAR with an application.xml there seems to be a problem with the classloading - the servlet cannot find the session beans.

      Deploying the components one by one works, so I pack them all in a ZIP file which will be deployed.

      So, is there any problem / risk doing this ?

      Thx, Timo

        • 1. Re: Deploy ZIP vs. EAR
          jaikiran pai Master

          The zip file is not a valid deployable and you will not be able to deploy it. You will have to use the EAR file and try to fix the classloading issue.

          • 2. Re: Deploy ZIP vs. EAR
            Timo Wiedenmann Newbie

            Hello,

            the deployment of the ZIP file works in a way, that all included components (WAR, JAR and SAR) are deployed one by one - so this is usable for packaging the components (1. goal) and have them all deployed (2. goal).

            I tried this with the 4.2.2 GA release - will this behavior changed in future ?

            • 3. Re: Deploy ZIP vs. EAR
              jaikiran pai Master

               

              "twiedenmann" wrote:
              Hello,

              the deployment of the ZIP file works in a way, that all included components (WAR, JAR and SAR) are deployed one by one - so this is usable for packaging the components (1. goal) and have them all deployed (2. goal).

              I tried this with the 4.2.2 GA release - will this behavior changed in future ?


              This is actually news to me :) As far as i know and from what i have tried, a file with .zip extension (in deploy folder) does not deploy. Can you post the deployment logs that you see on the console (just to make sure that the deployment is indeed happening). Which operating system do you use?

              • 4. Re: Deploy ZIP vs. EAR
                Timo Wiedenmann Newbie

                This is on a Windows (Vista Home Prem.) machine.

                Here is the Deployment log - i set the MAIN DEPLOYER to log level "Debug" for some more information ...

                14:04:54,026 INFO [Server] JBoss (MX MicroKernel) [4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)] Started in 1m:22s:79ms
                14:05:18,940 DEBUG [MainDeployer] Starting deployment of package: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:18,940 DEBUG [MainDeployer] Starting deployment of package: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:18,941 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:18,941 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:18,942 DEBUG [MainDeployer] Copying file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip -> D:\jboss\jboss-4.2.2.GA\server\default\tmp\deploy\tmp6928usi_server.zip
                14:05:18,942 DEBUG [MainDeployer] Copying file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip -> D:\jboss\jboss-4.2.2.GA\server\default\tmp\deploy\tmp6928usi_server.zip
                14:05:19,067 DEBUG [MainDeployer] using deployer org.jboss.deployment.JARDeployer@e0a386
                14:05:19,067 DEBUG [MainDeployer] using deployer org.jboss.deployment.JARDeployer@e0a386
                14:05:19,318 DEBUG [MainDeployer] found 4 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,318 DEBUG [MainDeployer] found 4 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,319 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,319 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,320 DEBUG [MainDeployer] using deployer org.jboss.deployment.SARDeployer@113a53d
                14:05:19,320 DEBUG [MainDeployer] using deployer org.jboss.deployment.SARDeployer@113a53d
                14:05:19,338 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,338 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,338 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,338 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,361 DEBUG [MainDeployer] using deployer org.jboss.deployment.JARDeployer@e0a386
                14:05:19,361 DEBUG [MainDeployer] using deployer org.jboss.deployment.JARDeployer@e0a386
                14:05:19,382 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,382 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,382 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,382 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,386 DEBUG [MainDeployer] using deployer MBeanProxyExt[jboss.ejb3:service=EJB3Deployer]
                14:05:19,386 DEBUG [MainDeployer] using deployer MBeanProxyExt[jboss.ejb3:service=EJB3Deployer]
                14:05:19,397 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,397 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,397 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,397 DEBUG [MainDeployer] Starting deployment (init step) of package at: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,398 DEBUG [MainDeployer] using deployer MBeanProxyExt[jboss.web:service=WebServer]
                14:05:19,398 DEBUG [MainDeployer] using deployer MBeanProxyExt[jboss.web:service=WebServer]
                14:05:19,459 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,459 DEBUG [MainDeployer] found 0 subpackages of file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,460 DEBUG [MainDeployer] Watching new file: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,460 DEBUG [MainDeployer] Watching new file: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,460 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,460 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,461 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,461 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,488 DEBUG [MainDeployer] Done with create step of deploying remoting.sar
                14:05:19,488 DEBUG [MainDeployer] Done with create step of deploying remoting.sar
                14:05:19,489 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,489 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,489 DEBUG [MainDeployer] Done with create step of deploying strados2_usi_interface.jar
                14:05:19,489 DEBUG [MainDeployer] Done with create step of deploying strados2_usi_interface.jar
                14:05:19,489 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,489 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,839 DEBUG [MainDeployer] Done with create step of deploying usi_server.jar
                14:05:19,839 DEBUG [MainDeployer] Done with create step of deploying usi_server.jar
                14:05:19,840 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,840 DEBUG [MainDeployer] create step for deployment file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:19,848 DEBUG [MainDeployer] Done with create step of deploying servlet-invoker.war
                14:05:19,848 DEBUG [MainDeployer] Done with create step of deploying servlet-invoker.war
                14:05:19,848 DEBUG [MainDeployer] Done with create step of deploying usi_server.zip
                14:05:19,848 DEBUG [MainDeployer] Done with create step of deploying usi_server.zip
                14:05:19,848 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,848 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:19,849 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,849 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/remoting.sar
                14:05:19,849 DEBUG [Connector] Handler supplied is not an object name.
                14:05:19,850 DEBUG [Connector] org.jboss.remoting.transport.Connector@9ac272 started
                14:05:19,870 DEBUG [MainDeployer] End deployment start on package: remoting.sar
                14:05:19,870 DEBUG [MainDeployer] End deployment start on package: remoting.sar
                14:05:19,870 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,870 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/strados2_usi_interface.jar
                14:05:19,871 DEBUG [MainDeployer] End deployment start on package: strados2_usi_interface.jar
                14:05:19,871 DEBUG [MainDeployer] End deployment start on package: strados2_usi_interface.jar
                14:05:19,871 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,871 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:19,971 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
                14:05:19,988 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:jar=usi_server.jar,name=CalculatorHttpBean,service=EJB3 with dependencies:
                14:05:20,355 INFO [EJBContainer] STARTED EJB: org.jboss.tutorial.http_https.bean.CalculatorHttpBean ejbName: CalculatorHttpBean
                14:05:20,460 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
                14:05:20,460 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:jar=usi_server.jar,name=CalculatorHttpsBean,service=EJB3 with dependencies:
                14:05:20,492 INFO [EJBContainer] STARTED EJB: org.jboss.tutorial.http_https.bean.CalculatorHttpsBean ejbName: CalculatorHttpsBean
                14:05:20,540 INFO [EJB3Deployer] Deployed: file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/usi_server.jar
                14:05:20,551 DEBUG [MainDeployer] End deployment start on package: usi_server.jar
                14:05:20,551 DEBUG [MainDeployer] End deployment start on package: usi_server.jar
                14:05:20,552 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:20,552 DEBUG [MainDeployer] Begin deployment start file:/D:/jboss/jboss-4.2.2.GA/server/default/tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker.war
                14:05:20,606 INFO [TomcatDeployer] deploy, ctxPath=/servlet-invoker, warUrl=.../tmp/deploy/tmp6928usi_server.zip-contents/servlet-invoker-exp.war/
                14:05:21,283 INFO [STDOUT] MyHttpServlet.MyHttpServlet
                14:05:21,286 INFO [STDOUT] MyHttpServlet.getInvokerFromInvokerUrl
                14:05:21,287 INFO [STDOUT] MyHttpServlet.init
                14:05:21,287 INFO [STDOUT] MyHttpServlet.MyHttpServlet
                14:05:21,288 INFO [STDOUT] MyHttpServlet.getInvokerFromInvokerUrl
                14:05:21,288 INFO [STDOUT] MyHttpServlet.getInvokerFromInvokerName
                14:05:21,288 DEBUG [ServerInvokerServlet] localInvokerName=jboss.remoting:service=invoker,transport=servlet
                14:05:21,291 INFO [STDOUT] MyHttpServlet.init
                14:05:21,346 DEBUG [MainDeployer] End deployment start on package: servlet-invoker.war
                14:05:21,346 DEBUG [MainDeployer] End deployment start on package: servlet-invoker.war
                14:05:21,346 DEBUG [MainDeployer] End deployment start on package: usi_server.zip
                14:05:21,346 DEBUG [MainDeployer] End deployment start on package: usi_server.zip
                14:05:21,346 DEBUG [MainDeployer] Deployed package: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip
                14:05:21,346 DEBUG [MainDeployer] Deployed package: file:/D:/jboss/jboss-4.2.2.GA/server/default/deploy/usi_server.zip

                • 5. Re: Deploy ZIP vs. EAR
                  jaikiran pai Master

                  Hmmm.... Indeed the zip is deployed. I tried this on my local setup which some changes to my original zip file which was failing. Deploys on my setup too (as long as the zip file has valid deployables in it).

                  So coming back to your questions

                  is there anything to think about when I deploy a ZIP file instead of an EAR file ?
                  Deploying the components one by one works, so I pack them all in a ZIP file which will be deployed.
                  So, is there any problem / risk doing this ?


                  This is the first time i have deployed a zip file, so not sure what possible things you should keep in mind. However, a couple of things do come in mind with deploying a zip.

                  1) When you are deploying an EAR, you specify the order of deployment of through the application.xml file. Now when you are using a zip file, which cannot contain the application.xml (atleast for me it threw an deployment error when i had an application.xml in META-INF folder of the zip), i dont know what order is considered for deployment

                  2) The application.xml is also used for specifying the context of a war file within the EAR. Now when deploying through a zip file, i dont know where this can be specified.

                  There are a few more things that i can think about but probably not relevant right now. I have to maybe play around with the zip deployment to get answers to these. In the meantime maybe someone who already has experience on this, will be able to guide you further.






                  • 6. Re: Deploy ZIP vs. EAR
                    Timo Wiedenmann Newbie

                    Thanks for your effort and time !!

                    For the context root of a war file, the name of the war file is used.
                    E.g. my war file "servlet-invoker.war" uses the context root "/servlet-invoker".

                    Actually I would prefer using the ZIP deployment, because i dont need to change the class loading of the AppServer, which lead to other problems in former projects...