From cc982cf2467bd5c3526a4076b8bc1e1a4bf52485 Mon Sep 17 00:00:00 2001 From: Bill Burke Date: Fri, 11 Apr 2014 10:33:53 -0400 Subject: [PATCH] workarounds for resteasy 2.3.7 bugs --- .../org/keycloak/login/freemarker/FreeMarkerLoginForms.java | 5 ++++- .../src/main/webapp/WEB-INF/jboss-deployment-structure.xml | 2 ++ .../org/keycloak/services/resources/admin/UsersResource.java | 1 + 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/forms/login-freemarker/src/main/java/org/keycloak/login/freemarker/FreeMarkerLoginForms.java b/forms/login-freemarker/src/main/java/org/keycloak/login/freemarker/FreeMarkerLoginForms.java index 925b38f2506..50c68a778dc 100755 --- a/forms/login-freemarker/src/main/java/org/keycloak/login/freemarker/FreeMarkerLoginForms.java +++ b/forms/login-freemarker/src/main/java/org/keycloak/login/freemarker/FreeMarkerLoginForms.java @@ -155,7 +155,10 @@ public class FreeMarkerLoginForms implements LoginForms { if (message != null) { attributes.put("message", new MessageBean(messages.containsKey(message) ? messages.getProperty(message) : message, messageType)); } - + if (page == LoginFormsPages.OAUTH_GRANT) { + // for some reason Resteasy 2.3.7 doesn't like query params and form params with the same name and will null out the code form param + uriBuilder.replaceQuery(null); + } URI baseUri = uriBuilder.build(); if (realm != null) { diff --git a/server/src/main/webapp/WEB-INF/jboss-deployment-structure.xml b/server/src/main/webapp/WEB-INF/jboss-deployment-structure.xml index 62acb3d893d..0be199545a4 100755 --- a/server/src/main/webapp/WEB-INF/jboss-deployment-structure.xml +++ b/server/src/main/webapp/WEB-INF/jboss-deployment-structure.xml @@ -3,6 +3,8 @@ + + diff --git a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java index 857d9957684..0ceb0b8600c 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java @@ -169,6 +169,7 @@ public class UsersResource { for (ApplicationModel applicationModel : realm.getApplications()) { if (applicationModel.getManagementUrl() == null) continue; UserStats appStats = new ResourceAdminManager().getUserStats(realm, applicationModel, user); + if (appStats == null) continue; if (appStats.isLoggedIn()) stats.put(applicationModel.getName(), appStats); } return stats;