Example 11-8: Returning XML for any SQL query using a Servlet

import javax.servlet.*;
import javax.servlet.http.*;

public class XmlForQueryServlet extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response)
                    throws ServletException, java.io.IOException {

    // Set MIME type of Response to indicate XML
    response.setContentType("text/xml");

    // Use value of URL parameter 'sql' as SQL statement to execute
    String query = request.getParameter("sql");

    try {
      // Use XMLForQuery.print to generate the XML Results,
      // passing the Servlet's HTTP Response PrintWriter.
      // Use "ROWSET" and "ROW" as top-level and per-row tags, respectively
      XMLForQuery.print(query, "ROWSET", "ROW", response.getWriter());
    }
    catch (Exception e) {
      throw new ServletException("Error processing query");
    }
  }
}