Forgot to add before, I haven't looked at your custom filter too closely, but if all its doing is sending back a custom response, you can create a new validation endpoint using our existing Validation Controllers (that might require looking at the code) and configuring the controller to point to a different response that returns what you need.
We use the same validation controller framework to return responses for CAS1, CAS2, and SAML1.1. -Scott -Scott Battaglia PGP Public Key Id: 0x383733AA LinkedIn: http://www.linkedin.com/in/scottbattaglia On Tue, Nov 25, 2008 at 9:52 AM, Rick J. Valles <[EMAIL PROTECTED]> wrote: > Thank you, Scott. I will dig deeper into the CAS User Manual and > documentation. > > Y'all keep up the great work, and don't forget to stop by for that Cafe > Mocha and Scone sometime. :) > > > Rick > > > On Nov 25, 2008, at 7:36 AM, Scott Battaglia wrote: > > Rick, > > I would suggest you take a look at the available document for the CAS3 > project. Architecturally, CAS3 and CAS2 share nothing in common. Its not a > matter of whether its deprecated or not, they don't share the same code base > AT ALL: > > http://www.ja-sig.org/wiki/display/CASUM/Home > > -Scott > > -Scott Battaglia > PGP Public Key Id: 0x383733AA > LinkedIn: http://www.linkedin.com/in/scottbattaglia > > > On Tue, Nov 25, 2008 at 6:44 AM, Rick J. Valles <[EMAIL PROTECTED]> wrote: > >> Greetings, >> >> I've inherited a CAS2 implementation, which I'm in the process of >> migrating to CAS3 (3.3.1). Our local LDAP and skins customizations >> all work fine. >> >> However, our CAS2 is using an additional servlet called CF50Validate >> (see web.xml and source, below), which is used for our local Cold >> Fusion application interactions. According to the CF50Validate.java >> source, it was written by Mr. Peter Kharchenko of this mailing list; I >> don't know if my site has further modified his source. Thanks for >> helping us with our CAS2 implementation, Peter. >> >> CF50Validate imports ServiceTicket and ServiceTicketCache. Although I >> see ServiceTicketCache in CAS2, I don't see it in CAS3 (i.e., $ >> {CAS_HOME}/cas-server-core/src/main/java/org/jasig/cas/ticket). >> >> Question 1: Is ServiceTicketCache a deprecated class? >> >> Question 2: If it is deprecated, is it because its functionality is >> no longer needed, or that functionality is now incorporated elsewhere? >> >> Question 3: Any other glaring inconsistencies or problems you have >> noticed with our take on things? >> >> Thank you for taking the time to read this. If you're ever passing >> through Albuquerque, I'm good for a Cafe Mocha and a Scone! >> >> Best, >> >> >> Rick J. Valles >> The University of New Mexico >> Albuquerque, New Mexico USA >> --- >> >> Here are the CF50Validate references in web.xml in our CAS2 >> configuration: >> >> <servlet-mapping> >> <servlet-name>CF50Validate</servlet-name> >> <url-pattern>/cf50validate</url-pattern> >> </servlet-mapping> >> >> <!-- CF 5.0 validation --> >> <servlet> >> <servlet-name>CF50Validate</servlet-name> >> <servlet-class>edu.yale.its.tp.cas.servlet.CF50Validate</ >> servlet-class> >> </servlet> >> >> >> Here is the CF50Validate.java used in our CAS2 configuration: >> >> package edu.yale.its.tp.cas.servlet; >> >> import java.io.*; >> import javax.servlet.*; >> import javax.servlet.http.*; >> import edu.yale.its.tp.cas.ticket.*; >> >> /** >> * An implementation almost identical to the basic CAS validator, >> except that the output format is a bit different. >> * @author (removed information to avoid email address harvesting) >> * @version 1.0 >> */ >> public class CF50Validate extends HttpServlet { >> // failure codes >> private static final String INVALID_REQUEST = "INVALID_REQUEST"; >> private static final String INVALID_TICKET = "INVALID_TICKET"; >> private static final String INVALID_SERVICE = "INVALID_SERVICE"; >> private static final String INTERNAL_ERROR = "INTERNAL_ERROR"; >> >> >> // >> ********************************************************************* >> // Private state >> >> private ServiceTicketCache stCache; >> >> // >> ********************************************************************* >> // Initialization >> >> public void init(ServletConfig config) throws ServletException { >> // retrieve the cache >> stCache = >> (ServiceTicketCache) >> config.getServletContext().getAttribute("stCache"); >> } >> >> // >> ********************************************************************* >> // Request handling >> >> public void doGet(HttpServletRequest request, HttpServletResponse >> response) { >> try { >> PrintWriter out = response.getWriter(); >> out.println("# Cold fusion 5.0 mandatory header line"); >> if (request.getParameter("service") == null >> || request.getParameter("ticket") == null) { >> out.println("\"no\"\n\"'service' and 'ticket' parameters are >> both required\""); >> } else { >> String ticket = request.getParameter("ticket"); >> String service = request.getParameter("service"); >> ServiceTicket st = (ServiceTicket) stCache.getTicket(ticket); >> if(st!=null) { >> if(st.getService().equals(service)) { >> out.println("\"yes\"\n\"" + st.getUsername() +"\""); >> } else { >> out.println("\"no\"\n\"ticket does not match the supplied >> service\""); >> } >> } else { >> out.println("\"no\"\n\"ticket did not validate\""); >> } >> } >> } catch (Exception ex) { >> try { >> response.getWriter().println("\"no\"\n\"Exception >> encountered: "+ex.toString()+"\""); >> } catch (IOException ignoredEx) { >> // ignore >> } >> } >> } >> } >> _______________________________________________ >> Yale CAS mailing list >> [email protected] >> http://tp.its.yale.edu/mailman/listinfo/cas >> > > _______________________________________________ > Yale CAS mailing list > [email protected] > http://tp.its.yale.edu/mailman/listinfo/cas > > > > _______________________________________________ > Yale CAS mailing list > [email protected] > http://tp.its.yale.edu/mailman/listinfo/cas > >
_______________________________________________ Yale CAS mailing list [email protected] http://tp.its.yale.edu/mailman/listinfo/cas
