diff client/digitallibrary/ImgInfo-json.jsp @ 753:39bd5128811c jquery

first real JSON jsp: ImgInfo-json.jsp
author robcast
date Sat, 05 Feb 2011 22:50:15 +0100
parents
children ce5a0e6b5ee9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/client/digitallibrary/ImgInfo-json.jsp	Sat Feb 05 22:50:15 2011 +0100
@@ -0,0 +1,48 @@
+<%@page language="java" 
+	import="digilib.io.FileOps, digilib.io.ImageFileset, digilib.io.ImageFile, 
+	digilib.image.ImageSize, digilib.servlet.DigilibConfiguration"
+	contentType="application/json"%><%!
+// create DocumentBean instance for all JSP requests
+digilib.servlet.DocumentBean docBean = new digilib.servlet.DocumentBean();
+
+// initialize DocumentBean instance in JSP init
+public void jspInit() {
+    try {
+        // set servlet init-parameter
+        docBean.setConfig(getServletConfig());
+    } catch (javax.servlet.ServletException e) {
+        System.out.println(e);
+    }
+}
+%><%
+// parsing the query
+digilib.servlet.DigilibRequest dlRequest = new digilib.servlet.DigilibRequest(request);
+docBean.setRequest(dlRequest);
+// dir cache
+digilib.servlet.DigilibConfiguration dlConfig = docBean.getDlConfig();
+digilib.io.DocuDirCache dirCache = (digilib.io.DocuDirCache) dlConfig.getValue("servlet.dir.cache");
+// get file
+FileOps.FileClass fc = FileOps.FileClass.IMAGE;
+ImageFileset imgFile = (ImageFileset) dirCache.getFile(dlRequest.getFilePath(), dlRequest.getAsInt("pn"), fc);
+
+%>// JSON format metadata about an image
+{ <% 
+    if (imgFile != null) {
+		ImageFile img = imgFile.getBiggest();
+		if (!img.isChecked()) {
+			DigilibConfiguration.docuImageIdentify(img);
+		}
+		ImageSize imgSize = img.getSize(); 
+		%>
+  "filename" : "<%= imgFile.getName() %>",
+  "aspect" : <%= imgFile.getAspect() %>,
+  "dpi_x" : <%= imgFile.getResX() %>,
+  "dpi_y" : <%= imgFile.getResY() %><%
+  
+        if (imgSize != null) { 
+            %>,
+  "width" : <%= imgSize.getWidth() %>,
+  "height" : <%= imgSize.getHeight() %>
+<% 		}
+  	} 
+%>}