Author: sshafroi
Date: 2008-06-19 15:46:35 +0200 (Thu, 19 Jun 2008)
New Revision: 6706

Removed:
   trunk/war/src/main/webapp/WEB-INF/decorators.xml
   trunk/war/src/main/webapp/WEB-INF/sitemesh.xml
Modified:
   trunk/pom.xml
   trunk/site-spi/src/main/java/no/sesat/search/site/Site.java
   trunk/war/pom.xml
   trunk/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
   
trunk/war/src/main/java/no/sesat/search/view/taglib/AbstractVelocityTemplateTag.java
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/mobileDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/opensearchDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/printDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/rssDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/saveDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/vcardDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/webDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/jsp/decorators/xmlDecorator.jsp
   trunk/war/src/main/webapp/WEB-INF/web.xml
Log:
SEARCH-4183 - Configurable content types

Removing Sitemesh

The decorators are still in use and will be selected based on the output 
parameter. The content types are still not configurable but have been moved 
into each decorator.


Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml       2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/pom.xml       2008-06-19 13:46:35 UTC (rev 6706)
@@ -536,11 +536,6 @@
                 <version>1.2.14</version>
             </dependency>
             <dependency>
-                <groupId>opensymphony</groupId>
-                <artifactId>sitemesh</artifactId>
-                <version>2.2.1</version>
-            </dependency>
-            <dependency>
                 <groupId>rome</groupId>
                 <artifactId>rome</artifactId>
                 <version>0.8</version>

Modified: trunk/site-spi/src/main/java/no/sesat/search/site/Site.java
===================================================================
--- trunk/site-spi/src/main/java/no/sesat/search/site/Site.java 2008-06-17 
12:14:44 UTC (rev 6705)
+++ trunk/site-spi/src/main/java/no/sesat/search/site/Site.java 2008-06-19 
13:46:35 UTC (rev 6706)
@@ -32,6 +32,9 @@
 import java.util.concurrent.locks.ReentrantReadWriteLock;
 import no.schibstedsok.commons.ioc.BaseContext;
 import org.apache.log4j.Level;
+
+import no.sesat.Interpreter;
+import no.sesat.Interpreter.Function;
 import no.sesat.search.site.config.ResourceLoadException;
 import org.apache.log4j.Logger;
 
@@ -371,4 +374,29 @@
             ? theSiteName
             : theSiteName + '/';
     }
+
+    static {
+        Interpreter.addFunction("sites", new Function() {
+            public String execute(no.sesat.Interpreter.Context ctx) {
+                String res = "Sites instances:\n";
+                try{
+                    INSTANCES_LOCK.readLock().lock();
+                    for(String s : INSTANCES.keySet()) {
+                        Site site = INSTANCES.get(s);
+                        res += "Site: " + s + "\n";
+                        res += "    Name:       " + site.getName() + "\n";
+                        res += "    Local:      " + site.getLocale() + "\n";
+                        res += "    cxtName:    " + site.cxtName + "\n";
+                        res += "    UniqueName: " + site.uniqueName + "\n\n";
+                    }
+                }finally{
+                    INSTANCES_LOCK.readLock().unlock();
+                }
+                return res;
+            }
+            public String describe() {
+                return "List content of INSTANCES in Site.";
+            }
+        });
+    }
 }

Modified: trunk/war/pom.xml
===================================================================
--- trunk/war/pom.xml   2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/pom.xml   2008-06-19 13:46:35 UTC (rev 6706)
@@ -178,10 +178,6 @@
         </dependency>
         <dependency>
             <groupId>opensymphony</groupId>
-            <artifactId>sitemesh</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>opensymphony</groupId>
             <artifactId>oscache</artifactId>
         </dependency>
         <dependency>

Modified: 
trunk/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
===================================================================
--- trunk/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java     
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java     
2008-06-19 13:46:35 UTC (rev 6706)
@@ -20,7 +20,8 @@
 
 import java.io.IOException;
 import java.util.Properties;
-import java.util.Map;
+
+import javax.servlet.RequestDispatcher;
 import javax.servlet.ServletException;
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServlet;
@@ -33,17 +34,14 @@
 import no.sesat.search.mode.SearchModeFactory;
 import no.sesat.search.run.QueryFactory;
 import no.sesat.search.run.RunningQuery;
-import no.sesat.search.security.MD5Generator;
 import no.sesat.search.datamodel.DataModel;
 import no.sesat.search.datamodel.DataModelFactory;
 import no.sesat.search.datamodel.access.ControlLevel;
 import no.sesat.search.datamodel.generic.DataObject;
 import no.sesat.search.datamodel.generic.StringDataObject;
-import no.sesat.search.datamodel.generic.StringDataObjectSupport;
 import no.sesat.search.datamodel.page.PageDataObject;
 import no.sesat.search.datamodel.request.ParametersDataObject;
 import no.sesat.search.http.servlet.FactoryReloads.ReloadArg;
-import no.sesat.search.result.ResultItem;
 import no.sesat.search.site.Site;
 import no.sesat.search.site.SiteContext;
 import no.sesat.search.site.SiteKeyedFactoryInstantiationException;
@@ -175,8 +173,6 @@
             final SearchTab searchTab = updateSearchTab(cParameter, request, 
dmFactory, genericCxt);
 
             if (null!= searchTab) {
-
-
                 LOG.debug("Character encoding ="  + 
request.getCharacterEncoding());
 
                 final StopWatch stopWatch = new StopWatch();
@@ -192,8 +188,6 @@
                         ipAddr,
                         datamodel.getSite().getSiteConfiguration());
 
-                updateContentType(site, response, request);
-
                 // If the rss is hidden, require a partnerId.
                 // The security by obscurity has been somewhat improved by the
                 // addition of rssPartnerId as a md5-protected parameter 
(MD5ProtectedParametersFilter).
@@ -220,6 +214,17 @@
                 response.sendError(HttpServletResponse.SC_NOT_FOUND);
             }
 
+            String output = request.getParameter("output");
+            if (output == null || output.isEmpty()) {
+                if (site.getName().startsWith("xml")) {
+                    output = "mobile";
+                } else {
+                    output = "web";
+                }
+            }
+            RequestDispatcher dispatcher = 
getServletContext().getRequestDispatcher("/WEB-INF/jsp/decorators/" + output + 
"Decorator.jsp");
+            dispatcher.forward(request, response);
+
         }finally{
 
             // DataModel's ControlLevel will be REQUEST_CONSTRUCTION or 
RUNNING_QUERY_RESULT_HANDLING
@@ -262,73 +267,6 @@
         }
     }
 
-    private static void updateContentType(
-            final Site site,
-            final HttpServletResponse response,
-            final HttpServletRequest request){
-
-        /* Setting default encoding */
-        response.setCharacterEncoding("UTF-8");
-
-        // TODO. Any better way to do this. Sitemesh?
-        if (request.getParameter("output") != null && 
request.getParameter("output").equals("rss")) {
-            if (request.getParameter("encoding") != null && 
request.getParameter("encoding").equals("iso-8859-1")){
-                response.setContentType("text/xml; charset=iso-8859-1");
-                response.setCharacterEncoding("iso-8859-1"); // correct 
encoding
-            } else {
-                response.setContentType("text/xml; charset=utf-8");
-            }
-        } else if (site.getName().startsWith("mobil") || 
site.getName().startsWith("xml")) {
-            response.setContentType("text/xml; charset=utf-8");
-            try {
-                // Just can't get sitemesh to work in the way I imagine it 
works.
-                response.getWriter().write(
-                    "<html><head><META name=\"decorator\" 
content=\"mobiledecorator\"/></head></html>");
-            } catch (IOException ex) {
-                LOG.error(ex.getMessage(), ex);
-            }
-        } else if (request.getParameter("output") != null
-                && request.getParameter("output").equals("savedecorator")) {
-            final String fileName = ".ics";
-            final String charset = "utf-8";
-            String showid = request.getParameter("showId");
-
-            if (showid == null) {
-                showid = "";
-            }
-
-            response.setContentType("text/calendar; charset=" + charset);
-            
response.setHeader("Content-Disposition","attachment;filename=sesam-tvsok-" + 
showid + fileName);
-        } else if (request.getParameter("output") != null && 
request.getParameter("output").equals("vcarddecorator")) {
-            final String userAgent = request.getHeader("User-Agent");
-            String showid = request.getParameter("showId");
-            String charset = "utf-8";
-
-            if (userAgent.indexOf("Windows") != -1) {
-                charset = "iso-8859-1";
-            }
-            if (showid == null) {
-                showid = "";
-            }
-
-            response.setCharacterEncoding(charset);
-            response.setContentType("text/x-vcard; charset=" + charset);
-            
response.setHeader("Content-Disposition","attachment;filename=vcard-" + showid 
+ ".vcf");
-        } else if (request.getParameter("output") != null
-                && (request.getParameter("output").equals("opensearch")
-                        || request.getParameter("output").equals("xml"))) {
-            final String charset = "utf-8";
-            response.setCharacterEncoding(charset);
-            response.setContentType("text/xml; charset=" + charset);
-        } else if (request.getParameter("encoding") != null && 
request.getParameter("encoding").equals("iso-8859-1")){
-            response.setContentType("text/html; charset=iso-8859-1"); // for 
external javascript document.write(), where server uses iso encoding
-            response.setCharacterEncoding("iso-8859-1");
-        } else {
-            final String charset = "utf-8";
-            response.setContentType("text/html; charset=" + charset);
-        }
-    }
-
     private static void updateAttributes(
             final HttpServletRequest request,
             final RunningQuery.Context rqCxt){

Modified: 
trunk/war/src/main/java/no/sesat/search/view/taglib/AbstractVelocityTemplateTag.java
===================================================================
--- 
trunk/war/src/main/java/no/sesat/search/view/taglib/AbstractVelocityTemplateTag.java
        2008-06-17 12:14:44 UTC (rev 6705)
+++ 
trunk/war/src/main/java/no/sesat/search/view/taglib/AbstractVelocityTemplateTag.java
        2008-06-19 13:46:35 UTC (rev 6706)
@@ -20,12 +20,7 @@
  */
 package no.sesat.search.view.taglib;
 
-
-import com.opensymphony.module.sitemesh.Page;
-import com.opensymphony.module.sitemesh.RequestConstants;
-import com.opensymphony.module.sitemesh.util.OutputConverter;
 import java.io.IOException;
-import java.io.StringWriter;
 import java.util.Enumeration;
 import java.util.Map;
 import javax.servlet.ServletException;
@@ -207,23 +202,6 @@
                 }
             }
 
-            // populate sitemesh attributes -- will be removed
-            final Page siteMeshPage = (Page) 
cxt.findAttribute(RequestConstants.PAGE);
-                if(siteMeshPage != null){
-                context.put("page", siteMeshPage);
-                context.put("title", 
OutputConverter.convert(siteMeshPage.getTitle()));
-                {
-                    final StringWriter buffer = new StringWriter();
-                    siteMeshPage.writeBody(OutputConverter.getWriter(buffer));
-                    context.put("body", buffer.toString());
-                }
-                //{ // missing from our version of sitemesh
-                //    final StringWriter buffer = new StringWriter();
-                //    
siteMeshPage.writeHead(OutputConverter.getWriter(buffer));
-                //    context.put("head", buffer.toString());
-                //}
-            }
-
             // merge it into the JspWriter
             template.merge(context, out);
 

Deleted: trunk/war/src/main/webapp/WEB-INF/decorators.xml
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/decorators.xml    2008-06-17 12:14:44 UTC 
(rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/decorators.xml    2008-06-19 13:46:35 UTC 
(rev 6706)
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Copyright (2007) Schibsted Søk AS
- *   This file is part of SESAT.
- *
- *   SESAT is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU Affero General Public License as published 
by
- *   the Free Software Foundation, either version 3 of the License, or
- *   (at your option) any later version.
- *
- *   SESAT is distributed in the hope that it will be useful,
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *   GNU Affero General Public License for more details.
- *
- *   You should have received a copy of the GNU Affero General Public License
- *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
--->
-<decorators defaultdir="/WEB-INF/jsp/decorators">
-
-    <decorator name="rss" page="rssDecorator.jsp">
-    </decorator>
-
-    <decorator name="printable" page="printDecorator.jsp" >
-    </decorator>
-
-    <decorator name="mobiledecorator" page="mobileDecorator.jsp"/>
-
-    <decorator name="savedecorator" page="saveDecorator.jsp"/>
-    <decorator name="opensearch" page="opensearchDecorator.jsp"/>
-    <decorator name="vcarddecorator" page="vcardDecorator.jsp"/>
-    <decorator name="xml" page="xmlDecorator.jsp"/>
-    <decorator name="maindecorator" page="webDecorator.jsp">
-           <pattern>*</pattern>
-    </decorator>
-
-
-</decorators>

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/mobileDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/mobileDecorator.jsp        
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/mobileDecorator.jsp        
2008-06-19 13:46:35 UTC (rev 6706)
@@ -13,5 +13,5 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><%@ page language="java" pageEncoding="UTF-8" 
contentType="text/html;charset=utf-8" %><%@ taglib 
uri="/WEB-INF/SearchPortal.tld" prefix="search" %><search:main/>
-
+ --%><%@ page pageEncoding="UTF-8" contentType="text/xml; charset=utf-8" %><%--
+ --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" 
%><search:main/>
\ No newline at end of file

Modified: 
trunk/war/src/main/webapp/WEB-INF/jsp/decorators/opensearchDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/opensearchDecorator.jsp    
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/opensearchDecorator.jsp    
2008-06-19 13:46:35 UTC (rev 6706)
@@ -1,4 +1,4 @@
-<%-- Copyright (2008) Schibsted S�k AS
+<%-- Copyright (2008) Schibsted Søk AS
  *   This file is part of SESAT.
  *
  *   SESAT is free software: you can redistribute it and/or modify
@@ -13,7 +13,8 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><?xml version="1.0" encoding="UTF-8" ?>
+--%><%@ page contentType="text/xml; charset=utf-8" %><%--
+--%><?xml version="1.0" encoding="UTF-8" ?>
 <%@ taglib uri="http://java.sun.com/jstl/core_rt"; prefix="c" %>
 <%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %>
 <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/";>

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/printDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/printDecorator.jsp 
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/printDecorator.jsp 
2008-06-19 13:46:35 UTC (rev 6706)
@@ -13,14 +13,9 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><%@ page
-        language="java"
-        pageEncoding="UTF-8"
-        contentType="text/html;charset=utf-8"%>
+ --%><%@ page contentType="text/html; charset=utf-8" %><%--
+ --%><%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator"; 
prefix="decorator" %>
 
-<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator"; 
prefix="decorator" %>
-
-
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
 

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/rssDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/rssDecorator.jsp   
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/rssDecorator.jsp   
2008-06-19 13:46:35 UTC (rev 6706)
@@ -1,4 +1,4 @@
-<%-- Copyright (2008) Schibsted Søk AS
+<%-- Copyright (2008) Schibsted S�k AS
  *   This file is part of SESAT.
  *
  *   SESAT is free software: you can redistribute it and/or modify
@@ -13,6 +13,15 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
+--%><%
+{
+    if (request.getParameter("encoding") != null && 
request.getParameter("encoding").equals("iso-8859-1")){
+        response.setContentType("text/xml; charset=iso-8859-1");
+    } else {
+        response.setContentType("text/xml; charset=utf-8");
+    }
+}
+%><%--
 --%><%@ page import="no.sesat.search.view.config.SearchTab"%><%--
 --%><%@ page import="no.sesat.search.view.output.SyndicationGenerator"%><%--
 --%><%@ page import="no.sesat.search.site.Site"%><%--
@@ -21,7 +30,6 @@
 --%><%@ page import="javax.xml.parsers.DocumentBuilder" %><%--
 --%><%@ page import="java.util.Properties" %><%--
 --%><%@ page import="no.sesat.search.site.config.*" %><%--
---%><[EMAIL PROTECTED] contentType="text/xml"%><[EMAIL PROTECTED] 
pageEncoding="UTF-8"%><%--
 --%><%
 
     final HttpServletRequest req = request;

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/saveDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/saveDecorator.jsp  
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/saveDecorator.jsp  
2008-06-19 13:46:35 UTC (rev 6706)
@@ -1,4 +1,4 @@
-<%-- Copyright (2008) Schibsted Søk AS
+<%-- Copyright (2008) Schibsted S�k AS
  *   This file is part of SESAT.
  *
  *   SESAT is free software: you can redistribute it and/or modify
@@ -13,6 +13,19 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><[EMAIL PROTECTED] contentType="text/calendar; charset=utf-8"%><[EMAIL 
PROTECTED] pageEncoding="UTF-8"%><%--
+ --%><%
+ {
+        final String fileName = ".ics";
+        final String charset = "utf-8";
+        String showid = request.getParameter("showId");
+       
+        if (showid == null) {
+            showid = "";
+        }
+       
+        response.setContentType("text/calendar; charset=" + charset);
+        
response.setHeader("Content-Disposition","attachment;filename=sesam-tvsok-" + 
showid + fileName);
+ }
+ %><%--
 --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %><%--
 --%><search:velocity template="/results/tvCalendar"/>
\ No newline at end of file

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/vcardDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/vcardDecorator.jsp 
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/vcardDecorator.jsp 
2008-06-19 13:46:35 UTC (rev 6706)
@@ -13,6 +13,25 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %><% String 
currentC = (String) request.getAttribute("c"); %><%if (currentC.equals("yvc") 
|| currentC.equals("yip")) { %><search:velocity 
template="/results/vcardYellow"/><% } else { %><search:velocity 
template="/results/vcardWhite"/><%}%>      
-
-
+ --%><%
+ {
+        final String userAgent = request.getHeader("User-Agent");
+        String showid = request.getParameter("showId");
+        String charset = "utf-8";
+       
+        if (userAgent.indexOf("Windows") != -1) {
+            charset = "iso-8859-1";
+        }
+        if (showid == null) {
+            showid = "";
+        }
+        
+        response.setCharacterEncoding(charset);
+        response.setContentType("text/x-vcard; charset=" + charset);
+        response.setHeader("Content-Disposition","attachment;filename=vcard-" 
+ showid + ".vcf");
+ }
+ %>
+ <%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %><%--
+ 
+ --%><% String currentC = (String) request.getAttribute("c"); %><%--
+ --%><%if (currentC.equals("yvc") || currentC.equals("yip")) { 
%><search:velocity template="/results/vcardYellow"/><% } else { 
%><search:velocity template="/results/vcardWhite"/><%}%>      

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/webDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/webDecorator.jsp   
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/webDecorator.jsp   
2008-06-19 13:46:35 UTC (rev 6706)
@@ -1,4 +1,4 @@
-<%-- 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
@@ -18,4 +18,16 @@
   --
   -- @author <a href="mailto:[EMAIL PROTECTED]">Michael Semb Wever</a>
   -- @version $Id$
-  --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" 
%><search:main/>
\ No newline at end of file
+  --%><%
+ {
+      if (request.getParameter("encoding") != null && 
request.getParameter("encoding").equals("iso-8859-1")){
+          response.setContentType("text/html; charset=iso-8859-1"); // for 
external javascript document.write(), where server uses iso encoding
+      }
+      else {
+          response.setContentType("text/html; charset=UTF-8");
+      }
+ }
+  %><%--
+  --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %><%--
+  --%>
+ <search:main/> 
\ No newline at end of file

Modified: trunk/war/src/main/webapp/WEB-INF/jsp/decorators/xmlDecorator.jsp
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/jsp/decorators/xmlDecorator.jsp   
2008-06-17 12:14:44 UTC (rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/jsp/decorators/xmlDecorator.jsp   
2008-06-19 13:46:35 UTC (rev 6706)
@@ -13,7 +13,7 @@
  *
  *   You should have received a copy of the GNU Affero General Public License
  *   along with SESAT.  If not, see <http://www.gnu.org/licenses/>.
- --%><%@ page language="java" pageEncoding="UTF-8" contentType="text/xml" 
%><%--
+--%><%@ page pageEncoding="UTF-8" contentType="text/xml" %><%--
 --%><%@ taglib uri="http://java.sun.com/jstl/core_rt"; prefix="c" %><%--
 --%><%@ taglib uri="/WEB-INF/SearchPortal.tld" prefix="search" %><%--
 --%><?xml version="1.0" encoding="UTF-8"?>

Deleted: trunk/war/src/main/webapp/WEB-INF/sitemesh.xml
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/sitemesh.xml      2008-06-17 12:14:44 UTC 
(rev 6705)
+++ trunk/war/src/main/webapp/WEB-INF/sitemesh.xml      2008-06-19 13:46:35 UTC 
(rev 6706)
@@ -1,67 +0,0 @@
-<sitemesh>
-    <property name="decorators-file" value="/WEB-INF/decorators.xml"/>
-    <excludes file="${decorators-file}"/>
-
-    <page-parsers>
-        <parser content-type="text/html" 
class="com.opensymphony.module.sitemesh.parser.HTMLPageParser"/>
-        <parser content-type="text/xml" 
class="com.opensymphony.module.sitemesh.parser.HTMLPageParser"/>
-        <parser content-type="text/calendar" 
class="com.opensymphony.module.sitemesh.parser.HTMLPageParser"/>
-        <parser content-type="text/x-vcard" 
class="com.opensymphony.module.sitemesh.parser.HTMLPageParser"/>
-        <parser content-type="text/html;charset=ISO-8859-1"
-                
class="com.opensymphony.module.sitemesh.parser.HTMLPageParser"/>
-    </page-parsers>
-
-    <decorator-mappers>
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.ParameterDecoratorMapper">
-            <param name="decorator.parameter" value="output"/>
-        </mapper>
-
-        <!-- mapper that allows HTML META tags to control choice of decorator 
-->
-        <!-- First force decorator if its hardcode into the Velocity templates 
or whereevere it is
-             hardcoded -->
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.PageDecoratorMapper">
-            <param name="property.1" value="meta.decorator"/>
-            <param name="property.2" value="decorator"/>
-        </mapper>
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.PrintableDecoratorMapper">
-            <param name="decorator" value="printable"/>
-            <param name="parameter.name" value="printable"/>
-            <param name="parameter.value" value="true"/>
-        </mapper>
-
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper">
-            <param name="config" value="${decorators-file}"/>
-        </mapper>
-
-        <!--
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.FrameSetDecoratorMapper">
-        </mapper>
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.AgentDecoratorMapper">
-            <param name="match.MSIE" value="ie"/>
-            <param name="match.Mozilla [" value="ns"/>
-            <param name="match.Opera" value="opera"/>
-            <param name="match.Lynx" value="lynx"/>
-        </mapper>
-
-
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.RobotDecoratorMapper">
-            <param name="decorator" value="robot"/>
-        </mapper>
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.ParameterDecoratorMapper">
-            <param name="decorator.parameter" value="decorator"/>
-            <param name="parameter.name" value="confirm"/>
-            <param name="parameter.value" value="true"/>
-        </mapper>
-
-        <mapper 
class="com.opensymphony.module.sitemesh.mapper.FileDecoratorMapper">
-        </mapper>
-        -->
-
-    </decorator-mappers>
-</sitemesh>
\ No newline at end of file

Modified: trunk/war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/war/src/main/webapp/WEB-INF/web.xml   2008-06-17 12:14:44 UTC (rev 
6705)
+++ trunk/war/src/main/webapp/WEB-INF/web.xml   2008-06-19 13:46:35 UTC (rev 
6706)
@@ -44,11 +44,6 @@
         <filter-name>DataModelFilter</filter-name>
         
<filter-class>no.sesat.search.http.filters.DataModelFilter</filter-class>
     </filter>
-    
-    <filter>
-        <filter-name>sitemesh</filter-name>
-        
<filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
-    </filter>
 
     <filter> <!-- TODO desparately needs sesat-ising. fortunately it's not a 
required secret anymore. SEARCH-4366 -->
         <filter-name>md5ProtectParameters</filter-name>
@@ -104,30 +99,23 @@
     <filter-mapping>
         <filter-name>UserFilter</filter-name>
         <url-pattern>/search/*</url-pattern>
-        <dispatcher>INCLUDE</dispatcher> 
+        <dispatcher>INCLUDE</dispatcher>
         <dispatcher>FORWARD</dispatcher>
         <dispatcher>REQUEST</dispatcher>
     </filter-mapping>
     <filter-mapping>
         <filter-name>md5ProtectParameters</filter-name>
         <url-pattern>/search/*</url-pattern>
-        <dispatcher>INCLUDE</dispatcher> 
+        <dispatcher>INCLUDE</dispatcher>
         <dispatcher>FORWARD</dispatcher>
         <dispatcher>REQUEST</dispatcher>
     </filter-mapping>
     <filter-mapping>
-        <filter-name>sitemesh</filter-name>
-        <url-pattern>/search/*</url-pattern>
-        <dispatcher>INCLUDE</dispatcher> 
-        <dispatcher>FORWARD</dispatcher>
-        <dispatcher>REQUEST</dispatcher> 
-    </filter-mapping>
-    <filter-mapping>
         <filter-name>SiteJspLoaderFilter</filter-name>
         <url-pattern>*.jsp</url-pattern>
+        <dispatcher>FORWARD</dispatcher>
         <dispatcher>INCLUDE</dispatcher>
     </filter-mapping>
-    
     <!-- Servlets -->
 
     <servlet>

_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits

Reply via email to