Hi,

Please find below the artifacts and their version number used by me.

CAS Server 3.4.11 (Running on Apache 5.5.28)
CAS Client 3.2.1 (Integrated with my host application running on JBOSS 5.1.0.GA

Below are the steps/flow of the process followed by me.

1. Login into CAS server by accessing the CAS server URL. CAS login happends 
successfully.
2. I try to access my host application. The request gets redirected to CAS 
client filter (I am using Cas20Proxy) for validation.
3. CAS client finds the client valid and redirects the request to my host 
application.
4. In my host application, I first check for valid ticket by using the 
following below code. The code is to access the ticket and access the user name 
in the ticket which I need in my host application.

Assertion assertion = (Assertion) 
request.getSession().getAttribute("_const_cas_assertion_");

Here, I get the assertion object as NULL. I also get the Principal User value 
as NULL.

Can you please suggest me my mistake in accessing the ticket generated by CAS 
and/or stored in browser?

Any help is highly appreciated. Please let me know, if you need anymore 
information on the problem.

Thanking in anticipation,

Regards,
~Sagar

PS: The mapping entries in web.xml file is mentioned below (Complete file also 
attached with the post:

<filter>
        <filter-name>CAS Single Sign Out Filter</filter-name>
        <filter-class>
                org.jasig.cas.client.session.SingleSignOutFilter
        </filter-class>
</filter>

<filter>
        <filter-name>CAS Authentication Filter</filter-name>
<filter-class>org.jasig.cas.client.authentication.Saml11AuthenticationFilter</filter-class>
<init-param>
<param-name>casServerLoginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8180</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
<init-param>
<param-name>casServerUrlPrefix</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>redirectAfterValidation</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8180</param-value>
</init-param>
<init-param>
<param-name>tolerance</param-name>
<param-value>1000</param-value>
</init-param>
</filter>

<filter>
  <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
  
<filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
</filter>

<filter>
  <filter-name>CAS Assertion Thread Local Filter</filter-name>
  
<filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>CAS Single Sign Out Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS Authentication Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd";>

<web-app>

   <display-name>caTISSUE Core</display-name>

       <description>

       </description>

  <!-- application properties file path -->
  <context-param>
    	<param-name>applicationproperties</param-name>
    	<param-value>ApplicationResources.properties</param-value>
  </context-param>

  <!-- base class for Application Resource bundle -->
  <context-param>
    	<param-name>resourcebundleclass</param-name>
    	<param-value>ApplicationResources</param-value>
  </context-param>

  <!--  caCore like system entries -->
  	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			/WEB-INF/classes/application-core.xml
			/WEB-INF/classes/application-config.xml
			/WEB-INF/classes/application-config-security.xml
		</param-value>
	</context-param>

	<!-- FLEX Configuration-->
	<context-param>
        <param-name>flex.class.path</param-name>
        <param-value>/WEB-INF/flex/hotfixes,/WEB-INF/flex/jars</param-value>
   </context-param>

	
								<context-param>
									<param-name>ResourceBundleParamName</param-name>
									<param-value>resourcebundleclass</param-value>
								</context-param>
					

   <!-- Filter for accessing flex components -->
   <filter>
        <filter-name>FlexComponentFilter</filter-name>
        <filter-class>edu.wustl.catissuecore.filter.FlexComponentFilter</filter-class>
    </filter>
    
    <filter>
		<filter-name>StingerFilter</filter-name>
		<filter-class>org.owasp.stinger.StingerFilter</filter-class>
		<init-param>
			<param-name>config</param-name>
			<param-value>stinger.xml</param-value>
		</init-param>
		<init-param>
			<param-name>error-page</param-name>
			<param-value>/pages/XssViolation.jsp</param-value>
		</init-param>
		<init-param>
			<param-name>reload</param-name>
			<param-value>false</param-value>
		</init-param>
	</filter>

<filter>
	<filter-name>CAS Single Sign Out Filter</filter-name>
	<filter-class>
		org.jasig.cas.client.session.SingleSignOutFilter
	</filter-class>
</filter>

<filter>
	<filter-name>CAS Authentication Filter</filter-name>
<filter-class>org.jasig.cas.client.authentication.Saml11AuthenticationFilter</filter-class>
<init-param>
<param-name>casServerLoginUrl</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8180</param-value>
</init-param>
</filter>
<filter>
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
<init-param>
<param-name>casServerUrlPrefix</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>redirectAfterValidation</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>serverName</param-name>
<param-value>http://localhost:8180</param-value>
</init-param>
<init-param>
<!--
Leniency of time checking in ms when validating SAML assertions.
Consider setting this parameter more liberally if you anticipate
system clock drift on your application servers relative to the CAS server.
The default is 1000 (1s) and at least one person had problems with drift
at that small a tolerance value.
A good approach is to start low and then increase by 1000 as needed until
problems stop. Note that increasing this value may have negative security
implications. Consider fixing clock drift problems as an alternative.
-->
<param-name>tolerance</param-name>
<param-value>1000</param-value>
</init-param>
</filter>


<filter>
  <filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
  <filter-class>org.jasig.cas.client.util.HttpServletRequestWrapperFilter</filter-class>
</filter>

<filter>
  <filter-name>CAS Assertion Thread Local Filter</filter-name>
  <filter-class>org.jasig.cas.client.util.AssertionThreadLocalFilter</filter-class>
</filter>


<!-- Filter configuration finish -->

<!-- Filter for CAS configuration START-->

	<filter>
		<filter-name>NoActionFilter</filter-name>
		<filter-class>edu.wustl.catissuecore.util.NoActionFilter</filter-class>
	</filter>
	
<!--  End caCore like system entries -->

	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/Sync.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/SignUp.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/SignUpUserAdd.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/ReportProblem.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/ContactUs.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/SummaryPage.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/RedirectToHelp.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/Disclaimer.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/PrivacyNotice.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/Accessibility.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/ReportedProblemAdd.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/BulkLogin.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/BulkHandler.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/ImportPVAction.do</url-pattern>
	</filter-mapping>
	<filter-mapping>
		<filter-name>NoActionFilter</filter-name>
		<url-pattern>/CreateCategoryAction.do</url-pattern>
	</filter-mapping>



	<!-- <filter-mapping>
		<filter-name>CASFilter</filter-name>
		<url-pattern>*.do</url-pattern>
	</filter-mapping> -->
	
	
<filter-mapping>
<filter-name>CAS Single Sign Out Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS Authentication Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS Validation Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>CAS HttpServletRequest Wrapper Filter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>


					
				

<!-- Filter for CAS configuration finish -->

	<filter-mapping>
		<filter-name>StingerFilter</filter-name>
		<url-pattern>*.do</url-pattern>
	</filter-mapping>

   <filter-mapping>
      <filter-name>FlexComponentFilter</filter-name>
      <url-pattern>/flexclient/*</url-pattern>
    </filter-mapping>

 <!-- Listener Configuration -->
  <listener>
  	<listener-class>edu.wustl.catissuecore.util.listener.CatissueCoreServletContextListener</listener-class>
  </listener>
  <listener>
  	<listener-class>edu.wustl.catissuecore.util.listener.CatissueCoreSessionListener</listener-class>
  </listener>

<!--  caCore like system entries -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>


				<listener>
						<listener-class>edu.common.dynamicextensions.util.listener.DynamicExtensionsServletContextListener</listener-class>
					</listener>
					

 <!-- Standard Action Servlet Configuration (with debugging) -->

   <servlet>
     <servlet-name>action</servlet-name>
     <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

     <init-param>
      <param-name>config</param-name>
	  <param-value>/WEB-INF/struts-config.xml, /WEB-INF/dynamicextensions-struts-config.xml, /WEB-INF/dynamicextensions-struts-config.xml, /WEB-INF/dynamicextensions-struts-config.xml, /WEB-INF/dynamicextensions-struts-config.xml, /WEB-INF/dynamicextensions-struts-config.xml, /WEB-INF/advancequery-struts-config.xml, /WEB-INF/bulkoperation-struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>3</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>2</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
   </servlet>

   <servlet>
     <servlet-name>ResponseServlet</servlet-name>
     <servlet-class>edu.wustl.common.struts.ResponseServlet</servlet-class>
   </servlet>
   
   	<servlet>
     <servlet-name>LoadGridServlet</servlet-name>
     <servlet-class>edu.wustl.catissuecore.action.LoadGridServlet</servlet-class>
   </servlet>

<!-- FLEX Configuration START-->

    <!-- Http Flex Session attribute and binding listener support -->
    <!--listener>
        <listener-class>flex.messaging.HttpFlexSession</listener-class>
    </listener-->

    <!-- MessageBroker Servlet -->
    <servlet>
        <servlet-name>MessageBrokerServlet</servlet-name>
        <display-name>MessageBrokerServlet</display-name>
        <servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
        <init-param>
            <param-name>services.configuration.file</param-name>
            <param-value>/WEB-INF/flex/services-config.xml</param-value>
       </init-param>
        <init-param>
            <param-name>flex.write.path</param-name>
            <param-value>/WEB-INF/flex</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexMxmlServlet</servlet-name>
        <display-name>MXML Processor</display-name>
        <description>Servlet wrapper for the Mxml Compiler</description>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.webtier.server.j2ee.MxmlServlet</param-value>
        </init-param>
        <init-param>
            <param-name>webtier.configuration.file</param-name>
            <param-value>/WEB-INF/flex/flex-webtier-config.xml</param-value>
        </init-param>
       <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexSwfServlet</servlet-name>
        <display-name>SWF Retriever</display-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.webtier.server.j2ee.SwfServlet</param-value>
        </init-param>
        <!-- SwfServlet must be initialized after MxmlServlet -->
        <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <display-name>Prevents access to *.as/*.swc files</display-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.webtier.server.j2ee.ForbiddenServlet</param-value>
        </init-param>
    </servlet>

    <servlet>
        <servlet-name>FlexInternalServlet</servlet-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.webtier.server.j2ee.filemanager.FileManagerServlet</param-value>
        </init-param>
        <load-on-startup>10</load-on-startup>
    </servlet>

	<servlet>
		<servlet-name>httpinvoker</servlet-name>
		<servlet-class>
			org.springframework.web.servlet.DispatcherServlet
		</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet>
		<servlet-name>AxisServlet</servlet-name>
		<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>GetXML</servlet-name>
		<servlet-class>gov.nih.nci.system.web.HTTPQuery</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>GetHTML</servlet-name>
		<servlet-class>gov.nih.nci.system.web.HTTPQuery</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>GetJSON</servlet-name>
		<servlet-class>gov.nih.nci.system.web.HTTPQuery</servlet-class>
	</servlet>

	
							<servlet>
								<servlet-name>UpdateCache</servlet-name>
								<servlet-class>edu.common.dynamicextensions.ui.webui.action.UpdateCache</servlet-class>
							</servlet>
							<servlet>
								<servlet-name>DynamicExtensionsInterfaceAction</servlet-name>
								<servlet-class>edu.common.dynamicextensions.interfaceactions.DynamicExtensionsInterfaceAction</servlet-class>
							</servlet>
							<servlet>
								<servlet-name>DownloadFileAction</servlet-name>
								<servlet-class>edu.common.dynamicextensions.ui.webui.action.DownloadFileAction</servlet-class>
							</servlet>
					

 <!-- Standard Action Servlet Mapping -->
 
 <servlet-mapping>
     <servlet-name>LoadGridServlet</servlet-name>
     <url-pattern>/LoadGridServlet</url-pattern>
  </servlet-mapping>
  
  <servlet-mapping>
     <servlet-name>action</servlet-name>
     <url-pattern>*.do</url-pattern>
  </servlet-mapping>

	<servlet-mapping>
     <servlet-name>ResponseServlet</servlet-name>
     <url-pattern>/ResponseServlet</url-pattern>
  </servlet-mapping>

	<servlet-mapping>
		<servlet-name>httpinvoker</servlet-name>
		<url-pattern>/http/*</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>AxisServlet</servlet-name>
		<url-pattern>/services/*</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>AxisServlet</servlet-name>
		<url-pattern>*.jws</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>GetXML</servlet-name>
		<url-pattern>/GetXML</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>GetHTML</servlet-name>
		<url-pattern>/GetHTML</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>GetJSON</servlet-name>
		<url-pattern>/GetJSON</url-pattern>
	</servlet-mapping>


    <servlet-mapping>
        <servlet-name>MessageBrokerServlet</servlet-name>
        <url-pattern>/messagebroker/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexMxmlServlet</servlet-name>
        <url-pattern>*.mxml</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexSwfServlet</servlet-name>
        <url-pattern>*.swf</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <url-pattern>*.as</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <url-pattern>*.swc</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexInternalServlet</servlet-name>
        <url-pattern>/flex-internal/*</url-pattern>
    </servlet-mapping>

	
							<servlet-mapping>
								<servlet-name>UpdateCache</servlet-name>
								<url-pattern>/UpdateCache</url-pattern>
							</servlet-mapping>
							<servlet-mapping>
								<servlet-name>DynamicExtensionsInterfaceAction</servlet-name>
								<url-pattern>/DynamicExtensionsInterfaceAction</url-pattern>
							</servlet-mapping>
							<servlet-mapping>
								<servlet-name>DownloadFileAction</servlet-name>
								<url-pattern>/DownloadFileAction</url-pattern>
							</servlet-mapping>
					

	<session-config>
		<session-timeout>30</session-timeout>
	</session-config>

	<mime-mapping>
		<extension>wsdl</extension>
		<mime-type>text/xml</mime-type>
	</mime-mapping>


 <!--Usual Welcome-file-list-->
  <welcome-file-list>
	 <welcome-file>/pages/index.jsp</welcome-file>
  </welcome-file-list>

   <!-- This error-page has been added as a general solution for Bug:8581 -->
  <error-page>
  		<exception-type>java.lang.Exception</exception-type>
  		<location>/pages/content/home/Error.jsp</location>
  </error-page>

  <taglib>
      <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
      <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
	  <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
	  <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/PagenationTag.tld</taglib-uri>
	  <taglib-location>/WEB-INF/PagenationTag.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/AutoCompleteTag.tld</taglib-uri>
	  <taglib-location>/WEB-INF/AutoCompleteTag.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/nlevelcombo.tld</taglib-uri>
	  <taglib-location>/WEB-INF/nlevelcombo.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/specimenDetails.tld</taglib-uri>
	  <taglib-location>/WEB-INF/specimenDetails.tld</taglib-location>
  </taglib>

  <taglib>
	  <taglib-uri>/WEB-INF/twoColDetailsTag.tld</taglib-uri>
	  <taglib-location>/WEB-INF/twoColDetailsTag.tld</taglib-location>
  </taglib>



    <taglib>
        <taglib-uri>FlexTagLib</taglib-uri>
        <taglib-location>/WEB-INF/lib/flex-bootstrap-jsp.jar</taglib-location>
    </taglib>

	
								<taglib>
									<taglib-uri>/WEB-INF/dynamicExtensions.tld</taglib-uri>
									<taglib-location>/WEB-INF/dynamicExtensions.tld</taglib-location>
								</taglib>
					

	<!--ends here  -->

<!--Environment entry for datasource JNDI name -->
   <env-entry>
            <env-entry-name>DataSource</env-entry-name>
            <env-entry-value>java:/catissuecore</env-entry-value>
            <env-entry-type>java.lang.String</env-entry-type>
        </env-entry>

    <!-- for WebSphere deployment, please uncomment -->
    <!--
    <resource-ref>
        <description>Flex Messaging WorkManager</description>
        <res-ref-name>wm/MessagingWorkManager</res-ref-name>
        <res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    -->

</web-app>

Reply via email to