You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Jari Majander <ja...@teamware.com> on 2003/05/21 11:38:37 UTC

Problem with extending SingleSignOn valve

I recently tried to extend the Catalina SingleSignOn 
class, but hit a subtle problem. My class extends 
SingleSignOn and overrides the invoke() method. Just 
like the implementation of invoke() in SingleSignOn, 
this method looks up the cached Principal associated 
with the SSO cookie value. The SingleSignOn
lookup method is as follows:

/**
 * Look up and return the cached SingleSignOn entry associated with this
 * sso id value, if there is one; otherwise return <code>null</code>.
 *
 * @param ssoId Single sign on identifier to look up
 */
protected SingleSignOnEntry lookup(String ssoId) {
        synchronized (cache) {
            return ((SingleSignOnEntry) cache.get(ssoId));
        }
    }


That is, it returns an instance of SingleSignOnEntry, that
is a private inner class of SingleSignOn. I wonder how can 
I call lookup() in my derived class? I would like to reuse
as much as possible of the SingleSignOn class, including
maintaining of the SingleSignOnEntry cache.

Compiler tells me the obvious

cannot resolve symbol
    [javac] symbol  : class SingleSignOnEntry
    [javac] location: class com.teamware.phoenix.session.web.catalina.STSValve
    [javac]                         SingleSignOnEntry entry = lookup(ssoId);
    [javac]                         ^ 


I tried to arrange import statements several ways, but
with no success. Maybe this is a trivial problem,
anyway quick help will be appreciated.


-- jari

www.teamware.com



---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org