33

I am trying to understand how to use JBoss EAP6 with Spring applications. I have a sample OpenShift application and it contains a jboss-deployment-structure.xml file.

I found some documentation about this file, but I am not clear why and when one should use those files with Spring applications. The content is the following:

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
   <deployment>
       <dependencies>
            <module name="com.h2database.h2"/>
            <module name="org.codehaus.jackson.jackson-core-asl"/>
            <module name="org.codehaus.jackson.jackson-mapper-asl"/>
            <module name="org.slf4j"/>
       </dependencies>
   </deployment>
</jboss-deployment-structure>

Why does one need to declare dependencies to modules? And what are modules in the JBoss paradigm? Is it possible to live without this xml file?

Jérôme Verstrynge
  • 57,710
  • 92
  • 283
  • 453

2 Answers2

39

As long as you don't have any classloading problems with your application you don't need the jboss-deployment-structure.xml file. But once you have trouble of such kind the dependency management in jboss-deployment-structure.xml would be your friend.

The article Modularized Java with JBoss Modules explains what modules are very well.

I think in short you can say that everything that is deployed as WAR, JAR or EAR is a module. These modules are referred to as dynamic modules. Beside them there are static modules in $JBOSS_HOME/modules. The only difference is how they are packaged.

Laurel
  • 5,965
  • 14
  • 31
  • 57
Thomas
  • 1,085
  • 9
  • 14
4

This is what I found on the internet:

"In order to avoid using JBoss provided logging APIs, we need to place the following kind of “jboss-deployment-structure.xml” file inside “/home/userone/ApplicationLevelLog4jDemo/src” so that we can exclude the jboss logging APIs for our application and our application can use it’s own version of logging APIs."

Source: http://middlewaremagic.com/

goto
  • 7,908
  • 10
  • 48
  • 58
Alex Mi
  • 1,409
  • 2
  • 21
  • 35