comparison client/digitallibrary/digilib.jsp @ 60:58d23f512c80

New DigilibServlet.jar with new version (with DigilibRequest object). Changes in digilib, digicat, dlImage JSP. Initialization now done only once in jspInit. Uses DigilibRequest object to convert old +++-style requests to parameter-style requests and for BaseURL. Prettyfied config files (no authentication is default).
author robcast
date Wed, 28 Aug 2002 20:17:35 +0200
parents e918bd61084d
children b877e54b0794
comparison
equal deleted inserted replaced
59:8d9a0abf3626 60:58d23f512c80
1 <%@ page language="java" import="java.util.*" %> 1 <%@ page language="java" %>
2
3 <%!
4 // authentication stuff - robert
5 // -----------------------------
6 // create DocumentBean instance for all JSP requests
7 digilib.servlet.DocumentBean docBean = new digilib.servlet.DocumentBean();
8
9 // initialize DocumentBean instance in JSP init
10 public void jspInit() {
11 try {
12 // set servlet init-parameter
13 docBean.setConfig(getServletConfig());
14 } catch (javax.servlet.ServletException e) {
15 System.out.println(e);
16 }
17 }
18 %>
19
20 <%
21 // check if authentication is needed and redirect if necessary
22 docBean.doAuthentication(request, response);
23
24 // parsing the query
25 // -----------------
26
27 digilib.servlet.DigilibRequest dlRequest = new digilib.servlet.DigilibRequest();
28 // fill the request with the old format query string
29 dlRequest.setWithOldString(request.getQueryString());
30 // add number of pages
31 dlRequest.setPt(docBean.getNumPages(request));
32 // retrieve request in new paramter format
33 String query = "dlImage.jsp?" + dlRequest.getAsString();
34 %>
2 35
3 <html> 36 <html>
4 <head> 37 <head>
5 <title>Digital Document Library</title> 38 <title>Digital Document Library</title>
6 </head> 39 </head>
7
8 <jsp:useBean id="DB" scope="page" class="digilib.servlet.DocumentBean" />
9
10 <%
11 // authentication stuff - robert
12 // -----------------------------
13
14 // set servlet init-parameter
15 DB.setConfig(getServletConfig());
16 // check if authentication is needed and redirect if necessary
17 DB.doAuthentication(request, response);
18
19
20 // parsing the query
21 // -----------------
22
23 String query = "dlImage.jsp?";
24 String token;
25
26 if (request.getQueryString() != null) {
27 // have to enable the passing of delimiter to get empty parameters
28 StringTokenizer tokenizer = new StringTokenizer(request.getQueryString(), "+", true);
29
30 // looks ugly but it works - hopefully...
31
32 if (tokenizer.hasMoreTokens()) {
33 token = tokenizer.nextToken();
34 if (token != "+") {
35 query += "fn=" + token;
36 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
37 }
38 }
39 if (tokenizer.hasMoreTokens()) {
40 token = tokenizer.nextToken();
41 if (token != "+") {
42 query += "&pn=" + token;
43 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
44 }
45 }
46 if (tokenizer.hasMoreTokens()) {
47 token = tokenizer.nextToken();
48 if (token != "+") {
49 query += "&ws=" + token;
50 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
51 }
52 }
53 if (tokenizer.hasMoreTokens()) {
54 token = tokenizer.nextToken();
55 if (!token.equals("+")) {
56 query += "&mo=" + token;
57 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
58 }
59 }
60 if (tokenizer.hasMoreTokens()) {
61 token = tokenizer.nextToken();
62 if (!token.equals("+")) {
63 query += "&mk=" + token;
64 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
65 }
66 }
67 if (tokenizer.hasMoreTokens()) {
68 token = tokenizer.nextToken();
69 if (token != "+") {
70 query += "&wx=" + token;
71 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
72 }
73 }
74 if (tokenizer.hasMoreTokens()) {
75 token = tokenizer.nextToken();
76 if (token != "+") {
77 query += "&wy=" + token;
78 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
79 }
80 }
81 if (tokenizer.hasMoreTokens()) {
82 token = tokenizer.nextToken();
83 if (token != "+") {
84 query += "&ww=" + token;
85 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
86 }
87 }
88 if (tokenizer.hasMoreTokens()) {
89 token = tokenizer.nextToken();
90 if (token != "+") {
91 query += "&wh=" + token;
92 if (tokenizer.hasMoreTokens()) tokenizer.nextToken();
93 }
94 }
95
96 // a module update for total number of pages
97 query += "&pt=" + DB.getNumPages(request);
98 }
99 %>
100 40
101 <frameset cols="*,90" border="0"> 41 <frameset cols="*,90" border="0">
102 <frame name="mainFrame" src="<%= query %>" scrolling="auto"> 42 <frame name="mainFrame" src="<%= query %>" scrolling="auto">
103 <frameset rows="20,*" border="0"> 43 <frameset rows="20,*" border="0">
104 <frame name="pageFrame" src="about:blank" scrolling="no" noresize> 44 <frame name="pageFrame" src="about:blank" scrolling="no" noresize>