Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-8786

JBoss unpacks all jars from WEB-INF\lib of war file

    Details

    • Steps to Reproduce:
      Hide

      the easiest way is to take clean jboss 6.0.Final, in default/deploy there is ROOT.war, just to reproduce this issue we can create WEB-INF/lib folder there, and copy there any jar file (e.g. I copied commons-lang-2.5.jar). Now we start JBoss AS, go to tmp/vfs/automountXXXXX folder, here should be created folder like commons-lang-2.5.jar-YYYYYY entered which we see folder contents with unpacked content of commons-lang-2.5.jar

      Show
      the easiest way is to take clean jboss 6.0.Final, in default/deploy there is ROOT.war, just to reproduce this issue we can create WEB-INF/lib folder there, and copy there any jar file (e.g. I copied commons-lang-2.5.jar). Now we start JBoss AS, go to tmp/vfs/automountXXXXX folder, here should be created folder like commons-lang-2.5.jar-YYYYYY entered which we see folder contents with unpacked content of commons-lang-2.5.jar
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      1) One workaround I see is to repack my war files into ear and copy most of libraries to ear/lib folder
      OR
      2) The other workaround is to move the jars from WEB-INF/lib to JBOSS_HOME/server/<servername>/lib folder as one user tried out here http://community.jboss.org/message/589520#589520

      Show
      1) One workaround I see is to repack my war files into ear and copy most of libraries to ear/lib folder OR 2) The other workaround is to move the jars from WEB-INF/lib to JBOSS_HOME/server/<servername>/lib folder as one user tried out here http://community.jboss.org/message/589520#589520

      Description

      while starting JBoss AS it unpacks all jar files, which are located in WEB-INF/lib folder of each my war file. It means that in tmp folder mostly I see folder with jar file, and folder with its content. E.g. jackrabbit-server.war contains library asm-3.1.jar, then in tmp folder I see the following folders with files:

      asm-3.1.jar-83dc35ead0d41d41/asm-3.1.jar
      asm-3.1.jar-2a48f1c13ec7f25d/contents/"unpacked asm-3.1.jar"

      actually when I repack jackrabbit-server.war to jackrabbit-server.ear which contains jackrabbit-server.war and moved all its libraries to jackrabbit-server.ear/lib then I still see two folders in tmp:

      asm-3.1.jar-215a36131ebb088e/asm-3.1.jar
      asm-3.1.jar-14695f157664f00/contents/

      but in this case last folder is empty. So it still creates two folders, but does not unpack my library. Also I use exploded deployment so the question is only about jar files, not unpacking ear/war.

      the problem is that it slows down application server booting (when I repack all my war files as ear and moved war libraries to ear/lib folder then I save 2+ minutes at JBoss 6 booting...). If it is done deliberately (so it improves some performance at runtime), then would be nice to have a configuration option, so during development I can save time to boot my local JBoss AS

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                jaikiran jaikiran pai
                Reporter:
                aeternitas Maxym Pendyshchuk
              • Votes:
                19 Vote for this issue
                Watchers:
                28 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: