6 Replies Latest reply on Jul 21, 2005 3:55 AM by Murali Ravipudi

    JBoss 4.0.2 breaks my web app

    Adrian Wilford Newbie

      Hi all,
      I am trying to upgrade my JBoss installation to 4.0.2, and I am having a problem because my app deploys fine on JBoss 4.0.2RC1, but when I try to deploy the same .ear file in the release version 4.0.2, I get the following Exception:

      12:20:10,200 INFO [EARDeployer] Init J2EE application: file:/usr/local/bin/jboss-4.0.2/server/default/deploy/Gtor.ear
      12:20:17,658 INFO [TomcatDeployer] deploy, ctxPath=/, warUrl=file:/usr/local/bin/jboss-4.0.2/server/default/tmp/deploy/tmp39045Gtor.ear-contents/Gtor.war/
      12:20:18,502 INFO [[/]] Marking servlet Gtor as unavailable
      12:20:18,503 ERROR [[/]] Error loading WebappClassLoader
      delegate: false
      repositories:
      ----------> Parent Classloader:
      java.net.FactoryURLClassLoader@75be38
      ui.servlets.GtorActionServlet
      java.lang.ClassNotFoundException: ui.servlets.GtorActionServlet

      The app is just a servlet based web app, but I am bundling it with a web service each in separate .war files inside the .ear file.
      I am also putting the jar files that the app is dependent on (this includes a jar file containing the servlet that JBoss can't find) into the root of the ear.
      I am specifying all these dependent jar files in the META-INF/MANIFEST.MF file
      my MANIFEST.MF file looks like this:

      Manifest-Version: 1.0
      Ant-Version: Apache Ant 1.5.4
      Created-By: 1.4.1_01-b01 (Sun Microsystems Inc.)
      Class-Path: Gtor.jar activation.jar axis.jar cryptix32.jar jce.jar junit.jar mail.jar standard.jar struts.jar xercesImpl.jar xml-apis.jar xmlParserAPIs.jar xstream-1.1.jar

      The jar file containing the servlet is Gtor.jar.

      Does anyone have any idea why this works in 4.0.2RC1, but not in the release version 4.0.2?

      Any help appreciated!

      Thanks,
      Adrian

        • 1. Re: JBoss 4.0.2 breaks my web app
          tomerbd2 Newbie

          I have a very similar problem (i'm working with 4.0.2RC1)

          My ear looks like this:


          <pre>
          my.ear
          lib/my_common.jar
          my.war
          META-INF/MANIFEST.MF that contains a Class-Path: ./lib/my_common.jar
          </pre>


          Now although I have the reference

          Class-Path: ./lib/my_common.jar

          I get a class not found exception when jboss loads my war although that class exists in my_common.jar

          anyone knows why?

          • 2. Re: JBoss 4.0.2 breaks my web app
            Fairoz Sharif Newbie

            JBOSS 4.0.2 uses unified ClassLoader to isolate ur one app from another most probably bcause of classes in twoi diff application Go thrgh ClassLoading configuratyion of jboss in WIki Pages of jboss

            • 3. Re: JBoss 4.0.2 breaks my web app
              tomerbd2 Newbie

              hmm i still dont get it, how can i make the following to work?


              Class-Path: ./lib/my_common.jar



              • 5. Re: JBoss 4.0.2 breaks my web app
                Lu Huang Newbie

                I'm having a similar situation: the app ran in Jboss 4.0.1sp1 but won't in Jboss 4.0.2. The jar file containing the class: org.apache.cactus.server.runner.ServletTestRunner (cactus-1.7.jar) is in the server/default/lib directory. Can someone point us to a solution?

                The error message:

                10:17:03,730 INFO [[/LightSpeedXmlWeb]] Marking servlet ServletTestRunner as unavailable
                10:17:03,735 ERROR [[/LightSpeedXmlWeb]] Error loading WebappClassLoader^M
                delegate: false^M
                repositories:^M
                /WEB-INF/classes/^M
                ----------> Parent Classloader:^M
                java.net.FactoryURLClassLoader@4073016^M
                org.apache.cactus.server.runner.ServletTestRunner
                java.lang.ClassNotFoundException: org.apache.cactus.server.runner.ServletTestRunner
                at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
                at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
                at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1027)



                "adrianwilford" wrote:
                Hi all,
                I am trying to upgrade my JBoss installation to 4.0.2, and I am having a problem because my app deploys fine on JBoss 4.0.2RC1, but when I try to deploy the same .ear file in the release version 4.0.2, I get the following Exception:

                12:20:10,200 INFO [EARDeployer] Init J2EE application: file:/usr/local/bin/jboss-4.0.2/server/default/deploy/Gtor.ear
                12:20:17,658 INFO [TomcatDeployer] deploy, ctxPath=/, warUrl=file:/usr/local/bin/jboss-4.0.2/server/default/tmp/deploy/tmp39045Gtor.ear-contents/Gtor.war/
                12:20:18,502 INFO [[/]] Marking servlet Gtor as unavailable
                12:20:18,503 ERROR [[/]] Error loading WebappClassLoader
                delegate: false
                repositories:
                ----------> Parent Classloader:
                java.net.FactoryURLClassLoader@75be38
                ui.servlets.GtorActionServlet
                java.lang.ClassNotFoundException: ui.servlets.GtorActionServlet

                The app is just a servlet based web app, but I am bundling it with a web service each in separate .war files inside the .ear file.
                I am also putting the jar files that the app is dependent on (this includes a jar file containing the servlet that JBoss can't find) into the root of the ear.
                I am specifying all these dependent jar files in the META-INF/MANIFEST.MF file
                my MANIFEST.MF file looks like this:

                Manifest-Version: 1.0
                Ant-Version: Apache Ant 1.5.4
                Created-By: 1.4.1_01-b01 (Sun Microsystems Inc.)
                Class-Path: Gtor.jar activation.jar axis.jar cryptix32.jar jce.jar junit.jar mail.jar standard.jar struts.jar xercesImpl.jar xml-apis.jar xmlParserAPIs.jar xstream-1.1.jar

                The jar file containing the servlet is Gtor.jar.

                Does anyone have any idea why this works in 4.0.2RC1, but not in the release version 4.0.2?

                Any help appreciated!

                Thanks,
                Adrian


                • 6. Re: JBoss 4.0.2 breaks my web app
                  Murali Ravipudi Newbie

                  tomerbd2:

                  Find the below line in deploy\jbossweb-tomcat55.sar\META-INF\jboss-service.xml

                  <attribute name="UseJBossWebLoader">false</attribute>
                  


                  and change it to true, that might help.

                  This was set to false by default in 4.0.1sp1, and to true in 4.0.2, iirc.

                  Murali