this is my jboss-deployment-structure.xml of EAR project.
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure >
<deployment>
<dependencies>
<module name="org.javassist" export="true" />
<module name="org.apache" export="true"/>
<module name="org.antlr" export="true"/>
<module name="org.dom4j" export="true"/>
<module name="org.apache" export="true"/>
<module name="org.hibernate" export="true"/>
</dependencies>
</deployment>
</jboss-deployment-structure>
and EAR project have my other projects in deployment path. some are JARS and one is WAR. and my one of Project uses the dependencies in the lib of EAR project. now I m removing the jars from lib folder and added above jboss-deployment-structure.xml . I guess jars are not being loaded and gives the error of not finding the required jars. this is the StackTrace
08:54:05,555 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/SBOS_Online].[resteasy-servlet]] (http--0.0.0.0-8080-1) Servlet.service() for servlet resteasy-servlet threw exception: org.jboss.resteasy.spi.UnhandledException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userBusinessImpl' defined in class path resource [config/applicationContext.xml]: Cannot resolve reference to bean 'userHibernateDAOImpl' while setting bean property 'userDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userHibernateDAOImpl' defined in class path resource [config/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [com.scs.sbos.dao.hibernate.impl.UserHibernateDAOImpl]: Constructor threw exception; nested exception is java.lang.Error: Unresolved compilation problems:
The import org.hibernate.Query cannot be resolved
The import org.hibernate.Session cannot be resolved
The import org.hibernate.SessionFactory cannot be resolved
The import org.hibernate.Transaction cannot be resolved
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
Transaction cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
Transaction cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
Transaction cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Query cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Query cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Query cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Session cannot be resolved to a type
SessionFactory cannot be resolved to a type
Query cannot be resolved to a type
SessionFactory cannot be resolved to a type
SessionFactory cannot be resolved to a type
SessionFactory cannot be resolved to a type
SessionFactory cannot be resolved to a type
at org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:340) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:214) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:190) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:540) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:502) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50) [resteasy-jaxrs-2.3.2.Final.jar:]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
It means Hibernate jars are not being added, but why thats the problem.
JBoss Deployment Structure File xml is a JBoss specific deployment descriptor that can be used to control class loading in a fine grained manner. It should be placed in the top level deployment, in META-INF (or WEB-INF for web deployments). It can do the following: Prevent automatic dependencies from being added.
JBoss Modules is designed to work with any existing library or application without changes, and its simple naming and resolution strategy is what makes that possible. Unlike OSGi, JBoss Modules does not implement a container; rather, it is a thin bootstrap wrapper for executing an application in a modular environment.
A jboss-deployment-structure.xml must be defined inside of the top-level deployment. That is, if you are deploying a WAR file directly, it may contain a descriptor. If you package the WAR inside of an EAR file, you need to move the content of the descriptor and define it inside of the jboss-deployment-structure.xml of the EAR file.
You need to go with a sub-deployment:
<jboss-deployment-structure>
<sub-deployment name="myapp.war">
<dependencies>
<module name="org.javassist" export="true" />
<module name="org.apache" export="true"/>
<module name="org.antlr" export="true"/>
<module name="org.dom4j" export="true"/>
<module name="org.apache" export="true"/>
<module name="org.hibernate" export="true"/>
</dependencies>
</sub-deployment>
</jboss-deployment-structure>
There is a good description of on the JBoss Docs
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With