Электронный магазин на Java и XML

         

Пример сервлета для просмотра результатов отчета


Сервлет QanalysisServ, рассматриваемый в этом разделе, предоставляет доступ по сети к снимку результатов проходящего опроса, поэтому его можно назвать сер- влетом для просмотра результатов отчета. Он использует файл questionnaire.pro- perties для поиска всех текущих опросов и предлагает вам выбрать один из них. Затем он определяет, какие выходные файлы генерируются в этом опросе, и предлагает выбрать один из них для формирования отчета.

В листинге 7.31 показаны инструкции импорта, статические переменные и метод init — начало кода сервлета.

Листинг 7.31. Сервлет QanalysisServ (QanalysisServ.java)

package com.XmlEcomBook.Chap07;

import com.XmlEcomBook.DOMlibrary ; import org.w3c.dom.* ; import com.sun.xml.tree.* ; import java.io.*; import java.util.* ; import javax.servlet.*; import javax.servlet.http.*;

public class QanalysisServ extends HttpServlet { static String brcrlf = "<br>\r\n" ; static String homedir = "e:\\scripts\\questionnaire" ; static String handler = "http://www.lanw.com/servlet/Qanalysis" ; static String passwd = "lovexml" ; static String version = "v1.0 May 28"; Properties qProp ;

// note we share properties file with QuestionnaireServ public void init(ServletConfig config) throws ServletException { super.init(config); System.out.println("Start QanalysisServ "); homedir = config.getInitParameter("homedir") ; File f = new File( homedir, "questionnaire.properties"); try { qProp = new Properties(); qProp.load( new FileInputStream(f) ); String tmp = qProp.getProperty("analysis"); if( tmp != null ) handler = tmp ; System.out.println("Loaded properties for Qanalysis: " + handler ); }catch(IOException e){ System.out.println("QanalysisServ Error loading " + e ); } }

Входом в сервлет служит метод doGet, показанный в листинге 7.32. Обычно для входа используется форма, в которую требуется ввести пароль пользователя, просто чтобы избежать риска случайного доступа к сервлету постороннего пользователя. Предположим, что все прошло успешно; тогда этот метод генерирует страницу с формой, которая позволяет осуществить выбор среди всех имеющихся в наличии отчетов. Выбранный файл передается методу doPost.




Содержание  Назад  Вперед