All,

I am using the JDBC Attribute Repository to query a Postgresql database. 
Amongst others, the query returns two columns that represent arrays, which 
are transformed into the PgArray class 
<https://github.com/pgjdbc/pgjdbc/blob/08631ccdabdb8ba6d52f398e2b0b46a9cf0cafbf/pgjdbc/src/main/java/org/postgresql/jdbc/PgArray.java>
 
by the JDBC driver.

The Person Directory works fine with this as I can see from the array items 
appearing in the log (profile attributes groups and services):
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Retrieved [9] attribute(s) 
from the repository>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [username] 
with value(s) [[johndoe]]>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [givenname] 
with value(s) [[John]]>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [groups] with 
value(s) [[{admins,test-gruppe}]]>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [services] 
with value(s) [[{confluence,jira,seafile}]]>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [fullname] 
with value(s) [[John Doe]]>
2018-11-14 21:11:00,128 DEBUG [org.apereo.cas.authentication.principal.
resolvers.PersonDirectoryPrincipalResolver] - <Found attribute [lastname] 
with value(s) [[Doe]]>


However, the Ticket Granting / Ticket Registry crashes (see line 198 of the 
attached log) when trying to encode the ticket: Caused by: 
java.io.NotSerializableException: org.postgresql.jdbc.PgArray (see line 158 
of attached log). The PgArray class is indeed not implementing the 
Serializable interface (see link to code above).

So, here are my questions

   1. Is this an error that can / should be fixed or at least dealt with on 
   the CAS side?
   2. Is there a way to work around this, i.e. avoid the situation of using 
   PgArray? I could easily adjust the database to return a plain String with 
   the array items concatenated. But how would tell CAS then to split this and 
   transform this String to a non-harmful, nicely serializable, multi-valued 
   attribute? I need the individual values later-on to control service access.
   
Regards,

Martin


-- 
- 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/7736347e-e377-4a16-9046-f827d1904d45%40apereo.org.
2018-11-14 20:35:22,936 DEBUG 
[org.apereo.cas.authentication.PseudoPlatformTransactionManager] - <Initiating 
transaction commit>
2018-11-14 20:35:22,936 DEBUG 
[org.apereo.cas.authentication.PseudoPlatformTransactionManager] - <Creating 
new transaction with name 
[org.apereo.cas.DefaultCentralAuthenticationService.createTicketGrantingTicket]:
 PROPAGATION_REQUIRED,ISOLATION_DEFAULT; 'ticketTransactionManager'>
2018-11-14 20:35:22,936 DEBUG 
[org.apereo.cas.ticket.factory.DefaultTicketGrantingTicketFactory] - 
<Attempting to encode ticket-granting ticket 
[TGT-1-********************************************************0wrom2tZ7VgBRAGG]>
2018-11-14 20:35:22,936 DEBUG 
[org.apereo.cas.ticket.factory.DefaultTicketGrantingTicketFactory] - <Encoded 
ticket-granting ticket id 
[TGT-1-********************************************************0wrom2tZ7VgBRAGG]>
2018-11-14 20:35:22,936 DEBUG 
[org.apereo.cas.ticket.registry.AbstractTicketRegistry] - <Encoding ticket 
[TGT-1-********************************************************0wrom2tZ7VgBRAGG]>
2018-11-14 20:35:22,951 INFO 
[org.apereo.inspektr.audit.support.Slf4jLoggingAuditTrailManager] - <Audit 
trail record BEGIN
=============================================================
WHO: johndoe
WHAT: NOT_SERIALIZABLE_EXCEPTION
ACTION: TICKET_GRANTING_TICKET_NOT_CREATED
APPLICATION: CAS
WHEN: Wed Nov 14 20:35:22 CET 2018
CLIENT IP ADDRESS: 0:0:0:0:0:0:0:1
SERVER IP ADDRESS: 0:0:0:0:0:0:0:1
=============================================================

>
2018-11-14 20:35:22,951 DEBUG 
[org.apereo.cas.authentication.PseudoPlatformTransactionManager] - <Initiating 
transaction commit>
2018-11-14 20:35:22,967 DEBUG 
[org.apereo.cas.web.FlowExecutionExceptionResolver] - <Ignoring the received 
exception due to a type mismatch>
org.springframework.webflow.execution.ActionExecutionException: Exception 
thrown executing 
org.apereo.cas.web.flow.login.CreateTicketGrantingTicketAction@5ab4ab93 in 
state 'createTicketGrantingTicket' of flow 'login' -- action execution 
attributes were 'map[[empty]]'
        at 
org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:62)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.action.EvaluateAction.doExecute(EvaluateAction.java:77)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:101) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.State.enter(State.java:194) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:228) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.DecisionState.doEnter(DecisionState.java:51) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.State.enter(State.java:194) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:228) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.execute(FlowExecutionImpl.java:395)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.execute(RequestControlContextImpl.java:214)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.TransitionableState.handleEvent(TransitionableState.java:116)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.Flow.handleEvent(Flow.java:547) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.handleEvent(FlowExecutionImpl.java:390)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.handleEvent(RequestControlContextImpl.java:210)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.ActionState.doEnter(ActionState.java:105) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.State.enter(State.java:194) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.Transition.execute(Transition.java:228) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.execute(FlowExecutionImpl.java:395)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.execute(RequestControlContextImpl.java:214)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.TransitionableState.handleEvent(TransitionableState.java:116)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.Flow.handleEvent(Flow.java:547) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.handleEvent(FlowExecutionImpl.java:390)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.RequestControlContextImpl.handleEvent(RequestControlContextImpl.java:210)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.ViewState.handleEvent(ViewState.java:231) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.ViewState.resume(ViewState.java:195) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at org.springframework.webflow.engine.Flow.resume(Flow.java:537) 
~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.engine.impl.FlowExecutionImpl.resume(FlowExecutionImpl.java:259)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:168)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_172]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_172]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216) 
~[spring-core-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:470)
 ~[spring-cloud-context-1.3.0.RELEASE.jar:1.3.0.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at com.sun.proxy.$Proxy181.resumeExecution(Unknown Source) ~[?:?]
        at 
org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:254)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
 ~[spring-webmvc-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
 ~[spring-webmvc-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
 ~[spring-webmvc-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
 ~[spring-webmvc-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) 
~[servlet-api.jar:?]
        at 
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
 ~[spring-webmvc-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
~[servlet-api.jar:?]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
~[tomcat-websocket.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.cas.web.support.AuthenticationCredentialsThreadLocalBinderClearingFilter.doFilter(AuthenticationCredentialsThreadLocalBinderClearingFilter.java:30)
 ~[cas-server-core-web-api-5.3.5.jar:5.3.5]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.cas.security.RequestParameterPolicyEnforcementFilter.doFilter(RequestParameterPolicyEnforcementFilter.java:261)
 ~[cas-server-security-filter-2.0.10.2.jar:2.0.10.2]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.cas.security.ResponseHeadersEnforcementFilter.doFilter(ResponseHeadersEnforcementFilter.java:237)
 ~[cas-server-security-filter-2.0.10.2.jar:2.0.10.2]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.cas.security.AddResponseHeadersFilter.doFilter(AddResponseHeadersFilter.java:94)
 ~[cas-server-security-filter-2.0.10.2.jar:2.0.10.2]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:111)
 ~[spring-boot-actuator-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.cas.logging.web.ThreadContextMDCServletFilter.doFilter(ThreadContextMDCServletFilter.java:91)
 ~[cas-server-core-logging-5.3.5.jar:5.3.5]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.boot.actuate.autoconfigure.MetricsFilter.doFilterInternal(MetricsFilter.java:103)
 ~[spring-boot-actuator-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:130)
 ~[spring-boot-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:66)
 ~[spring-boot-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:105)
 ~[spring-boot-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
 ~[spring-web-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:123)
 ~[spring-boot-1.5.16.RELEASE.jar:1.5.16.RELEASE]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apereo.inspektr.common.web.ClientInfoThreadLocalFilter.doFilter(ClientInfoThreadLocalFilter.java:66)
 ~[inspektr-common-1.8.3.GA.jar:1.8.3.GA]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
 ~[log4j-web-2.11.0.jar:2.11.0]
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:185)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:108)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) 
~[catalina.jar:8.5.4]
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
~[catalina.jar:8.5.4]
        at 
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
 ~[catalina.jar:8.5.4]
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349) 
~[catalina.jar:8.5.4]
        at 
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:1110) 
~[tomcat-coyote.jar:8.5.4]
        at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
 ~[tomcat-coyote.jar:8.5.4]
        at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:785)
 ~[tomcat-coyote.jar:8.5.4]
        at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1425)
 ~[tomcat-coyote.jar:8.5.4]
        at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) 
~[tomcat-coyote.jar:8.5.4]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
~[?:1.8.0_172]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
~[?:1.8.0_172]
        at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
 ~[tomcat-util.jar:8.5.4]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_172]
Caused by: java.lang.reflect.UndeclaredThrowableException
        at 
org.apereo.cas.DefaultCentralAuthenticationService$$EnhancerBySpringCGLIB$$13233334.createTicketGrantingTicket(<generated>)
 ~[cas-server-core-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.web.flow.login.CreateTicketGrantingTicketAction.createOrUpdateTicketGrantingTicket(CreateTicketGrantingTicketAction.java:104)
 ~[cas-server-support-actions-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.web.flow.login.CreateTicketGrantingTicketAction.doExecute(CreateTicketGrantingTicketAction.java:63)
 ~[cas-server-support-actions-5.3.5.jar:5.3.5]
        at 
org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_172]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_172]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216) 
~[spring-core-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:470)
 ~[spring-cloud-context-1.3.0.RELEASE.jar:1.3.0.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at com.sun.proxy.$Proxy183.execute(Unknown Source) ~[?:?]
        at 
org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        ... 120 more
Caused by: java.io.NotSerializableException: org.postgresql.jdbc.PgArray
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) 
~[?:1.8.0_172]
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) 
~[?:1.8.0_172]
        at java.util.LinkedList.writeObject(LinkedList.java:1131) ~[?:1.8.0_172]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_172]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_172]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1128) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) 
~[?:1.8.0_172]
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) 
~[?:1.8.0_172]
        at java.util.HashMap.internalWriteEntries(HashMap.java:1790) 
~[?:1.8.0_172]
        at java.util.HashMap.writeObject(HashMap.java:1363) ~[?:1.8.0_172]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_172]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_172]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1128) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) 
~[?:1.8.0_172]
        at 
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) 
~[?:1.8.0_172]
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) 
~[?:1.8.0_172]
        at 
org.apereo.cas.util.serialization.SerializationUtils.serialize(SerializationUtils.java:51)
 ~[cas-server-core-util-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.util.serialization.SerializationUtils.serialize(SerializationUtils.java:37)
 ~[cas-server-core-util-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.util.serialization.SerializationUtils.serializeAndEncodeObject(SerializationUtils.java:104)
 ~[cas-server-core-util-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.util.serialization.SerializationUtils.serializeAndEncodeObject(SerializationUtils.java:117)
 ~[cas-server-core-util-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.ticket.registry.AbstractTicketRegistry.encodeTicket(AbstractTicketRegistry.java:217)
 ~[cas-server-core-tickets-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.ticket.registry.AbstractMapBasedTicketRegistry.addTicket(AbstractMapBasedTicketRegistry.java:34)
 ~[cas-server-core-tickets-api-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.DefaultCentralAuthenticationService.createTicketGrantingTicket(DefaultCentralAuthenticationService.java:393)
 ~[cas-server-core-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.DefaultCentralAuthenticationService$$FastClassBySpringCGLIB$$b02e48f2.invoke(<generated>)
 ~[cas-server-core-5.3.5.jar:5.3.5]
        at 
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) 
~[spring-core-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:736)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:84)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apereo.inspektr.audit.AuditTrailManagementAspect.handleAuditTrail(AuditTrailManagementAspect.java:135)
 ~[inspektr-audit-1.8.3.GA.jar:1.8.3.GA]
        at sun.reflect.GeneratedMethodAccessor201.invoke(Unknown Source) ~[?:?]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:627)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:616)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
 ~[spring-tx-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
 ~[spring-tx-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
 ~[spring-tx-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
com.ryantenney.metrics.spring.MeteredMethodInterceptor.invoke(MeteredMethodInterceptor.java:45)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.MeteredMethodInterceptor.invoke(MeteredMethodInterceptor.java:32)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.AbstractMetricMethodInterceptor.invoke(AbstractMetricMethodInterceptor.java:59)
 ~[metrics-spring-3.1.3.jar:?]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
com.ryantenney.metrics.spring.TimedMethodInterceptor.invoke(TimedMethodInterceptor.java:48)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.TimedMethodInterceptor.invoke(TimedMethodInterceptor.java:34)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.AbstractMetricMethodInterceptor.invoke(AbstractMetricMethodInterceptor.java:59)
 ~[metrics-spring-3.1.3.jar:?]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
com.ryantenney.metrics.spring.CountedMethodInterceptor.invoke(CountedMethodInterceptor.java:46)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.CountedMethodInterceptor.invoke(CountedMethodInterceptor.java:32)
 ~[metrics-spring-3.1.3.jar:?]
        at 
com.ryantenney.metrics.spring.AbstractMetricMethodInterceptor.invoke(AbstractMetricMethodInterceptor.java:59)
 ~[metrics-spring-3.1.3.jar:?]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:671)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.apereo.cas.DefaultCentralAuthenticationService$$EnhancerBySpringCGLIB$$13233334.createTicketGrantingTicket(<generated>)
 ~[cas-server-core-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.web.flow.login.CreateTicketGrantingTicketAction.createOrUpdateTicketGrantingTicket(CreateTicketGrantingTicketAction.java:104)
 ~[cas-server-support-actions-5.3.5.jar:5.3.5]
        at 
org.apereo.cas.web.flow.login.CreateTicketGrantingTicketAction.doExecute(CreateTicketGrantingTicketAction.java:63)
 ~[cas-server-support-actions-5.3.5.jar:5.3.5]
        at 
org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:1.8.0_172]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_172]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_172]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_172]
        at 
org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216) 
~[spring-core-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.cloud.context.scope.GenericScope$LockedScopedProxyFactoryBean.invoke(GenericScope.java:470)
 ~[spring-cloud-context-1.3.0.RELEASE.jar:1.3.0.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
 ~[spring-aop-4.3.20.RELEASE.jar:4.3.20.RELEASE]
        at com.sun.proxy.$Proxy183.execute(Unknown Source) ~[?:?]
        at 
org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51)
 ~[spring-webflow-2.5.0.RELEASE.jar:2.5.0.RELEASE]
        ... 120 more

Reply via email to