Updated the WildFly subsystem module to avoid using deprecated functionality from wildfly-core that's been removed in the latest version

Replaced instances of the deprecated class ModuleIdentifier with strings.
For now, maintain the use of the deprecated ModuleDependency constructor (while now using the module identifier strings from above in place of the ModuleIdentifier instances) in order to maximise compatibility. This ensures support for both WildFly, up to at least 37, and EAP 8.
Moved all the module identifier strings to KeycloakDependencyProcessor so they're all in one place. Removed duplicates and update references from other classes.

Closes #41669

Signed-off-by: Peter Griffiths <peter.griffiths@1spatial.com>
This commit is contained in:
Peter Griffiths 2025-08-05 14:47:49 +01:00 committed by Marek Posolda
parent fcedd14e40
commit 0ebb702877
3 changed files with 8 additions and 11 deletions

View File

@ -28,7 +28,6 @@ import org.jboss.as.web.common.WarMetaData;
import org.jboss.metadata.web.jboss.JBossWebMetaData;
import org.jboss.metadata.web.spec.LoginConfigMetaData;
import org.jboss.modules.Module;
import org.jboss.modules.ModuleIdentifier;
import org.jboss.modules.ModuleLoader;
/**
@ -36,10 +35,10 @@ import org.jboss.modules.ModuleLoader;
*/
public abstract class KeycloakDependencyProcessor implements DeploymentUnitProcessor {
private static final ModuleIdentifier KEYCLOAK_JBOSS_CORE_ADAPTER = KeycloakSubsystemDefinition.KEYCLOAK_JBOSS_CORE_ADAPTER;
private static final ModuleIdentifier KEYCLOAK_CORE_ADAPTER = ModuleIdentifier.create("org.keycloak.keycloak-saml-adapter-core");
private static final ModuleIdentifier KEYCLOAK_API_ADAPTER = ModuleIdentifier.create("org.keycloak.keycloak-saml-adapter-api-public");
private static final ModuleIdentifier KEYCLOAK_COMMON = ModuleIdentifier.create("org.keycloak.keycloak-common");
static final String KEYCLOAK_JBOSS_CORE_ADAPTER = "org.keycloak.keycloak-jboss-adapter-core";
static final String KEYCLOAK_CORE_ADAPTER = "org.keycloak.keycloak-saml-adapter-core";
static final String KEYCLOAK_API_ADAPTER = "org.keycloak.keycloak-saml-adapter-api-public";
static final String KEYCLOAK_COMMON = "org.keycloak.keycloak-common";
@Override
public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException {

View File

@ -23,7 +23,6 @@ import org.jboss.as.server.deployment.DeploymentPhaseContext;
import org.jboss.as.server.deployment.module.ModuleDependency;
import org.jboss.as.server.deployment.module.ModuleSpecification;
import org.jboss.modules.ModuleClassLoader;
import org.jboss.modules.ModuleIdentifier;
import org.jboss.modules.ModuleLoader;
/**
@ -33,8 +32,7 @@ import org.jboss.modules.ModuleLoader;
*/
public class KeycloakDependencyProcessorWildFly extends KeycloakDependencyProcessor {
private static final ModuleIdentifier KEYCLOAK_CORE_ADAPTER = ModuleIdentifier.create("org.keycloak.keycloak-saml-adapter-core");
private static final ModuleIdentifier KEYCLOAK_ELYTRON_ADAPTER = ModuleIdentifier.create("org.keycloak.keycloak-saml-wildfly-elytron-adapter");
private static final String KEYCLOAK_ELYTRON_ADAPTER = "org.keycloak.keycloak-saml-wildfly-elytron-adapter";
@Override
protected void addCoreModules(ModuleSpecification moduleSpecification, ModuleLoader moduleLoader) {

View File

@ -21,7 +21,8 @@ import org.jboss.as.controller.SimpleResourceDefinition;
import org.jboss.as.controller.operations.common.GenericSubsystemDescribeHandler;
import org.jboss.as.controller.registry.ManagementResourceRegistration;
import org.jboss.as.controller.registry.RuntimePackageDependency;
import org.jboss.modules.ModuleIdentifier;
import static org.keycloak.subsystem.adapter.saml.extension.KeycloakDependencyProcessor.KEYCLOAK_JBOSS_CORE_ADAPTER;
/**
* Definition of subsystem=keycloak-saml.
@ -31,7 +32,6 @@ import org.jboss.modules.ModuleIdentifier;
public class KeycloakSubsystemDefinition extends SimpleResourceDefinition {
static final KeycloakSubsystemDefinition INSTANCE = new KeycloakSubsystemDefinition();
static final ModuleIdentifier KEYCLOAK_JBOSS_CORE_ADAPTER = ModuleIdentifier.create("org.keycloak.keycloak-jboss-adapter-core");
private KeycloakSubsystemDefinition() {
super(KeycloakSamlExtension.SUBSYSTEM_PATH,
@ -51,6 +51,6 @@ public class KeycloakSubsystemDefinition extends SimpleResourceDefinition {
public void registerAdditionalRuntimePackages(ManagementResourceRegistration resourceRegistration) {
// This module is required by deployment but not referenced by JBoss modules
resourceRegistration.registerAdditionalRuntimePackages(
RuntimePackageDependency.required(KEYCLOAK_JBOSS_CORE_ADAPTER.getName()));
RuntimePackageDependency.required(KEYCLOAK_JBOSS_CORE_ADAPTER));
}
}