KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > outerj > daisy > books > store > impl > XmlUtil


1 /*
2  * Copyright 2004 Outerthought bvba and Schaubroeck nv
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.outerj.daisy.books.store.impl;
17
18 import org.apache.xmlbeans.XmlObject;
19 import org.apache.xmlbeans.XmlOptions;
20 import org.apache.xmlbeans.XmlError;
21
22 import java.util.List JavaDoc;
23 import java.util.ArrayList JavaDoc;
24 import java.util.Iterator JavaDoc;
25
26 public class XmlUtil {
27     public static String JavaDoc validate(XmlObject xmlObject) {
28         XmlOptions xmlOptions = new XmlOptions();
29         List JavaDoc errors = new ArrayList JavaDoc();
30         xmlOptions.setErrorListener(errors);
31         boolean valid = xmlObject.validate(xmlOptions);
32         if (!valid) {
33             StringBuffer JavaDoc message = new StringBuffer JavaDoc();
34             Iterator JavaDoc errorsIt = errors.iterator();
35             while (errorsIt.hasNext()) {
36                 XmlError error = (XmlError)errorsIt.next();
37                 message.append(error.getMessage());
38                 if (errorsIt.hasNext())
39                     message.append(", ");
40             }
41             return message.toString();
42         }
43         return null;
44     }
45 }
46
Popular Tags