Tenho uma aplicação que gera dois .war, dentro dessa tenho alguns .jar em comum com o Jboss, os quais não posso retirar.
Tentei fazer o isolamento do Jboss, das seguintes formas:
Através do jboss-classloading.xml:
Demystifying the JBoss5 jboss-classloading.xml file
Através do jboss-web.xml:
Como fazer o deploy de uma app grails no JBoss
Porém os erros persistem, alguém teria mais alguma idéia ?
Seria possível retirar os .jar do Jboss ? ou colocar ? tentei colocar na pasta “endorsed” e não funcionou.
Se alguém puder ajudar, desde já agradeço !
Estou com a versão 6, também preciso retirar o console admin da versão, desde já agradeço !
Será que você não tem que corrigir seus imports?
Será que você não tem que corrigir seus imports?[/quote]
Ai está o “X” da questão, não posso retirar nenhum jar, por isso estou tentando o isolamento, mas não está dando certo.
Obrigado !
Consegui rodar a aplicação, porém estou com esse erro agora, depois que conseguir solucionar posto toda a solução:
java.lang.NoClassDefFoundError: org/w3c/dom/UserDataHandler
at org.apache.cxf.transport.http.WSDLQueryHandler.writeResponse(WSDLQueryHandler.java:237)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:172)
at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(AbstractCXFServlet.java:148)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:179)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:108)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:159)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:324)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242)
at br.com.cpaconsulting.dao.orm.util.ORMRequestFilter.doFilter(ORMRequestFilter.java:39)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242)
at br.com.cpaconsulting.pp.common.filter.AccessFilter.doFilter(AccessFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242)
at br.com.cpaconsulting.cep.strutsplus.StrutsPlusFilter.doFilter(StrutsPlusFilter.java:46)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:181)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:88)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:100)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:159)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:53)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:654)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: Unexpected error during load of: org.w3c.dom.UserDataHandler, msg=loader constraint violation: loader (instance of org/jboss/classloader/spi/base/BaseClassLoader) previously initiated loading for a different type with name "org/w3c/dom/UserDataHandler"
at org.jboss.classloader.spi.base.ClassLoaderManager.process(ClassLoaderManager.java:176)
at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseClassLoaderDomain.java:280)
at org.jboss.classloader.spi.base.BaseClassLoaderDomain.loadClass(BaseClassLoaderDomain.java:1172)
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassFromDomain(BaseClassLoader.java:886)
at org.jboss.classloader.spi.base.BaseClassLoader.doLoadClass(BaseClassLoader.java:505)
at org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:450)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 33 more
Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/jboss/classloader/spi/base/BaseClassLoader) previously initiated loading for a different type with name "org/w3c/dom/UserDataHandler"
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at org.jboss.classloader.spi.base.BaseClassLoader.access$200(BaseClassLoader.java:52)
at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:650)
at org.jboss.classloader.spi.base.BaseClassLoader$2.run(BaseClassLoader.java:609)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseClassLoader.java:608)
at org.jboss.classloader.spi.base.BaseClassLoader.loadClassLocally(BaseClassLoader.java:585)
at org.jboss.classloader.spi.base.BaseDelegateLoader.loadClass(BaseDelegateLoader.java:156)
at org.jboss.classloader.spi.filter.FilteredDelegateLoader.doLoadClass(FilteredDelegateLoader.java:141)
at org.jboss.classloader.spi.filter.FilteredDelegateLoader.loadClass(FilteredDelegateLoader.java:132)
at org.jboss.classloader.spi.base.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:461)
at org.jboss.classloader.spi.base.ClassLoaderManager.nextTask(ClassLoaderManager.java:262)
at org.jboss.classloader.spi.base.ClassLoaderManager.process(ClassLoaderManager.java:161)
... 39 more
Bem, solucionei da seguinte forma:
Dentro do meu projeto em WEB-INF/libs criei um diretório “endorsed”.
O segredo era descobrir os jars em conflito e colocar apenas os jars em conflito no diretório.