code: public void forward(HttpServletRequest request,
  			HttpServletResponse response, final String target)
  			throws ServletException, IOException {
  		if (target.startsWith("/WEB-INF/classes")
  				|| target.startsWith("/WEB-INF/lib")
  				|| target.matches("^/WEB-INF/.+\\.xml")) {
  			throw new IOException("Not allowed");
  		}
  		this.contentJsp = target;
  		this.originalRequestURL = request.getRequestURL().toString();
  		request.setAttribute(FERRET_NAME, this);
  		RequestDispatcher dispatcher = request.getRequestDispatcher(target);
  		if(dispatcher == null) {
  			throw new IOException("No dispatcher for " + target);
  		}
  				
  		dispatcher.forward(request, response);
  	}
docs: Store this UIResults object in the given HttpServletRequest, then
  forward the request to target, in this case, an image, html file, .jsp,
  any file which can return a complete document. Specifically, this means
  that if target is a .jsp, it must render it's own header and footer.
  @param request the HttpServletRequest
  @param response the HttpServletResponse
  @param target the String path to the .jsp to handle drawing the data,
  relative to the contextRoot (ex. "/WEB-INF/query/foo.jsp")
  @throws ServletException for usual reasons...
  @throws IOException for usual reasons...