I recently upgraded from CAS 5.1.6 to 5.2.0 and noticed that the theme
parameter in my JSON service definitions is being treated as if it is a
reference to a groovy script and not the name of the theme to load.
-- cas.properties --
### -- Theme settings -- ###
cas.theme.paramName=theme
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
-- service definition (Example-10000006.json) --
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^https://example.highline.edu/.*",
"name" : "Example",
"id" : 10000006,
"theme": "canvas",
"description" : "Example Service",
"evaluationOrder" : 1,
"usernameAttributeProvider" : {
"@class" :
"org.apereo.cas.services.PrincipalAttributeRegisteredServiceUsernameProvider",
"usernameAttribute" : "sAMAccountName"
}
}
-- Relevent log section for accessing the service --
2017-12-10 04:54:39,434 DEBUG
[org.apereo.cas.web.view.CasReloadableMessageBundle] - <Loading properties
[messages.properties] with encoding 'UTF-8'>
2017-12-10 04:54:39,527 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <Attempting to
resolve theme via [CookieThemeResolver]>
2017-12-10 04:54:39,527 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <Attempting to
resolve theme via [SessionThemeResolver]>
2017-12-10 04:54:39,528 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <Attempting to
resolve theme via [RequestHeaderThemeResolver]>
2017-12-10 04:54:39,528 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <Attempting to
resolve theme via [ServiceThemeResolver]>
2017-12-10 04:54:39,529 DEBUG
[org.apereo.cas.services.web.ServiceThemeResolver] - <Service
[id=10000006,name=Example,description=Example
Service,serviceId=^https://example.highline.edu/.*,usernameAttributeProvider=usernameAttribute=sAMAccountName,<null>,theme=[canvas],evaluationOrder=1,logoutType=BACK_CHANNEL,attributeReleasePolicy=org.apereo.cas.services.ReturnAllowedAttributeReleasePolicy@118e1bd0[attributeFilter=<null>,principalAttributesRepository=org.apereo.cas.authentication.principal.DefaultPrincipalAttributesRepository@581f099[],authorizedToReleaseCredentialPassword=false,authorizedToReleaseAuthenticationAttributes=true,authorizedToReleaseProxyGrantingTicket=false,excludeDefaultAttributes=false,principalIdAttribute=<null>,consentPolicy=org.apereo.cas.services.consent.DefaultRegisteredServiceConsentPolicy@1ad6e5d6[excludedAttributes=<null>,includeOnlyAttributes=<null>,enabled=true],allowedAttributes=[]],accessStrategy=org.apereo.cas.services.DefaultRegisteredServiceAccessStrategy@7231b0de[enabled=true,ssoEnabled=true,requireAllAttributes=true,requiredAttributes={},unauthorizedRedirectUrl=<null>,caseInsensitive=false,rejectedAttributes={}],publicKey=<null>,proxyPolicy=org.apereo.cas.services.RefuseRegisteredServiceProxyPolicy@2eaa006d,logo=<null>,logoutUrl=<null>,requiredHandlers=[],properties={},multifactorPolicy=org.apereo.cas.services.DefaultRegisteredServiceMultifactorPolicy@130075d3[multifactorAuthenticationProviders=[],failureMode=NOT_SET,principalAttributeNameTrigger=<null>,principalAttributeValueToMatch=<null>,bypassEnabled=false],informationUrl=<null>,privacyUrl=<null>,contacts=[],expirationPolicy=org.apereo.cas.services.DefaultRegisteredServiceExpirationPolicy@198f4a12[deleteWhenExpired=false,notifyWhenDeleted=false,expirationDate=<null>],<null>]
is configured to use a custom theme [[canvas]]>
2017-12-10 04:54:39,529 DEBUG
[org.apereo.cas.services.web.ServiceThemeResolver] - <Executing groovy
script to determine theme for
[https://example.highline.edu/securityRealm/finishLogin]>
2017-12-10 04:54:39,530 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <Attempting to
resolve theme via [FixedThemeResolver]>
2017-12-10 04:54:39,530 DEBUG
[org.apereo.cas.services.web.ChainingThemeResolver] - <No specific theme
could be found. Using default theme [cas-theme-default}>
If I set the theme default via the cas.properties file to canvas, it loads
the correct theme (of course I don't want that theme to be the default
every where) and if I set the theme property in my json service definition
to point to a groovy script that just returns "canvas", the correct theme
is loaded.
Is there a configuration setting I'm missing to have the default behavior
for theme loading specified
here
https://apereo.github.io/cas/5.2.x/installation/User-Interface-Customization-Themes.html
under "Themed Views", "Configuration".
Thank you
--Mike K
--
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
---
You received this message because you are subscribed to the Google Groups "CAS
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/a/apereo.org/d/msgid/cas-user/b84d22a1-7e98-485b-9f68-3e6f462f9d17%40apereo.org.