Author: ssmiweve Date: 2008-06-04 23:48:01 +0200 (Wed, 04 Jun 2008) New Revision: 6670
Modified: branches/2.17/war/src/main/java/no/sesat/search/http/servlet/BoomerangServlet.java branches/2.17/war/src/main/webapp/WEB-INF/web.xml Log: make hunting boomerangs work again Modified: branches/2.17/war/src/main/java/no/sesat/search/http/servlet/BoomerangServlet.java =================================================================== --- branches/2.17/war/src/main/java/no/sesat/search/http/servlet/BoomerangServlet.java 2008-06-04 13:17:55 UTC (rev 6669) +++ branches/2.17/war/src/main/java/no/sesat/search/http/servlet/BoomerangServlet.java 2008-06-04 21:48:01 UTC (rev 6670) @@ -1,5 +1,5 @@ /* - * Copyright (2006-2007) Schibsted Søk AS + * Copyright (2006-2008) Schibsted Søk AS * This file is part of SESAT. * * SESAT is free software: you can redistribute it and/or modify @@ -40,9 +40,15 @@ * Provides the user-statistics logging in Sesat. * Links are logged with <b>ceremonial</b> boomerangs that come back (ie with a redirect response). * Javascript functionality (or user behavour) is logged with <b>hunting</b> boomerangs that do not come back. - * + * * A cermonial example is: + * http://sesam.no/boomerang/category=results;subcategory=main/http://wever.org * + * + * A hunting example is: + * http://sesam.no/hunting/?parameter-list + * + * * @author <a href="mailto:[EMAIL PROTECTED]">Thomas Kjaerstad</a> * @author <a href="mailto:[EMAIL PROTECTED]">Mck</a> * @version <tt>$Id: 3361 $</tt> @@ -53,7 +59,7 @@ private static final Logger LOG = Logger.getLogger(BoomerangServlet.class); private static final Logger ACCESS = Logger.getLogger("no.sesat.Access"); - private static final String CEREMONIAL = "/boomerang"; + private static final String CEREMONIAL = "/boomerang/"; @Override public void destroy() { } @@ -70,7 +76,7 @@ res.setHeader("Pragma", "no-cache"); // for old browsers res.setDateHeader("Expires", 0); // to be double-safe - if(req.getServletPath().startsWith(CEREMONIAL)){ + if(req.getRequestURI().startsWith(CEREMONIAL)){ // ceremonial boomerang final StringBuffer url = req.getRequestURL(); @@ -79,7 +85,7 @@ } // pick out the entrails - final int boomerangStart = url.indexOf(CEREMONIAL) + CEREMONIAL.length() + 1; + final int boomerangStart = url.indexOf(CEREMONIAL) + CEREMONIAL.length(); try{ final String grub = url.substring(boomerangStart, url.indexOf("/", boomerangStart)); @@ -89,7 +95,14 @@ final String destination = url.substring( url.indexOf("/", url.indexOf(CEREMONIAL) + CEREMONIAL.length() + 1) + 1); - // grub it up + // request attribute to keep +//SKER4763 entrails.put("referer", req.getHeader("Referer")); +// entrails.put("method", req.getMethod()); +// entrails.put("ipaddress", req.getRemoteAddr()); +// entrails.put("user-agent", req.getHeader("User-Agent")); +// entrails.put("user-id", SearchServlet.getCookieValue(req, "SesamID")); +// entrails.put("user", SearchServlet.getCookieValue(req, "SesamUser")); + // the grub details to add final Map<String,String> entrails = new HashMap<String,String>(); if(0 < grub.length()){ final StringTokenizer tokeniser = new StringTokenizer(grub, ";"); @@ -121,7 +134,7 @@ }else{ - // hunting boomerang, just grub + // hunting boomerang, just grub, and the grub comes as clean parameters. final DataModel datamodel = (DataModel) req.getSession().getAttribute(DataModel.KEY); kangerooGrub(datamodel.getParameters().getValues()); Modified: branches/2.17/war/src/main/webapp/WEB-INF/web.xml =================================================================== --- branches/2.17/war/src/main/webapp/WEB-INF/web.xml 2008-06-04 13:17:55 UTC (rev 6669) +++ branches/2.17/war/src/main/webapp/WEB-INF/web.xml 2008-06-04 21:48:01 UTC (rev 6670) @@ -218,13 +218,15 @@ </servlet-mapping> <servlet-mapping> + <!-- Ceremonial boomerangs --> <servlet-name>Boomerang</servlet-name> <url-pattern>/boomerang/*</url-pattern> </servlet-mapping> <servlet-mapping> + <!-- Hunting boomerangs --> <servlet-name>Boomerang</servlet-name> - <url-pattern>/search/writeLog.do</url-pattern> + <url-pattern>/hunting/*</url-pattern> </servlet-mapping> <servlet-mapping> _______________________________________________ Kernel-commits mailing list [email protected] http://sesat.no/mailman/listinfo/kernel-commits
