annotate servlet/src/digilib/io/XMLMetaLoader.java @ 139:11cfe4c89fdc

Servlet version 1.11b1 with improved original-size. - fixed lots of bugs in metadata handling.
author robcast
date Thu, 31 Jul 2003 20:56:51 +0200
parents c36944be0b58
children bc8df0133c04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
1 /* XMLMetaLoader -- Load an XML format metadata into a Hashtable
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
2
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
3 Digital Image Library servlet components
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
4
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
5 Copyright (C) 2003 Robert Casties (robcast@mail.berlios.de)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
6
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
7 This program is free software; you can redistribute it and/or modify it
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
8 under the terms of the GNU General Public License as published by the
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
9 Free Software Foundation; either version 2 of the License, or (at your
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
10 option) any later version.
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
11
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
12 Please read license.txt for the full details. A copy of the GPL
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
13 may be found at http://www.gnu.org/copyleft/lgpl.html
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
14
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
16 along with this program; if not, write to the Free Software
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
18
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
19 */
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
20
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
21 package digilib.io;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
22
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
23 import java.io.IOException;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
24 import java.util.HashMap;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
25 import java.util.LinkedList;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
26
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
27 import javax.xml.parsers.ParserConfigurationException;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
28 import javax.xml.parsers.SAXParser;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
29 import javax.xml.parsers.SAXParserFactory;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
30
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
31 import org.xml.sax.Attributes;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
32 import org.xml.sax.SAXException;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
33 import org.xml.sax.helpers.DefaultHandler;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
34
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
35 public class XMLMetaLoader {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
36
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
37 private String outerTag = "resource";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
38 private String metaTag = "meta";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
39 private String fileTag = "file";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
40 private String fileNameTag = "name";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
41 private String filePathTag = "path";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
42 private String infoTag = "img";
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
43
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
44 public XMLMetaLoader() {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
45 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
46
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
47 /**
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
48 * inner class XMLMetaParser to be called by the parser
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
49 */
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
50 private class XMLMetaParser extends DefaultHandler {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
51
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
52 private LinkedList tags;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
53 private HashMap files;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
54 private HashMap meta;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
55 private StringBuffer content;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
56 private String fileName;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
57 private String filePath;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
58
139
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
59 /**
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
60 * extracts the elements name from either localName ln or qName qn.
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
61 *
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
62 * @param ln localName
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
63 * @param qn qName
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
64 * @return element name
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
65 */
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
66 private String getName(String ln, String qn) {
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
67 if (ln != null) {
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
68 if (ln.length() > 0) {
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
69 return ln;
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
70 }
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
71 }
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
72 // else it's qName (or nothing)
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
73 return qn;
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
74 }
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
75
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
76 // Parser calls this once at the beginning of a document
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
77 public void startDocument() throws SAXException {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
78 tags = new LinkedList();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
79 files = new HashMap();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
80 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
81
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
82 // Parser calls this for each element in a document
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
83 public void startElement(
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
84 String namespaceURI,
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
85 String localName,
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
86 String qName,
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
87 Attributes atts)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
88 throws SAXException {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
89
139
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
90 String name = getName(localName, qName);
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
91 // open a new tag
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
92 tags.addLast(name);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
93 // start new content (no nesting of tags and content)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
94 content = new StringBuffer();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
95
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
96 if (name.equals(metaTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
97 // new meta tag
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
98 meta = new HashMap();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
99 } else if (name.equals(fileTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
100 // new file tag
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
101 fileName = null;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
102 filePath = null;
139
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
103 meta = new HashMap();
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
104 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
105 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
106
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
107 // parser calls this for all tag content (possibly more than once)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
108 public void characters(char[] ch, int start, int length)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
109 throws SAXException {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
110 // append data to current string buffer
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
111 content.append(ch, start, length);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
112 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
113
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
114 // parser calls this at the end of each element
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
115 public void endElement(
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
116 String namespaceURI,
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
117 String localName,
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
118 String qName)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
119 throws SAXException {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
120
139
11cfe4c89fdc Servlet version 1.11b1 with improved original-size.
robcast
parents: 130
diff changeset
121 String name = getName(localName, qName);
130
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
122 // exit the tag
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
123 tags.removeLast();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
124
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
125 // was it a file.name tag?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
126 if (name.equals(fileNameTag) && tags.contains(fileTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
127 // save name as filename
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
128 if ((content != null)&&(content.length() > 0)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
129 fileName = content.toString();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
130 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
131 return;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
132 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
133
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
134 // was it a file.path tag?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
135 if (name.equals(filePathTag) && tags.contains(fileTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
136 // save path as filepath
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
137 if ((content != null)&&(content.length() > 0)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
138 filePath = content.toString();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
139 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
140 return;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
141 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
142
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
143 // was it a file tag?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
144 if (name.equals(fileTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
145 // is there meta to save?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
146 if ((meta != null)&&(meta.size() > 0)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
147 // file name is either file.path or file.name
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
148 String fn = null;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
149 if (filePath != null) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
150 fn = filePath;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
151 } else if (fileName != null) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
152 fn = fileName;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
153 } else {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
154 // no file name, no file
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
155 return;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
156 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
157 // save meta in file list
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
158 files.put(fn, meta);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
159 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
160 return;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
161 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
162
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
163 // was it a meta tag outside a file tag?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
164 if (name.equals(metaTag) && !tags.contains(fileTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
165 // save meta as dir meta
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
166 if ((meta != null)&&(meta.size() > 0)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
167 files.put("", meta);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
168 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
169 return;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
170 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
171
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
172 // is this inside an info tag?
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
173 if (tags.contains(infoTag)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
174 // then add whatever this is
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
175 if ((content != null)&&(content.length() > 0)) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
176 meta.put(name, content.toString());
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
177 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
178 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
179
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
180 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
181
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
182 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
183
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
184 /**
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
185 * load and parse a file (as URL)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
186 * returns HashMap with list data
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
187 */
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
188 public HashMap loadURL(String path) throws SAXException, IOException {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
189 //System.out.println("loadurl ("+path+")");
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
190 // Create a JAXP SAXParserFactory and configure it
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
191 SAXParserFactory spf = SAXParserFactory.newInstance();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
192 spf.setNamespaceAware(true);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
193
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
194 SAXParser parser = null;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
195 try {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
196 // Create a JAXP SAXParser
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
197 parser = spf.newSAXParser();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
198
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
199 } catch (ParserConfigurationException e) {
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
200 throw new SAXException(e);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
201 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
202
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
203 // create a list parser (keeps the data!)
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
204 XMLMetaParser listParser = new XMLMetaParser();
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
205
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
206 // Tell the SAXParser to parse the XML document
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
207 parser.parse(path, listParser);
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
208
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
209 return listParser.files;
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
210 }
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
211
c36944be0b58 Servlet Version 1.11a1with original size(!)
robcast
parents:
diff changeset
212 }