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




Сервлет NetNewsServ - часть 2


public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); PrintWriter out = new PrintWriter(resp.getOutputStream());

out.println("<HTML>"); out.println("<HEAD><TITLE>NetNewsServ Output</TITLE> </HEAD>"); out.println("<BODY>"); try { NetNewsBean nnb = new NetNewsBean( queryStr, destDir, queryFile );

out.println("<h1>The News</h1>"); out.println("<p>Select the general categories you would like to see. "+ "You can also enter a list of key words or phrases separated by " + "commas and the system will locate any headlines containing them.</p>" ); out.println("<center><form method=\"POST\" action=\"" + alias + "\" >" ); out.println("Key Words: <input type=\"TEXT\" size=\"60\"" + " maxlength=\"120\" name=\"keywords\" ><br>"); out.println("Select one or more topics (use &lt;ctrl&gt;click.) <br>"); out.println( nnb.getTopicsAsSelect() ); out.println("<br> <input type=\"SUBMIT\" value=\"Continue\" >"); out.println("</form></center><br>"); footer( out ); }catch(Exception e){ errorMsg( out, "NetNewsServ.doGet ", e ); } }

2.gif

Рис. 9.2. Форма для выбора темы заголовков

Когда пользователь щелкает на кнопке Continue (Продолжить), методу doPost, приведенному в листинге 9.27, отправляется запрос. Если пользователь не ввел никаких ключевых слов и не выбрал никаких категорий в списке, вызывается метод doGet для обновления содержимого формы. В противном случае генерируется страница, содержащая таблицу HTML, строки которой создаются при помощи метода doNetNews. Разумеется, это сильно упрощенный вариант функционирования реального коммерческого сайта.




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