# HG changeset patch # User robcast # Date 1447423590 -3600 # Node ID 0f276f0cc556eebdde99173c967ac9c3beac2c45 # Parent 9429bb9c3a4239e133b878a464d802bc8984ae60 remove global CORS servlet filter. add cors "*" in IIIF info request, controlled by config option. diff -r 9429bb9c3a42 -r 0f276f0cc556 common/src/main/java/digilib/conf/DigilibConfiguration.java --- a/common/src/main/java/digilib/conf/DigilibConfiguration.java Thu Nov 12 16:43:01 2015 +0100 +++ b/common/src/main/java/digilib/conf/DigilibConfiguration.java Fri Nov 13 15:06:30 2015 +0100 @@ -96,6 +96,8 @@ newParameter("iiif-prefix", "IIIF", null, 'f'); // IIIF Image API version to support (mostly relevant for info.json) newParameter("iiif-api-version", "2.0", null, 'f'); + // set CORS header on IIIF Image API info request + newParameter("iiif-info-cors", Boolean.TRUE, null, 'f'); // character to use as slash-replacement in IIIF identifier part newParameter("iiif-slash-replacement", "!", null, 'f'); } diff -r 9429bb9c3a42 -r 0f276f0cc556 servlet/src/main/java/digilib/servlet/ServletOps.java --- a/servlet/src/main/java/digilib/servlet/ServletOps.java Thu Nov 12 16:43:01 2015 +0100 +++ b/servlet/src/main/java/digilib/servlet/ServletOps.java Fri Nov 13 15:06:30 2015 +0100 @@ -416,6 +416,16 @@ response.setCharacterEncoding("UTF-8"); logger.debug("sending info.json"); try { + /* + * set CORS header ACAO "*" for info response as per IIIF spec + */ + if (dlReq.getDigilibConfig().getAsBoolean("iiif-info-cors")) { + String origin = dlReq.getServletRequest().getHeader("Origin"); + if (origin != null) { + response.setHeader("Access-Control-Allow-Origin", "*"); + } + } + PrintWriter writer; if (dlReq.getDigilibConfig().getAsString("iiif-api-version").startsWith("2.")) { /* diff -r 9429bb9c3a42 -r 0f276f0cc556 webapp/pom.xml --- a/webapp/pom.xml Thu Nov 12 16:43:01 2015 +0100 +++ b/webapp/pom.xml Fri Nov 13 15:06:30 2015 +0100 @@ -173,10 +173,7 @@ cors-filter - - true - - + org.eclipse.jetty diff -r 9429bb9c3a42 -r 0f276f0cc556 webapp/src/main/webapp/WEB-INF/web-3.0.xml --- a/webapp/src/main/webapp/WEB-INF/web-3.0.xml Thu Nov 12 16:43:01 2015 +0100 +++ b/webapp/src/main/webapp/WEB-INF/web-3.0.xml Fri Nov 13 15:06:30 2015 +0100 @@ -50,18 +50,4 @@ /Scaler/* - - - - CORS - - - org.eclipse.jetty.servlets.CrossOriginFilter - true - - - CORS - /* - - diff -r 9429bb9c3a42 -r 0f276f0cc556 webapp/src/main/webapp/jquery/jquery.digilib.js --- a/webapp/src/main/webapp/jquery/jquery.digilib.js Thu Nov 12 16:43:01 2015 +0100 +++ b/webapp/src/main/webapp/jquery/jquery.digilib.js Fri Nov 13 15:06:30 2015 +0100 @@ -2,7 +2,7 @@ * #%L * digilib-webapp * %% - * Copyright (C) 2011 - 2014 MPIWG Berlin, Bibliotheca Hertziana + * Copyright (C) 2011 - 2015 MPIWG Berlin, Bibliotheca Hertziana * %% * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as @@ -45,7 +45,7 @@ var defaults = { // version of this script - 'version' : 'jquery.digilib.js 2.3.4a', + 'version' : 'jquery.digilib.js 2.3.6a', // logo url 'logoUrl' : 'img/digilib-logo-text1.png', // homepage url (behind logo)