3.8. Reference

3.8.1. Implicit Module Dependencies

The following table lists the modules that are automatically added to deployments as dependencies and the conditions that trigger the dependency.

Table 3.1. Implicit Module Dependencies

Subsystem Responsible for Adding the Dependency Dependencies That Are Always Added Dependencies That Are Conditionally Added Conditions That Trigger the Addition of the Dependency
Core Server
  • javax.api
  • sun.jdk
  • org.jboss.vfs
EE subsystem
  • javaee.api
EJB 3 subsystem
  • javaee.api
The presence of an ejb-jar.xml file within a valid location in the deployment, as described in the Java EE 6 specification.
The presence of annotation-based EJBs, for example: @Stateless, @Stateful, @MessageDriven
JAX-RS (RESTEasy) subsystem
  • javax.xml.bind.api
  • org.jboss.resteasy.resteasy-atom-provider
  • org.jboss.resteasy.resteasy-cdi
  • org.jboss.resteasy.resteasy-jaxrs
  • org.jboss.resteasy.resteasy-jaxb-provider
  • org.jboss.resteasy.resteasy-jackson-provider
  • org.jboss.resteasy.resteasy-jsapi
  • org.jboss.resteasy.resteasy-multipart-provider
  • org.jboss.resteasy.async-http-servlet-30
The presence of JAX-RS annotations in the deployment.
JCA subsystem
  • javax.resource.api
  • javax.jms.api
  • javax.validation.api
  • org.jboss.logging
  • org.jboss.ironjacamar.api
  • org.jboss.ironjacamar.impl
  • org.hibernate.validator
The deployment of a resource adapter (RAR) archive.
JPA (Hibernate) subsystem
  • javax.persistence.api
  • javaee.api
  • org.jboss.as.jpa
  • org.hibernate
The presence of an @PersistenceUnit or @PersistenceContext annotation, or a <persistence-unit-ref> or <persistence-context-ref> element in a deployment descriptor.
JBoss EAP 6 maps persistence provider names to module names. If you name a specific provider in the persistence.xml file, a dependency is added for the appropriate module. If this not the desired behavior, you can exclude it using a jboss-deployment-structure.xml file.
Logging subsystem
  • org.jboss.logging
  • org.apache.log4j
  • org.apache.commons.logging
  • org.slf4j
  • org.jboss.logging.jul-to-slf4j-stub
These dependencies are always added unless the add-logging-api-dependencies attribute is set to false.
SAR subsystem
  • org.jboss.logging
  • org.jboss.modules
The deployment of a SAR archive.
Security subsystem
  • org.picketbox
Web subsystem
  • javaee.api
  • com.sun.jsf-impl
  • org.hibernate.validator
  • org.jboss.as.web
  • org.jboss.logging
The deployment of a WAR archive. JavaServer Faces (JSF) is added only if it is used.
Web Services subsystem
  • org.jboss.ws.api
  • org.jboss.ws.spi
Weld (CDI) Subsystem
  • javax.persistence.api
  • javaee.api
  • org.javassist
  • org.jboss.interceptor
  • org.jboss.as.weld
  • org.jboss.logging
  • org.jboss.weld.core
  • org.jboss.weld.api
  • org.jboss.weld.spi
The presence of a beans.xml file in the deployment.