public Request read(Reader reader, HttpServletRequest req) throws WfsException {
/** create a describe feature type request class to return */
InputSource requestSource = new InputSource(reader);
// instantiante parsers and content handlers
DescribeHandler contentHandler = new DescribeHandler();
// read in XML file and parse to content handler
try {
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
ParserAdapter adapter = new ParserAdapter(parser.getParser());
adapter.setContentHandler(contentHandler);
adapter.parse(requestSource);
LOGGER.finer("just parsed: " + requestSource);
} catch (SAXException e) {
throw new WfsException(e, "XML describe request parsing error",
getClass().getName());
} catch (IOException e) {
throw new WfsException(e, "XML describe request input error",
getClass().getName());
} catch (ParserConfigurationException e) {
throw new WfsException(e, "Some sort of issue creating parser",
getClass().getName());
}
LOGGER.finer("about to return ");
LOGGER.finer("returning " + contentHandler.getRequest(req));
Request r = contentHandler.getRequest(req);
return r;
}