Hello,
I'm trying to configure CAS so it can be used with SharePoint. I've
followed the WS-Fed configuration documentation on the website, but I have
a strange problem with the Security Token Service Provider.
When I try to make an "Issue" invocation, I have this exception (full stack
trace at the end) :
org.apache.cxf.interceptor.Fault: object is not an instance of declaring
> class while invoking public javax.xml.transform.Source
> org.apache.cxf.ws.security.sts.provider.SecurityTokenServiceProvider.invoke(javax.xml.transform.Source)
>
> with params [org.apache.cxf.staxutils.StaxSource@61cd376e]
>
It seems that the code is trying to call the "Invoke" method of the
SecurityTokenServiceProvider. This is done in the *AbstractSTSClient* class,
in the *Issue(String appliesTo, String action, String requestType, String
binaryExchange)* method
Object obj[] = client.invoke(boi, new
> DOMSource(writer.getDocument().getDocumentElement()));
I don't really understand what's going on there, since the StaxSource
class extends the Source interface. I've tried to directly call the *Invoke*
method
in the code (in a breakpoint during my call), with the same parameter but
without reflection, and it works. Can you help me understand the problem ?
Am I the only one noticing this ?
Thank you all in advance
The complete stacktrace :
2018-05-04 09:21:08,285 DEBUG
> [org.apereo.cas.ws.idp.authentication.WSFederationAuthenticationServiceSelectionStrategy]
>
> - <Located service id [https://xxxxxx] from service authentication request
> at
> [/ws/idp/federationcallback?wa=wsignin1.0&wreply=https%3A%2F%2Fxxxxxxxxx]>
> 2018-05-04 09:21:08,311 DEBUG [org.apereo.cas.util.EncodingUtils] -
> <Encrypting via [A128CBC-HS256]>
> 2018-05-04 09:21:10,033 DEBUG [org.apereo.cas.util.EncodingUtils] -
> <Decrypting value...>
> 2018-05-04 09:21:10,119 WARN [org.apache.cxf.phase.PhaseInterceptorChain]
> - <Application
> {http://docs.oasis-open.org/ws-sx/ws-trust/200512/}SecurityTokenService#{http://docs.oasis-open.org/ws-sx/ws-trust/200512/}Issue
>
> has thrown exception, unwinding now>
> org.apache.cxf.interceptor.Fault: object is not an instance of declaring
> class while invoking public javax.xml.transform.Source
> org.apache.cxf.ws.security.sts.provider.SecurityTokenServiceProvider.invoke(javax.xml.transform.Source)
>
> with params [org.apache.cxf.staxutils.StaxSource@61cd376e].
> at
> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:168)
>
> ~[classes/:3.2.0]
> at
> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:267)
>
> ~[cxf-rt-frontend-jaxws-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:142)
>
> ~[classes/:3.2.0]
> at
> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWSMethodInvoker.java:232)
>
> ~[cxf-rt-frontend-jaxws-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:85)
> ~[cxf-rt-frontend-jaxws-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:76)
>
> ~[classes/:3.2.0]
> at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> ~[?:1.8.0_111]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_111]
> at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$2.run(ServiceInvokerInterceptor.java:126)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:131)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
>
> ~[cxf-core-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:267)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:191)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:301)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:220)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
> ~[servlet-api.jar:?]
> at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:276)
>
> ~[cxf-rt-transports-http-3.2.0.jar:3.2.0]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> ~[tomcat-websocket.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apereo.cas.web.support.AuthenticationCredentialsLocalBinderClearingFilter.doFilter(AuthenticationCredentialsLocalBinderClearingFilter.java:28)
>
> ~[cas-server-core-web-5.2.4.jar:5.2.4]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apereo.cas.security.RequestParameterPolicyEnforcementFilter.doFilter(RequestParameterPolicyEnforcementFilter.java:261)
>
> ~[cas-server-security-filter-2.0.7.jar:2.0.7]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apereo.cas.security.ResponseHeadersEnforcementFilter.doFilter(ResponseHeadersEnforcementFilter.java:245)
>
> ~[cas-server-security-filter-2.0.7.jar:2.0.7]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:111)
>
> ~[spring-boot-actuator-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apereo.cas.logging.web.ThreadContextMDCServletFilter.doFilter(ThreadContextMDCServletFilter.java:93)
>
> ~[cas-server-core-logging-5.2.4.jar:5.2.4]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.boot.actuate.autoconfigure.MetricsFilter.doFilterInternal(MetricsFilter.java:106)
>
> ~[spring-boot-actuator-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:117)
>
> ~[spring-boot-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
>
> ~[spring-boot-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:92)
>
> ~[spring-boot-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>
> ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE]
> at
> org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:110)
>
> ~[spring-boot-1.5.12.RELEASE.jar:1.5.12.RELEASE]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apereo.inspektr.common.web.ClientInfoThreadLocalFilter.doFilter(ClientInfoThreadLocalFilter.java:66)
>
> ~[inspektr-common-1.8.2.GA.jar:1.8.2.GA]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.logging.log4j.web.Log4jServletFilter.doFilter(Log4jServletFilter.java:71)
>
> ~[log4j-web-2.9.1.jar:2.9.1]
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
>
> ~[catalina.jar:8.0.39]
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:509)
> ~[catalina.jar:8.0.39]
> at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1104)
>
> ~[tomcat-coyote.jar:8.0.39]
> at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)
>
> ~[tomcat-coyote.jar:8.0.39]
> at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520)
>
> ~[tomcat-coyote.jar:8.0.39]
> at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476)
>
> ~[tomcat-coyote.jar:8.0.39]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>
> ~[?:1.8.0_111]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>
> ~[?:1.8.0_111]
> at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>
> ~[tomcat-util.jar:8.0.39]
> at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
> Caused by: java.lang.IllegalArgumentException: object is not an instance
> of declaring class
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[?:1.8.0_111]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> ~[?:1.8.0_111]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>
> ~[?:1.8.0_111]
> at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
> at
> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:182)
>
> ~[classes/:3.2.0]
> at
> org.apache.cxf.jaxws.JAXWSMethodInvoker.performInvocation(JAXWSMethodInvoker.java:66)
>
> ~[cxf-rt-frontend-jaxws-3.2.0.jar:3.2.0]
> at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:98)
>
> ~[classes/:3.2.0]
> ... 90 more
--
- 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/3b7bea8f-8251-482a-baef-c794494c9ad3%40apereo.org.