Printing from a web app can be a little tricky. The web server has no direct connection to your local printer - it's not in the architecture and for security reasons it isn't likely to be added. One trick is to send out a page with a
Java applet on it that does the print formatting on the client side, but that's a problem because unsigned applets can't print either, and browser support for applet printing isn't guaranteed.
The easy way is to have the JSP present an alternate "printer-friendly" view, where ONLY the data to be printed is displayed - a lot of webzine sites do this. However, the actual print format cannot be guaranteed, since HTML isn't really designed for absolute page layout - some work has been done there, but it's not well-supported by the current generation of browsers.
You can get a slightly better approach by outputting the data as content-type "text/text" instead of "text/html", but it can still be messy.
So far, if you want absolute page layout control, your best bet is to have a JSP or
servlet generate a PDF and let the user's copy of Adobe Acrobat Reader do the printing.