<html><head></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:13px"><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr"><span id="yui_3_16_0_1_1447767119243_2945">i got jboss deployment descriptor:</span></div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr"><span><br></span></div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&lt;jboss-deployment-structure&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&nbsp; &nbsp; &lt;deployment&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&nbsp; &nbsp; &nbsp; &nbsp; &lt;dependencies&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;module name="org.keycloak.keycloak-adapter-spi"/&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&nbsp; &nbsp; &nbsp; &nbsp; &lt;/dependencies&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&nbsp; &nbsp; &lt;/deployment&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr"></div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">&lt;/jboss-deployment-structure&gt;</div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class=""><br></div><div id="yui_3_16_0_1_1447767119243_2886" dir="ltr" class="">should be the answer.</div>  <br><div class="qtdSeparateBR"><br><br></div><div class="yahoo_quoted" style="display: block;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 13px;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div dir="ltr"> <font size="2" face="Arial"> Il Martedì 17 Novembre 2015 13:35, alex orl &lt;alex_orl1079@yahoo.it&gt; ha scritto:<br> </font> </div>  <br><br> <div class="y_msg_container"><div id="yiv8400602980"><div><div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:13px;"><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271">hi to all,</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">i'm facing up to a class loading issue after i migrated from keycloak 1.5.0 final to keycloak 1.6.1 final.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">My application server is jboss WF9.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">Specifically i developed my multitenant module following your example.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">On Keycloak 1.5.0 adapter i saw that interface&nbsp;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">org.keycloak.adapters.spi.HttpFacade</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">was in the keycloak-adapter-core dependency while in the 1.6.1 &nbsp;it was moved into&nbsp;keycloak-adapter-spi.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">I've referenced these depencencies as provided scoped in my project pom (as showed in the example too):</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;dependency&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2551">                </span>&lt;groupId&gt;org.keycloak&lt;/groupId&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2554">                </span>&lt;artifactId&gt;keycloak-adapter-core&lt;/artifactId&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2557">                </span>&lt;version&gt;1.6.1.Final&lt;/version&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2560">                </span>&lt;scope&gt;provided&lt;/scope&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2563">                </span>&lt;/dependency&gt;<span class="yiv8400602980" style="white-space:pre-wrap;" id="yiv8400602980yui_3_16_0_1_1447762848817_2565">        </span> &nbsp;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &lt;dependency&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;groupId&gt;org.keycloak&lt;/groupId&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;artifactId&gt;keycloak-adapter-spi&lt;/artifactId&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;version&gt;1.6.1.Final&lt;/version&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;scope&gt;provided&lt;/scope&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; &lt;/dependency&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">I have installed the wf9 adapter adding:</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;extensions&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&lt;extension module="org.keycloak.keycloak-adapter-subsystem"/&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;/extensions&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;profile&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&lt;subsystem xmlns="urn:jboss:domain:keycloak:1.1"/&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;...</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;/profile&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">and&nbsp;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;server xmlns="urn:jboss:domain:1.4"&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&lt;subsystem xmlns="urn:jboss:domain:security:1.2"&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;security-domains&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;security-domain name="keycloak"&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;authentication&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;login-module code="org.keycloak.adapters.jboss.KeycloakLoginModule" flag="required"/&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/authentication&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp;&nbsp;&nbsp;&nbsp;&lt;/security-domain&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&lt;/security-domains&gt;</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">and eventually by copying the modules folder into the wf9 modules directory.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">When i deploy my</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">org.keycloak.adapters.KeycloakConfigResolver<br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">implementation i get this error:</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; ...]</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">13:02:55,997 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-6) MSC000001: Failed to start service jboss.deployment.unit."myapp.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."myapp.war".POST_MODU</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">LE: WFLYSRV0153: Failed to process phase POST_MODULE of deployment "myapp.war"</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:163)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Thread.run(Thread.java:745)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">Caused by: java.lang.RuntimeException: WFLYSRV0177: Error getting reflective information for class multitenancy.keycloak.PathBasedKeycloakConfigResolver with ClassLoader ModuleClassLoader for Module "deployment.myapp.war:main" fro</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">m Service Module Loader</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:70)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.ee.metadata.MethodAnnotationAggregator.runtimeAnnotationInformation(MethodAnnotationAggregator.java:57)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.handleAnnotations(InterceptorAnnotationProcessor.java:107)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.processComponentConfig(InterceptorAnnotationProcessor.java:92)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.ee.component.deployers.InterceptorAnnotationProcessor.deploy(InterceptorAnnotationProcessor.java:77)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:156)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; ... 5 more</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">Caused by: java.lang.NoClassDefFoundError: org/keycloak/adapters/spi/HttpFacade$Request</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Class.getDeclaredMethods0(Native Method)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Class.getDeclaredMethods(Class.java:1975)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.server.deployment.reflect.ClassReflectionIndex.&lt;init&gt;(ClassReflectionIndex.java:65)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.as.server.deployment.reflect.DeploymentReflectionIndex.getClassIndex(DeploymentReflectionIndex.java:66)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; ... 10 more</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">Caused by: java.lang.ClassNotFoundException: org.keycloak.adapters.spi.HttpFacade$Request from [Module "deployment.myapp.war:main" from Service Module Loader]</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:404)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:385)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:130)</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">&nbsp; &nbsp; &nbsp; &nbsp; ... 15 more</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">Why the&nbsp;keycloak-adapter-spi-1.6.1.Final.jar is not loaded by&nbsp;keycloak-adapter-spi module?</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">If i decide to include the jar inside the myapp.war archive...after deployment i get a Linkage exception error.</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">What am i doing wrong?</div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980"><br></div><div id="yiv8400602980yui_3_16_0_1_1447762848817_2271" dir="ltr" class="yiv8400602980">thanks</div></div></div></div><br><br></div>  </div> </div>  </div></div></body></html>