Prentice Hall and Sun Microsystems. Personal use only; do not redistribute.
6.3 A Front End to Various Search Engines
137
Listing 6.1 SearchEngines.java
package coreservlets;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.net.*;
/** Servlet that takes a search string, number of results per
* page, and a search engine name, sending the query to
* that search engine. Illustrates manipulating
* the response status line. It sends a 302 response
* (via sendRedirect) if it gets a known search engine,
* and sends a 404 response (via sendError) otherwise.
*/
public class SearchEngines extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String searchString = request.getParameter("searchString");
if ((searchString == null) ||
(searchString.length() == 0)) {
reportProblem(response, "Missing search string.");
return;
}
// The URLEncoder changes spaces to "+" signs and other
// non alphanumeric characters to "%XY", where XY is the
// hex value of the ASCII (or ISO Latin 1) character.
// Browsers always URL encode form values, so the
// getParameter method decodes automatically. But since
// we're just passing this on to another server, we need to
// re encode it.
searchString = URLEncoder.encode(searchString);
String numResults =
request.getParameter("numResults");
Second edition of this book: www.coreservlets.com; Sequel: www.moreservlets.com.
Servlet and JSP training courses by book's author: courses.coreservlets.com.
footer
Our partners:
PHP: Hypertext Preprocessor Best Web Hosting
Java Web Hosting
Jsp Web Hosting
Cheapest Web Hosting
Visionwebhosting.net Business web hosting division of Web
Design Plus. All rights reserved