Fix: Add quarkus.oidc.authentication.redirect-path=/auth/callback for OAuth callback handling

Quarkus OIDC needs explicit redirect-path configuration to handle the OAuth callback
from Keycloak at /auth/callback. Without this, the endpoint returns 404 Not Found
causing 502 Bad Gateway during authentication flow.

This fixes the OAuth callback 502 error after successful Keycloak authentication.
This commit is contained in:
dahoud
2025-12-14 00:52:37 +00:00
parent 9164f00aaa
commit d42c10d029
12 changed files with 28 additions and 244 deletions

View File

@@ -68,6 +68,7 @@ quarkus.oidc.auth-server-url=${KEYCLOAK_AUTH_SERVER_URL:https://security.lions.d
quarkus.oidc.client-id=unionflow-client quarkus.oidc.client-id=unionflow-client
quarkus.oidc.credentials.secret=${KEYCLOAK_CLIENT_SECRET} quarkus.oidc.credentials.secret=${KEYCLOAK_CLIENT_SECRET}
quarkus.oidc.application-type=web-app quarkus.oidc.application-type=web-app
quarkus.oidc.authentication.redirect-path=/auth/callback
quarkus.oidc.authentication.force-redirect-https-scheme=true quarkus.oidc.authentication.force-redirect-https-scheme=true
quarkus.oidc.authentication.restore-path-after-redirect=true quarkus.oidc.authentication.restore-path-after-redirect=true
quarkus.oidc.authentication.scopes=openid,profile,email,roles quarkus.oidc.authentication.scopes=openid,profile,email,roles

File diff suppressed because one or more lines are too long

View File

@@ -541,7 +541,7 @@ PrimeFaces.FreyaConfigurator = {
}, },
replaceLink: function(linkElement, href) { replaceLink: function(linkElement, href) {
PrimeFaces.ajax.RESOURCE = 'javax.faces.Resource'; PrimeFaces.ajax.RESOURCE = 'jakarta.faces.Resource';
var isIE = this.isIE(); var isIE = this.isIE();

View File

@@ -541,7 +541,7 @@ PrimeFaces.FreyaConfigurator = {
}, },
replaceLink: function(linkElement, href) { replaceLink: function(linkElement, href) {
PrimeFaces.ajax.RESOURCE = 'javax.faces.Resource'; PrimeFaces.ajax.RESOURCE = 'jakarta.faces.Resource';
var isIE = this.isIE(); var isIE = this.isIE();

View File

@@ -541,7 +541,7 @@ PrimeFaces.FreyaConfigurator = {
}, },
replaceLink: function(linkElement, href) { replaceLink: function(linkElement, href) {
PrimeFaces.ajax.RESOURCE = 'javax.faces.Resource'; PrimeFaces.ajax.RESOURCE = 'jakarta.faces.Resource';
var isIE = this.isIE(); var isIE = this.isIE();

View File

@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<facelet-taglib xmlns="https://xmlns.jcp.org/xml/ns/javaee" <facelet-taglib xmlns="https://jakarta.ee/xml/ns/jakartaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://xmlns.jcp.org/xml/ns/javaee xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee
https://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibrary_2_3.xsd" https://jakarta.ee/xml/ns/jakartaee/web-facelettaglibrary_4_0.xsd"
version="2.3"> version="4.0">
<namespace>http://unionflow.lions.dev/jsf</namespace> <namespace>http://unionflow.lions.dev/jsf</namespace>
<composite-library-name>unionflow</composite-library-name> <composite-library-name>unionflow</composite-library-name>
</facelet-taglib> </facelet-taglib>

View File

@@ -2,7 +2,7 @@
# Ce fichier est utilisé avec le profil Quarkus "prod" # Ce fichier est utilisé avec le profil Quarkus "prod"
# Configuration HTTP # Configuration HTTP
quarkus.http.port=8086 quarkus.http.port=8080
quarkus.http.host=0.0.0.0 quarkus.http.host=0.0.0.0
quarkus.http.root-path=/ quarkus.http.root-path=/
quarkus.http.so-reuse-port=true quarkus.http.so-reuse-port=true
@@ -69,11 +69,12 @@ quarkus.oidc.client-id=unionflow-client
quarkus.oidc.credentials.secret=${KEYCLOAK_CLIENT_SECRET} quarkus.oidc.credentials.secret=${KEYCLOAK_CLIENT_SECRET}
quarkus.oidc.application-type=web-app quarkus.oidc.application-type=web-app
quarkus.oidc.authentication.redirect-path=/auth/callback quarkus.oidc.authentication.redirect-path=/auth/callback
quarkus.oidc.authentication.force-redirect-https-scheme=true
quarkus.oidc.authentication.restore-path-after-redirect=true quarkus.oidc.authentication.restore-path-after-redirect=true
quarkus.oidc.authentication.scopes=openid,profile,email,roles quarkus.oidc.authentication.scopes=openid,profile,email,roles
quarkus.oidc.token.issuer=https://security.lions.dev/realms/unionflow quarkus.oidc.token.issuer=https://security.lions.dev/realms/unionflow
quarkus.oidc.tls.verification=required quarkus.oidc.tls.verification=required
quarkus.oidc.authentication.cookie-same-site=strict quarkus.oidc.authentication.cookie-same-site=lax
quarkus.oidc.authentication.java-script-auto-redirect=false quarkus.oidc.authentication.java-script-auto-redirect=false
quarkus.oidc.discovery-enabled=true quarkus.oidc.discovery-enabled=true
quarkus.oidc.verify-access-token=true quarkus.oidc.verify-access-token=true

View File

@@ -115,3 +115,19 @@ unionflow.security.password.min-length=${PASSWORD_MIN_LENGTH:8}
unionflow.security.password.require-special-chars=${PASSWORD_REQUIRE_SPECIAL:true} unionflow.security.password.require-special-chars=${PASSWORD_REQUIRE_SPECIAL:true}
unionflow.security.max-login-attempts=${MAX_LOGIN_ATTEMPTS:5} unionflow.security.max-login-attempts=${MAX_LOGIN_ATTEMPTS:5}
unionflow.security.lockout-duration=${LOCKOUT_DURATION:300} unionflow.security.lockout-duration=${LOCKOUT_DURATION:300}
# ===================================================================================================
# Configuration Quarkus Arc CDI - Intégration avec JSF/MyFaces
# ===================================================================================================
# Active le mode découverte de beans pour permettre à Arc de gérer tous les beans CDI et JSF
quarkus.arc.unremovable-types=jakarta.faces.application.Application,jakarta.faces.context.FacesContext,jakarta.enterprise.context.Conversation
# Permet à Arc de détecter et gérer les beans avec annotations JSF custom scopes (@ViewScoped, etc.)
quarkus.arc.detect-unused-false-positives=true
# Force Arc à gérer les beans même s'ils ne sont pas référencés directement
quarkus.arc.remove-unused-beans=false
# Active le support complet CDI pour JSF Expression Language (EL)
# Cela permet à MyFaces d'utiliser Arc BeanManager pour résoudre #{bean.property}
quarkus.arc.auto-inject-fields=true

View File

@@ -1,234 +0,0 @@
dev\lions\unionflow\client\view\UtilisateursBean$Filtres.class
dev\lions\unionflow\client\validation\ValidationGroups$FullRegistration.class
dev\lions\unionflow\client\view\MembreProfilBean$MembreFamille.class
dev\lions\unionflow\client\view\ConfigurationBean$ConfigurationSysteme.class
dev\lions\unionflow\client\view\CotisationsBean$StatistiquesFinancieres.class
dev\lions\unionflow\client\dto\FormulaireDTO.class
dev\lions\unionflow\client\security\TokenRefreshService.class
dev\lions\unionflow\client\view\MembreDashboardBean$Membre.class
dev\lions\unionflow\client\view\MembreCotisationBean$Echeance.class
dev\lions\unionflow\client\view\MembreCotisationBean$Cotisation.class
dev\lions\unionflow\client\view\GuestPreferences.class
dev\lions\unionflow\client\view\MembreDashboardBean.class
dev\lions\unionflow\client\security\PermissionChecker.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$UnprocessableEntityException.class
dev\lions\unionflow\client\service\SouscriptionService.class
dev\lions\unionflow\client\dto\SouscriptionDTO$StatutSouscription.class
dev\lions\unionflow\client\view\UtilisateursBean$NouvelUtilisateur.class
dev\lions\unionflow\client\dto\AuditLogDTO.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$GatewayTimeoutException.class
dev\lions\unionflow\client\service\PreferencesService.class
dev\lions\unionflow\client\view\MembreProfilBean$AidesData.class
dev\lions\unionflow\client\view\PersonnelBean$ActiviteRecente.class
dev\lions\unionflow\client\view\MembreDashboardBean$Evenement.class
dev\lions\unionflow\client\view\EntitesGestionBean$Entite.class
dev\lions\unionflow\client\security\JwtClientRequestFilter.class
dev\lions\unionflow\client\validation\PhoneNumberValidator.class
dev\lions\unionflow\client\view\RapportsBean$RepartitionMembres.class
dev\lions\unionflow\client\dto\auth\LoginResponse.class
dev\lions\unionflow\client\view\CotisationsBean$RepartitionMethode.class
dev\lions\unionflow\client\view\DocumentsBean$NiveauNavigation.class
dev\lions\unionflow\client\view\RolesBean$StatutRole.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$UnauthorizedException.class
dev\lions\unionflow\client\dto\auth\LoginResponse$UserInfo.class
dev\lions\unionflow\client\view\RapportDetailsBean.class
dev\lions\unionflow\client\view\SuperAdminBean$Entite.class
dev\lions\unionflow\client\view\DemandesAideBean.class
dev\lions\unionflow\client\view\RapportsBean$NouveauRapport.class
dev\lions\unionflow\client\dto\auth\LoginRequest.class
dev\lions\unionflow\client\view\DocumentsBean$Dossier.class
dev\lions\unionflow\client\dto\AnalyticsDataDTO.class
dev\lions\unionflow\client\view\MembreDashboardBean$Alerte.class
dev\lions\unionflow\client\validation\ValidMemberNumber.class
dev\lions\unionflow\client\view\RapportsBean$Objectif.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$BadGatewayException.class
dev\lions\unionflow\client\view\UserSession$CurrentUser.class
dev\lions\unionflow\client\view\DemandesAideBean$DemandeAide.class
dev\lions\unionflow\client\view\FavorisBean$DocumentFavorite.class
dev\lions\unionflow\client\service\WaveService.class
dev\lions\unionflow\client\view\DocumentsBean$Document.class
dev\lions\unionflow\client\view\RolesBean.class
dev\lions\unionflow\client\view\MembreProfilBean$PaiementCotisation.class
dev\lions\unionflow\client\view\OrganisationDetailBean.class
dev\lions\unionflow\client\service\AssociationService$PerformanceAssociationDTO.class
dev\lions\unionflow\client\view\RolesBean$TypeRole.class
dev\lions\unionflow\client\view\DocumentsBean$NouveauDocument.class
dev\lions\unionflow\client\dto\WaveCheckoutSessionDTO.class
dev\lions\unionflow\client\service\MembreService.class
dev\lions\unionflow\client\view\UserSession.class
dev\lions\unionflow\client\view\ConfigurationBean$ConfigurationPaiements.class
dev\lions\unionflow\client\view\CotisationsBean.class
dev\lions\unionflow\client\dto\SouscriptionDTO$TypeFacturation.class
dev\lions\unionflow\client\dto\auth\LoginResponse$EntiteInfo.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$BadRequestException.class
dev\lions\unionflow\client\view\MembreInscriptionBean.class
dev\lions\unionflow\client\view\RapportsBean$HistoriqueRapport.class
dev\lions\unionflow\client\view\RolesBean$Utilisateur.class
dev\lions\unionflow\client\validation\ValidationGroups$UpdateAssociation.class
dev\lions\unionflow\client\view\PersonnelBean.class
dev\lions\unionflow\client\view\MembreDashboardBean$Activite.class
dev\lions\unionflow\client\constants\StatutOrganisationConstants.class
dev\lions\unionflow\client\view\SouscriptionBean$AlerteQuota.class
dev\lions\unionflow\client\view\DemandesBean$Gestionnaire.class
dev\lions\unionflow\client\service\MembreService$ResultatImportDTO.class
dev\lions\unionflow\client\view\RapportsBean$SourceRevenus.class
dev\lions\unionflow\client\view\RapportsBean$TopEntite.class
dev\lions\unionflow\client\UnionFlowClientApplication.class
dev\lions\unionflow\client\view\GuestPreferences$ComponentTheme.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$NotFoundException.class
dev\lions\unionflow\client\view\SuperAdminBean$EvolutionMois.class
dev\lions\unionflow\client\view\UtilisateursBean$Organisation.class
dev\lions\unionflow\client\security\TokenCleanupService.class
dev\lions\unionflow\client\view\FavorisBean$RaccourciPersonnalise.class
dev\lions\unionflow\client\view\SuperAdminBean$Alerte.class
dev\lions\unionflow\client\view\DashboardBean$Activity.class
dev\lions\unionflow\client\view\ParametresBean$SessionActive.class
dev\lions\unionflow\client\view\EntitesGestionBean$Filtres.class
dev\lions\unionflow\client\view\ConfigurationBean$Sauvegarde.class
dev\lions\unionflow\client\security\JwtTokenManager.class
dev\lions\unionflow\client\view\MembreListeBean$Entite.class
dev\lions\unionflow\client\view\MembreListeBean.class
dev\lions\unionflow\client\view\RapportsBean$EvolutionMensuelle.class
dev\lions\unionflow\client\service\AssociationService.class
dev\lions\unionflow\client\validation\ValidationGroups.class
dev\lions\unionflow\client\service\ValidationService.class
dev\lions\unionflow\client\view\MembreProfilBean$Membre.class
dev\lions\unionflow\client\view\MembreRechercheBean.class
dev\lions\unionflow\client\service\NotificationClientService.class
dev\lions\unionflow\client\view\MembreRechercheBean$MessageGroupe.class
dev\lions\unionflow\client\view\MembreProfilBean$DemandesData.class
dev\lions\unionflow\client\view\MembreDashboardBean$Rappel.class
dev\lions\unionflow\client\view\MembreProfilBean.class
dev\lions\unionflow\client\view\CotisationsGestionBean.class
dev\lions\unionflow\client\view\MembreProfilBean$Aide.class
dev\lions\unionflow\client\view\ParametresBean.class
dev\lions\unionflow\client\service\AdhesionService.class
dev\lions\unionflow\client\view\SuperAdminBean$MoisRevenu.class
dev\lions\unionflow\client\security\TokenRefreshService$TokenInfo.class
dev\lions\unionflow\client\view\WaveBean.class
dev\lions\unionflow\client\view\AdhesionsBean$StatistiquesAdhesion.class
dev\lions\unionflow\client\view\RapportsBean$IndicateursGlobaux.class
dev\lions\unionflow\client\view\AdminFormulaireBean.class
dev\lions\unionflow\client\view\DemandesAideBean$StatistiquesDemandes.class
dev\lions\unionflow\client\service\FormulaireService.class
dev\lions\unionflow\client\validation\ValidationGroups$UpdateMember.class
dev\lions\unionflow\client\view\DocumentsBean$Filtres.class
dev\lions\unionflow\client\view\CotisationsGestionBean$FiltresCotisations.class
dev\lions\unionflow\client\view\MembreRechercheBean$Filtres.class
dev\lions\unionflow\client\exception\ViewExpiredExceptionHandler.class
dev\lions\unionflow\client\dto\SouscriptionDTO.class
dev\lions\unionflow\client\view\MembreProfilBean$ContactData.class
dev\lions\unionflow\client\service\AnalyticsService.class
dev\lions\unionflow\client\view\MembreProfilBean$EvenementsData.class
dev\lions\unionflow\client\service\NotificationService.class
dev\lions\unionflow\client\view\OrganisationsBean.class
dev\lions\unionflow\client\service\AssociationService$StatistiquesAssociationDTO.class
dev\lions\unionflow\client\view\MembreProfilBean$Demande.class
dev\lions\unionflow\client\service\RestClientExceptionMapper.class
dev\lions\unionflow\client\validation\ValidationGroups$CreateMember.class
dev\lions\unionflow\client\view\DemandesBean$Demande.class
dev\lions\unionflow\client\view\LoginBean.class
dev\lions\unionflow\client\security\AuthenticationFilter.class
dev\lions\unionflow\client\service\AuditService.class
dev\lions\unionflow\client\view\FavorisBean.class
dev\lions\unionflow\client\view\EvenementsBean$FiltresEvenement.class
dev\lions\unionflow\client\view\SouscriptionBean.class
dev\lions\unionflow\client\view\PersonnelBean$StatistiquesProfil.class
dev\lions\unionflow\client\view\MembreCotisationBean.class
dev\lions\unionflow\client\dto\EvenementDTO.class
dev\lions\unionflow\client\dto\WaveBalanceDTO.class
dev\lions\unionflow\client\view\SuperAdminBean$TypeEntite.class
dev\lions\unionflow\client\view\AdhesionsBean.class
dev\lions\unionflow\client\view\MembreRechercheBean$Statistiques.class
dev\lions\unionflow\client\view\GuideBean.class
dev\lions\unionflow\client\service\DemandeAideService.class
dev\lions\unionflow\client\exception\ViewExpiredExceptionHandlerFactory.class
dev\lions\unionflow\client\service\ExportClientService.class
dev\lions\unionflow\client\view\EntitesGestionBean$Statistiques.class
dev\lions\unionflow\client\validation\ValidationGroups$AdminData.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$InternalServerErrorException.class
dev\lions\unionflow\client\view\ConfigurationBean$ConfigurationGenerale.class
dev\lions\unionflow\client\validation\ValidationGroups$QuickRegistration.class
dev\lions\unionflow\client\view\DemandesBean.class
dev\lions\unionflow\client\view\FavorisBean$PageFavorite.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$ForbiddenException.class
dev\lions\unionflow\client\view\DashboardBean$MoisFinancier.class
dev\lions\unionflow\client\service\MembreService$StatistiquesMembreDTO.class
dev\lions\unionflow\client\view\CotisationsGestionBean$MembreEnRetard.class
dev\lions\unionflow\client\view\SuperAdminBean$Activite.class
dev\lions\unionflow\client\view\UserSession$EntiteInfo.class
dev\lions\unionflow\client\view\FormulaireBean.class
dev\lions\unionflow\client\view\CotisationsBean$Filtres.class
dev\lions\unionflow\client\view\CotisationsGestionBean$NouvelleCampagne.class
dev\lions\unionflow\client\view\MembreProfilBean$Statistiques.class
dev\lions\unionflow\client\view\SecurityStatusBean.class
dev\lions\unionflow\client\view\RolesBean$Role.class
dev\lions\unionflow\client\view\DemandesBean$Membre.class
dev\lions\unionflow\client\view\RolesBean$Permission.class
dev\lions\unionflow\client\view\FavorisBean$ContactFavorite.class
dev\lions\unionflow\client\view\MembreRechercheBean$Entite.class
dev\lions\unionflow\client\view\RapportsBean$KPI.class
dev\lions\unionflow\client\view\MembreProfilBean$Activite.class
dev\lions\unionflow\client\service\AuthenticationService$AuthenticationException.class
dev\lions\unionflow\client\view\MembreProfilBean$HistoriqueData.class
dev\lions\unionflow\client\service\CotisationService.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$UnknownHttpStatusException.class
dev\lions\unionflow\client\dto\AssociationDTO.class
dev\lions\unionflow\client\view\DemandesAideBean$Filtres.class
dev\lions\unionflow\client\service\AuthenticationService.class
dev\lions\unionflow\client\dto\DemandeAideDTO.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$ConflictException.class
dev\lions\unionflow\client\view\SuperAdminBean$RevenusData.class
dev\lions\unionflow\client\view\CotisationsBean$RappelCotisation.class
dev\lions\unionflow\client\dto\CotisationDTO.class
dev\lions\unionflow\client\view\UtilisateursBean.class
dev\lions\unionflow\client\validation\ValidationGroups$BulkImport.class
dev\lions\unionflow\client\view\PersonnelBean$NotificationPersonnelle.class
dev\lions\unionflow\client\view\AdhesionsBean$NouvelleAdhesion.class
dev\lions\unionflow\client\view\CotisationsGestionBean$Organisation.class
dev\lions\unionflow\client\dto\TypeOrganisationClientDTO.class
dev\lions\unionflow\client\validation\MemberNumberValidator.class
dev\lions\unionflow\client\view\AdhesionsBean$FiltresAdhesion.class
dev\lions\unionflow\client\view\EntitesGestionBean$Administrateur.class
dev\lions\unionflow\client\view\DemandesAideBean$EtapeWorkflow.class
dev\lions\unionflow\client\view\PreferencesBean.class
dev\lions\unionflow\client\view\PersonnelBean$DocumentPersonnel.class
dev\lions\unionflow\client\view\MembreProfilBean$EvenementParticipation.class
dev\lions\unionflow\client\view\CotisationsBean$EvolutionPaiement.class
dev\lions\unionflow\client\view\CotisationsBean$NouvelleCotisation.class
dev\lions\unionflow\client\view\MembreRechercheBean$RechercheSauvegardee.class
dev\lions\unionflow\client\view\HelloView.class
dev\lions\unionflow\client\view\EntitesGestionBean.class
dev\lions\unionflow\client\view\RapportsBean$Alerte.class
dev\lions\unionflow\client\view\EvenementsBean$StatistiquesEvenements.class
dev\lions\unionflow\client\view\DemandesBean$NouvelleDemande.class
dev\lions\unionflow\client\service\TypeOrganisationClientService.class
dev\lions\unionflow\client\view\DashboardBean.class
dev\lions\unionflow\client\view\DocumentsBean$StatistiquesDocuments.class
dev\lions\unionflow\client\view\MembreRechercheBean$Membre.class
dev\lions\unionflow\client\view\ConfigurationBean.class
dev\lions\unionflow\client\converter\MembreConverter.class
dev\lions\unionflow\client\view\ConfigurationBean$ConfigurationEmail.class
dev\lions\unionflow\client\view\CotisationsGestionBean$OrganisationPerformante.class
dev\lions\unionflow\client\view\MembreProfilBean$CotisationsData.class
dev\lions\unionflow\client\view\ConfigurationBean$ConfigurationSecurite.class
dev\lions\unionflow\client\service\ValidationService$ValidationResult.class
dev\lions\unionflow\client\view\RapportsBean.class
dev\lions\unionflow\client\service\EvenementService.class
dev\lions\unionflow\client\view\RolesBean$1.class
dev\lions\unionflow\client\view\AuditBean.class
dev\lions\unionflow\client\view\SuperAdminBean.class
dev\lions\unionflow\client\view\DemandesAideBean$NouvelleDemande.class
dev\lions\unionflow\client\view\EvenementsBean.class
dev\lions\unionflow\client\dto\AdhesionDTO.class
dev\lions\unionflow\client\service\RestClientExceptionMapper$ServiceUnavailableException.class
dev\lions\unionflow\client\dto\MembreDTO.class
dev\lions\unionflow\client\view\DocumentsBean.class
dev\lions\unionflow\client\validation\ValidPhoneNumber.class
dev\lions\unionflow\client\view\TypeOrganisationsAdminBean.class
dev\lions\unionflow\client\view\GuideBean$SectionGuide.class
dev\lions\unionflow\client\view\UtilisateursBean$Utilisateur.class
dev\lions\unionflow\client\service\NotificationService$NotificationGroupeeRequest.class
dev\lions\unionflow\client\validation\ValidationGroups$CreateAssociation.class
dev\lions\unionflow\client\view\UtilisateursBean$StatistiquesUtilisateurs.class
dev\lions\unionflow\client\view\NavigationBean.class

View File

@@ -67,6 +67,7 @@ C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quark
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\UtilisateursBean.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\UtilisateursBean.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\AuditBean.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\AuditBean.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\LoginBean.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\LoginBean.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\service\MembreImportMultipartForm.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\dto\auth\LoginRequest.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\dto\auth\LoginRequest.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\AdminFormulaireBean.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\AdminFormulaireBean.java
C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\SouscriptionBean.java C:\Users\dadyo\PersonalProjects\lions-workspace\unionflow\unionflow-client-quarkus-primefaces-freya\src\main\java\dev\lions\unionflow\client\view\SouscriptionBean.java