My guess is that the service is not found in the registry somehow.


Could you post your registry configuration as well?



From: Stephan Arts [mailto:sa...@cosmos.esa.int]
Sent: Tuesday, August 26, 2014 12:11 AM
To: cas-user@lists.jasig.org
Subject: Re: [cas-user] [CAS 4] Logout Service Redirect not working



It's going from 'finishLogout' to 'logoutView', which should only happen if 
the redirectURL is not set.

2014-08-26 06:53:02,829 DEBUG 
[org.springframework.webflow.engine.DecisionState] - <Entering state 
'finishLogout' of flow 'logout'>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.Transition] - <Executing 
[Transition@68a15056 on = *, to = logoutView]>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.Transition] - <Exiting state 
'finishLogout'>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.ViewState] - <Entering state 
'logoutView' of flow 'logout'>

For some reason it appears as if the flow execution URL is being broken 
somewhere:

2014-08-26 06:53:04,335 DEBUG 
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Rendering MVC 
[org.springframework.web.servlet.view.JstlView: name 'casLogoutView'; URL 
[/WEB-INF/view/jsp/cosmos/ui/casLogoutView.jsp]] with model map 
[{flowRequestContext=[RequestControlContextImpl@d1ff12e externalContext = 
org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620 
<mailto:org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620> 
, currentEvent = finish, requestScope = map[[empty]], attributes = 
map[[empty]], messageContext = [DefaultMessageContext@554790b0 
sourceMessages = map[[null] -> list[[empty]]]], flowExecution = 
[FlowExecutionImpl@2c1309bd flow = 'logout', flowSessions = 
list[[FlowSessionImpl@15e46de6 flow = 'logout', state = 'logoutView', scope 
= map['logoutRequests' -> list[[empty]], 'logoutIndex' -> 0, 'viewScope' -> 
map['renderSignIn' -> true]]]]]], flashScope=map[[empty]], 
logoutRequests=[], logoutIndex=0, currentUser=null, flowExecutionKey=e1s1, 
flowExecutionUrl=/cas/logout?service=%5BLjava.lang.String%3B%407d7ec2b0&RelayState=e1s1,
 
renderSignIn=true, viewScope=map['renderSignIn' -> true]}]>

Complete output:

2014-08-26 06:53:02,643 DEBUG 
[org.springframework.webflow.mvc.servlet.FlowHandlerMapping] - <No flow 
mapping found for request with URI '/cas/logout'>
2014-08-26 06:53:02,643 DEBUG 
[org.springframework.webflow.mvc.servlet.FlowHandlerMapping] - <Mapping 
request with URI '/cas/logout' to flow with id 'logout'>
2014-08-26 06:53:02,661 DEBUG 
[org.springframework.webflow.executor.FlowExecutorImpl] - <Launching new 
execution of flow 'logout' with input map['service' -> 
'http://test.cosmos.esa.int']>
2014-08-26 06:53:02,661 DEBUG 
[org.springframework.webflow.definition.registry.FlowDefinitionRegistryImpl] 
 - <Getting FlowDefinition with id 'logout'>
2014-08-26 06:53:02,662 DEBUG 
[org.springframework.webflow.engine.builder.DefaultFlowHolder] - <Assembling 
the flow for the first time>
2014-08-26 06:53:02,759 DEBUG 
[org.springframework.webflow.engine.impl.FlowExecutionImplFactory] - 
<Creating new execution of 'logout'>
2014-08-26 06:53:02,764 DEBUG 
[org.springframework.webflow.execution.factory.ConditionalFlowExecutionListenerLoader]
 
 - <Loaded [1] of possible 1 listeners for this execution request for flow 
'logout', the listeners to attach are 
list[org.jasig.cas.web.flow.TerminateWebSessionListener@17eb7542]>
2014-08-26 06:53:02,764 DEBUG 
[org.springframework.webflow.engine.impl.FlowExecutionImpl] - <Starting in 
org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620 
<mailto:org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620> 
with input map['service' -> 'http://test.cosmos.esa.int']>
2014-08-26 06:53:02,770 DEBUG 
[org.springframework.webflow.engine.ActionState] - <Entering state 
'terminateSession' of flow 'logout'>
2014-08-26 06:53:02,772 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Executing 
[EvaluateAction@1d23ee10 expression = 
terminateSessionAction.terminate(flowRequestContext), resultExpression = 
[null]]>
2014-08-26 06:53:02,773 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Putting action 
execution attributes map[[empty]]>
2014-08-26 06:53:02,806 DEBUG 
[org.jasig.cas.CentralAuthenticationServiceImpl] - <Removing ticket 
[TGT-3-GjDuVfmF1AWZT6t2jtwUDfX30FYwAYi1Rex4QkCxaDYcheAFd1-01] from 
registry.>
2014-08-26 06:53:02,811 ERROR 
[com.github.stephanarts.cas.ticket.registry.ZMQTicketRegistry] - <Missing 
Ticket>
2014-08-26 06:53:02,814 ERROR 
[com.github.stephanarts.cas.ticket.registry.ZMQTicketRegistry] - <Missing 
Ticket>
2014-08-26 06:53:02,814 DEBUG 
[org.jasig.cas.CentralAuthenticationServiceImpl] - <TicketGrantingTicket 
[TGT-3-GjDuVfmF1AWZT6t2jtwUDfX30FYwAYi1Rex4QkCxaDYcheAFd1-01] cannot be 
found in the ticket registry.>
2014-08-26 06:53:02,817 ERROR 
[com.github.stephanarts.cas.ticket.registry.ZMQTicketRegistry] - <Missing 
Ticket>
2014-08-26 06:53:02,820 ERROR 
[com.github.stephanarts.cas.ticket.registry.ZMQTicketRegistry] - <Missing 
Ticket>
2014-08-26 06:53:02,823 INFO 
[com.github.inspektr.audit.support.Slf4jLoggingAuditTrailManager] - <Audit 
trail record BEGIN
=============================================================
WHO: audit:unknown
WHAT: TGT-3-GjDuVfmF1AWZT6t2jtwUDfX30FYwAYi1Rex4QkCxaDYcheAFd1-01
ACTION: TICKET_GRANTING_TICKET_DESTROYED
APPLICATION: CAS
WHEN: Tue Aug 26 06:53:02 GMT 2014
CLIENT IP ADDRESS: (redacted)
SERVER IP ADDRESS: 127.0.0.1
=============================================================

>
2014-08-26 06:53:02,825 DEBUG 
[org.jasig.cas.web.support.CookieRetrievingCookieGenerator] - <Removed 
cookie with name [CASTGC]>
2014-08-26 06:53:02,825 DEBUG 
[org.jasig.cas.web.support.CookieRetrievingCookieGenerator] - <Removed 
cookie with name [CASPRIVACY]>
2014-08-26 06:53:02,827 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Clearing action 
execution attributes map[[empty]]>
2014-08-26 06:53:02,827 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Finished executing 
[EvaluateAction@1d23ee10 expression = 
terminateSessionAction.terminate(flowRequestContext), resultExpression = 
[null]]; result = success>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.engine.Transition] - <Executing 
[Transition@4a41d5e8 on = *, to = doLogout]>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.engine.Transition] - <Exiting state 
'terminateSession'>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.engine.ActionState] - <Entering state 
'doLogout' of flow 'logout'>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Executing 
[EvaluateAction@2842986e expression = logoutAction, resultExpression = 
[null]]>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Putting action 
execution attributes map[[empty]]>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Executing 
org.jasig.cas.web.flow.LogoutAction@2c257268 
<mailto:org.jasig.cas.web.flow.LogoutAction@2c257268> >
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Finished executing 
org.jasig.cas.web.flow.LogoutAction@2c257268 
<mailto:org.jasig.cas.web.flow.LogoutAction@2c257268> ; result = finish>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Clearing action 
execution attributes map[[empty]]>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Finished executing 
[EvaluateAction@2842986e expression = logoutAction, resultExpression = 
[null]]; result = finish>
2014-08-26 06:53:02,828 DEBUG 
[org.springframework.webflow.engine.Transition] - <Executing 
[Transition@4e7a207c on = finish, to = finishLogout]>
2014-08-26 06:53:02,829 DEBUG 
[org.springframework.webflow.engine.Transition] - <Exiting state 'doLogout'>
2014-08-26 06:53:02,829 DEBUG 
[org.springframework.webflow.engine.DecisionState] - <Entering state 
'finishLogout' of flow 'logout'>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.Transition] - <Executing 
[Transition@68a15056 on = *, to = logoutView]>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.Transition] - <Exiting state 
'finishLogout'>
2014-08-26 06:53:02,831 DEBUG 
[org.springframework.webflow.engine.ViewState] - <Entering state 
'logoutView' of flow 'logout'>
2014-08-26 06:53:02,841 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Putting conversation attribute 'name' with value logout>
2014-08-26 06:53:02,841 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Putting conversation attribute 'caption' with value null>
2014-08-26 06:53:02,841 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Putting conversation attribute 'description' with value null>
2014-08-26 06:53:02,843 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Putting conversation attribute 'flowExecutionSnapshotGroup' with value 
org.springframework.webflow.execution.repository.impl.SimpleFlowExecutionSnapshotGroup@398e9aa3
 
<mailto:org.springframework.webflow.execution.repository.impl.SimpleFlowExecutionSnapshotGroup@398e9aa3>
 
 >
2014-08-26 06:53:02,843 DEBUG 
[org.springframework.webflow.engine.impl.FlowExecutionImpl] - <Assigned key 
e1s1>
2014-08-26 06:53:04,333 DEBUG 
[org.springframework.webflow.engine.ViewState] - <Rendering + 
[ServletMvcView@3145ac9d view = 
org.springframework.web.servlet.view.JstlView: name 'casLogoutView'; URL 
[/WEB-INF/view/jsp/cosmos/ui/casLogoutView.jsp]]>
2014-08-26 06:53:04,333 DEBUG 
[org.springframework.webflow.engine.ViewState] - <  Flash scope = 
map[[empty]]>
2014-08-26 06:53:04,334 DEBUG 
[org.springframework.webflow.engine.ViewState] - <  Messages = 
[DefaultMessageContext@554790b0 sourceMessages = map[[null] -> 
list[[empty]]]]>
2014-08-26 06:53:04,334 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Executing 
[SetAction@4d6c3e8d name = viewScope.renderSignIn, value = true]>
2014-08-26 06:53:04,334 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Putting action 
execution attributes map[[empty]]>
2014-08-26 06:53:04,334 DEBUG 
[org.springframework.webflow.execution.AnnotatedAction] - <Clearing action 
execution attributes map[[empty]]>
2014-08-26 06:53:04,334 DEBUG 
[org.springframework.webflow.execution.ActionExecutor] - <Finished executing 
[SetAction@4d6c3e8d name = viewScope.renderSignIn, value = true]; result = 
success>
2014-08-26 06:53:04,335 DEBUG 
[org.springframework.webflow.mvc.view.AbstractMvcView] - <Rendering MVC 
[org.springframework.web.servlet.view.JstlView: name 'casLogoutView'; URL 
[/WEB-INF/view/jsp/cosmos/ui/casLogoutView.jsp]] with model map 
[{flowRequestContext=[RequestControlContextImpl@d1ff12e externalContext = 
org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620 
<mailto:org.springframework.webflow.mvc.servlet.MvcExternalContext@69855620> 
, currentEvent = finish, requestScope = map[[empty]], attributes = 
map[[empty]], messageContext = [DefaultMessageContext@554790b0 
sourceMessages = map[[null] -> list[[empty]]]], flowExecution = 
[FlowExecutionImpl@2c1309bd flow = 'logout', flowSessions = 
list[[FlowSessionImpl@15e46de6 flow = 'logout', state = 'logoutView', scope 
= map['logoutRequests' -> list[[empty]], 'logoutIndex' -> 0, 'viewScope' -> 
map['renderSignIn' -> true]]]]]], flashScope=map[[empty]], 
logoutRequests=[], logoutIndex=0, currentUser=null, flowExecutionKey=e1s1, 
flowExecutionUrl=/cas/logout?service=%5BLjava.lang.String%3B%407d7ec2b0&RelayState=e1s1,
 
renderSignIn=true, viewScope=map['renderSignIn' -> true]}]>
2014-08-26 06:53:04,382 DEBUG 
[org.jasig.cas.web.support.CasArgumentExtractor] - <Extractor generated 
service for: http://test.cosmos.esa.int>
2014-08-26 06:53:04,428 DEBUG 
[org.jasig.cas.web.view.CasReloadableMessageBundle] - <No properties file 
found for [classpath:custom_messages_en] - neither plain properties nor XML>
2014-08-26 06:53:04,428 DEBUG 
[org.jasig.cas.web.view.CasReloadableMessageBundle] - <No properties file 
found for [classpath:custom_messages] - neither plain properties nor XML>
2014-08-26 06:53:04,429 DEBUG 
[org.jasig.cas.web.view.CasReloadableMessageBundle] - <No properties file 
found for [classpath:messages_en] - neither plain properties nor XML>
2014-08-26 06:53:04,429 DEBUG 
[org.jasig.cas.web.view.CasReloadableMessageBundle] - <Loading properties 
[messages.properties] with encoding 'UTF-8'>
2014-08-26 06:53:04,434 DEBUG 
[org.springframework.webflow.engine.Transition] - <Completed transition 
execution.  As a result, the new state is 'logoutView' in flow 'logout'>
2014-08-26 06:53:04,434 DEBUG 
[org.springframework.webflow.engine.Transition] - <Completed transition 
execution.  As a result, the new state is 'logoutView' in flow 'logout'>
2014-08-26 06:53:04,434 DEBUG 
[org.springframework.webflow.engine.Transition] - <Completed transition 
execution.  As a result, the new state is 'logoutView' in flow 'logout'>
2014-08-26 06:53:04,435 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Locking conversation 1>
2014-08-26 06:53:04,435 DEBUG 
[org.springframework.webflow.execution.repository.impl.DefaultFlowExecutionRepository]
 
 - <Putting flow execution '[FlowExecutionImpl@2c1309bd flow = 'logout', 
flowSessions = list[[FlowSessionImpl@15e46de6 flow = 'logout', state = 
'logoutView', scope = map['logoutRequests' -> list[[empty]], 
'logoutIndex' -> 0, 'viewScope' -> map['renderSignIn' -> true]]]]]' into 
repository>
2014-08-26 06:53:04,445 DEBUG 
[org.springframework.webflow.execution.repository.impl.DefaultFlowExecutionRepository]
 
 - <Adding snapshot to group with id 1>
2014-08-26 06:53:04,445 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Putting conversation attribute 'scope' with value map['flashScope' -> 
map['messagesMemento' -> map[[empty]]]]>
2014-08-26 06:53:04,445 DEBUG 
[org.springframework.webflow.conversation.impl.SessionBindingConversationManager]
 
 - <Unlocking conversation 1>

On 26/08/14 08:36, Misagh Moayyed wrote:

So you have two cas.properties? which ones actually do exist? Is one 
overriding the other?



Removing variables, I would start out with the default configuration (take 
out etc/cas) and once logout is working, I would start moving cas.properties 
out of WEB-INF.

If that also fails, I would turn on DEBUG for spring-webflow and see why the 
logout webflow is not taking the redirect url.



From: Stephan Arts [mailto:sa...@cosmos.esa.int]
Sent: Monday, August 25, 2014 11:13 PM
To: cas-user@lists.jasig.org <mailto:cas-user@lists.jasig.org>
Subject: Re: [cas-user] [CAS 4] Logout Service Redirect not working



Hi Misagh,

The service is defined in the registry as followed:

https?://(a-zA-Z0-9\.)*cosmos.esa.int/.*

Though with the default catch-all, the behaviour is the same.

I initiate the logout as followed:

https://cas-test.cosmos.esa.int/logout?service=http://test.cosmos.esa.int

Regards,

Stephan

On 25/08/14 18:06, Misagh Moayyed wrote:

Is the service defined in your registry? How are you initiating logout?



From: Stephan Arts [mailto:sa...@cosmos.esa.int]
Sent: Monday, August 25, 2014 4:24 AM
To: cas-user@lists.jasig.org <mailto:cas-user@lists.jasig.org>
Subject: [cas-user] [CAS 4] Logout Service Redirect not working



Hi,

We am running CAS 4.0 with an overlay and a custom ticket-registry backend.

We have been preparing a migration from cas 3.5.2 to 4.0 for the past 6 
months, and everything is working beautifully except for the 
service-redirect after logout.

I've been investigating the issue a while now, but I am having trouble 
discovering what goes wrong.

I've changed WEB-INF/spring-configuration/propertyFileConfigurer.xml to 
this:

 35     <!--
 36       First check cas.properties in /etc
 37       If it is not present, or if not all properties are available, 
check the default.
 38     -->
 39     <context:property-placeholder location= 
<file:///\\%5C%5C%5C%5Cetc%5Ccas.properties> "file:/etc/cas.properties" 
order="1"
 40         ignore-unresolvable="true" ignore-resource-not-found="true" />
 41     <context:property-placeholder location="/WEB-INF/cas.properties" 
order="2"/>


I've got this in cas.properties:
      cas.logout.followServiceRedirects=true

The change to the propertyFileConfigurer.xml is new in our 4.0 build. I know 
the properties are read from there just fine because I can override 
host.name in /etc/cas.properties to change it from what is inside 
WEB-INF/cas.properties

Both WEB-INF/cas.properties and /etc/cas.properties have the 
cas.logout.followServiceRedirects=true line in them.

With DEBUG logging enabled I see entries like this:

2014-08-25 09:55:42,262 DEBUG 
[org.jasig.cas.web.support.CasArgumentExtractor] - <Extractor generated 
service for: http://test.cosmos.esa.int>

When I do a login and when I do a logout, so that seems to work well. But no 
indication as to why it wouldn't redirect me back to the service.

The documentation I found here[0] would suggest that having a valid service 
definition and the cas.logout.followServiceRedirects=true property should 
suffice.

Where would you suggest I continue my quest to find the source of the 
problem?


--
HE Space Operations B.V. for ESA - European Space Agency

Stephan Arts_
Senior UNIX Engineer

Research & Scientific Support Department
Science & Robotic Exploration Directorate (SRE-S)

[0] http://jasig.github.io/cas/4.0.0/installation/Logout-Single-Signout.html


-- 
You are currently subscribed to cas-user@lists.jasig.org 
<mailto:cas-user@lists.jasig.org>  as: mmoay...@unicon.net 
<mailto:mmoay...@unicon.net>
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user
-- 
You are currently subscribed to cas-user@lists.jasig.org 
<mailto:cas-user@lists.jasig.org>  as: sa...@cosmos.esa.int 
<mailto:sa...@cosmos.esa.int>
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user




-- 
You are currently subscribed to cas-user@lists.jasig.org 
<mailto:cas-user@lists.jasig.org>  as: mmoay...@unicon.net 
<mailto:mmoay...@unicon.net>
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user
-- 
You are currently subscribed to cas-user@lists.jasig.org 
<mailto:cas-user@lists.jasig.org>  as: sa...@cosmos.esa.int 
<mailto:sa...@cosmos.esa.int>
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user




-- 
You are currently subscribed to cas-user@lists.jasig.org 
<mailto:cas-user@lists.jasig.org>  as: mmoay...@unicon.net 
<mailto:mmoay...@unicon.net>
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

-- 
You are currently subscribed to cas-user@lists.jasig.org as: 
arch...@mail-archive.com
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to