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




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


Листинг 9.27. Метод doPost (NetNewsServ.java)

// assumes response has been set to text/html private void errorMsg ( PrintWriter out, String msg, Exception ex ){ header( out ); out.println("<h2>Error: " ); out.println( msg ); out.println("</h2><br>"); if( ex != null ){ ex.printStackTrace( out ); } out.println("<br>"); out.println("<a href=\"mailto:wbrogden@bga.com\"> Please mail me the error message.</a><br>"); footer( out ); } private void header(PrintWriter out ){ out.println("<html>"); out.println("<head><title>Network News Servlet</title> </head>"); out.println("<body>"); }

private void footer(PrintWriter out ){ out.println("<hr><br>Network News Servlet " + version + " <br>" ); out.println("</body>"); out.println("</html>"); out.close(); }

}

Как показано в листинге 9.28, метод doNetNews получает объект NetNewsBean и выводит полученные заголовки в виде строк таблицы.

Листинг 9.28. Этот метод форматирует полученные заголовки (NetNewsServ.java)

// assumes a table has been started // topics[] are tags from list, ie 0, 1 etc. private void doNetNews ( PrintWriter out,String keywords, String[] topics ){ int i =0 ; try { NetNewsBean nnb = new NetNewsBean ( queryStr, destDir, queryFile ); out.println("Update " + nnb.getDocDate()); String[] tstr = nnb.getTopicsAsArray(); if( keywords.length() > 0 ) { out.println("<tr><td> Selected by keywords: " + keywords + "</td></tr>"); out.println( nnb.getContentByKeyWord( keywords, fmt )) ; } out.println("<hr>") ; if( topics == null ){ // none selected for( i = 0 ; i < tstr.length ; i++ ){ out.println("<tr><td>topic: " + tstr[i] + "</td></tr>" ); out.println( nnb.getContentByTopic( tstr[i], fmt ) ); } } else { for( i = 0 ; i < topics.length ; i++ ){ int tn = Integer.parseInt( topics[i] ); out.println("<tr><td>topic: " + tstr[tn] + "</td></tr>" ); out.println(nnb.getContentByTopic(tstr[ tn ], fmt)); } } }catch(Exception e){ out.println( "<tr><td>" ); e.printStackTrace(out ); out.println("</td></tr>"); } }




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