changeset 1455:02252febba09 release-2.3

Merge from default branch 0f276f0cc556eebdde99173c967ac9c3beac2c45
author robcast
date Fri, 13 Nov 2015 15:10:09 +0100
parents e7d94cfbec0b (current diff) 0f276f0cc556 (diff)
children 01c50fb92856
files webapp/pom.xml webapp/src/main/webapp/jquery/jquery.digilib.js
diffstat 5 files changed, 15 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/common/src/main/java/digilib/conf/DigilibConfiguration.java	Fri Nov 13 13:09:08 2015 +0100
+++ b/common/src/main/java/digilib/conf/DigilibConfiguration.java	Fri Nov 13 15:10:09 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');        
     }
--- a/servlet/src/main/java/digilib/servlet/ServletOps.java	Fri Nov 13 13:09:08 2015 +0100
+++ b/servlet/src/main/java/digilib/servlet/ServletOps.java	Fri Nov 13 15:10:09 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.")) {
                 /*
--- a/webapp/pom.xml	Fri Nov 13 13:09:08 2015 +0100
+++ b/webapp/pom.xml	Fri Nov 13 15:10:09 2015 +0100
@@ -171,10 +171,7 @@
 		</profile>
         <profile>
             <id>cors-filter</id>
-            <activation>
-                <activeByDefault>true</activeByDefault>
-            </activation>
-            <!--  external servlet filter to add CORS headers -->
+            <!--  external servlet filter to add CORS headers. enable in web.xml -->
             <dependencies>
                 <dependency>
                     <groupId>org.eclipse.jetty</groupId>
--- a/webapp/src/main/webapp/WEB-INF/web-3.0.xml	Fri Nov 13 13:09:08 2015 +0100
+++ b/webapp/src/main/webapp/WEB-INF/web-3.0.xml	Fri Nov 13 15:10:09 2015 +0100
@@ -50,18 +50,4 @@
             /Scaler/*
         </url-pattern>
   </servlet-mapping>
-
-	<!-- add CORS headers -->
-	<filter>
-		<filter-name>CORS</filter-name>
-		<!-- use either Tomcat's or Jetty's filter class -->
-		<!-- <filter-class>org.apache.catalina.filters.CorsFilter</filter-class> -->
-		<filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
-		<async-supported>true</async-supported>
-	</filter>
-	<filter-mapping>
-		<filter-name>CORS</filter-name>
-		<url-pattern>/*</url-pattern>
-	</filter-mapping>
-
 </web-app>
--- a/webapp/src/main/webapp/jquery/jquery.digilib.js	Fri Nov 13 13:09:08 2015 +0100
+++ b/webapp/src/main/webapp/jquery/jquery.digilib.js	Fri Nov 13 15:10:09 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.4',
+        'version' : 'jquery.digilib.js 2.3.6',
         // logo url
         'logoUrl' : 'img/digilib-logo-text1.png',
         // homepage url (behind logo)