printing a file

how to print a file by using java.

I am retreiving some rows from a table can I  redirect the output to the printer.

Thanx
qader99Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

seredaCommented:
One well known technique is to generate
HTML code, open a new explorer window with this HTML and then make it print that page.

Is is simple and fast to do it that way.
Otherwise you need to use some microsoft proprietary classes (ms.*), i guess.
0
vladi21Commented:
Java 1.1
http://www.developer.com/news/techworkshop/012298_javaprint.html 
Using Design Patterns to Simplify Printing in Java 1.1 *
http://www.ibm.com/java/education/printing/index.html
http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-Printing.html
http://java.sun.com/products/jdk/1.1/docs/guide/awt/designspec/printing.html
How do I print out a component in Java 1.1?
http://www.inquiry.com/techtips/java_pro/answer.asp?pro=java_pro&docID=1869 


Java 1.2
http://manning.spindoczine.com/sbe/files/uts2/Chapter22html/Chapter22.htm
http://developer.java.sun.com/developer/onlineTraining/Programming/JDCBook/render.html
http://developer.java.sun.com/developer/onlineTraining/Programming/JDCBook/advprint.html
http://java.sun.com/printing/jdk1.2/printing-chapter-v2.txt
How can I speed up printing in my JDK 1.2 Swing application?
http://developer.java.sun.com/developer/qow/archive/20/index.html

bugs in Java2 printing API
http://developer.java.sun.com/developer/bugParade/bugs/4184099.html 
http://developer.java.sun.com/developer/bugParade/bugs/4201135.html 
http://developer.java.sun.com/developer/bugParade/bugs/4038693.html 
http://developer.java.sun.com/developer/bugParade/bugs/4197648.html 
http://developer.java.sun.com/developer/bugParade/bugs/4143967.html 
....




  2. (Sect. 8) How do I print from a Java program?

     [*] Use the Toolkit.getPrintJob() method

     Component c = this.getParent();
     while (c!=null && !(c instanceof Frame))
         c=c.getParent();

     PrintJob pj = getToolkit().getPrintJob((Frame) c, "test", null);
     Graphics pg = pj.getGraphics();
     printAll(pg);
     pg.dispose();
     pj.end();


     This feature was introduced with JDK 1.1. A common place to put this is
     in the code that handles a button press. Printing from an untrusted
     applet is subject to a check from the SecurityManager.

     The JDK 1.1 printing API is more a screen hardcopy facility than a full
     blown publishing and illustration hardcopy API. JDK 1.2 offers a more
     full-featured printing API.
     http://java.sun.com/printing/

     If you simply want to print text, then write it to a file and print the
     file. Or open a filename that corresponds to the printer. On Windows,
     that is "LPT1" and the code looks like:

     try {
         FileOutputStream fos = new FileOutputStream("LPT1");
         PrintStream ps = new PrintStream(fos);
                 ps.print("Your string goes here");
                 ps.print("\f");
                 ps.close();
     } catch (Exception e) {
         System.out.println("Exception occurred: " + e);
     }


     The final formfeed is needed by windows to start the printjob.

  3. (Sect. 8) What are the properties that can be used in a PrintJob? The
     properties are
        o awt.print.destination - can be "printer" or "file"
        o awt.print.printer - printer name
        o awt.print.fileName - name of the file to print
        o awt.print.numCopies - obvious
        o awt.print.options - options to pass to the print command
        o awt.print.orientation - can be "portrait" or "landscape"
        o awt.print.paperSize - can be "letter","legal","executive" or "a4"
     The defaults are destination=printer, orientation=portrait,
     paperSize=letter, and numCopies=1.

     You can search for info like this by joining the Java Developer
     Connection (it's free) at http://java.sun.com/jdc.

     and doing a search for "PrintJob".

---
http://www.developer.com/news/techworkshop/012298_javaprint.html
Without going into too much detail, Netscape Communicator enables signed applets to request permission to access various system resources. It is left up to the user to grant or deny access.

An applet requests access to a system's printing resources by enabling the UniversalPrintJobAccess privilege. Once the privilege has been granted, the applet can proceed exactly as outlined above. To enable the print job privilege, you use the following code:

import netscape.security.PrivilegeManager;
import netscape.security.ForbiddenTargetException;
..
..
try {


PrivilegeManager.enablePrivilege ("UniversalPrintJobAccess");
// proceed with printing as normal
PrivilegeManager.disablePrivilege ("UniversalPrintJobAccess");


} catch (ForbiddenTargetException e) {

// user denied applet permission to access resource

}

---
The JavaT Printing Project
http://www.wam.umd.edu/~aweiland/jpp/2
a simple, easy to use, Pure JavaT, Open-Source printing package built on the current Java2 Platform printing API's.
Ability to print anything from plain text to complex documents.
PDF and PostScript output to files.
Print Preview with zoom in/zoom out ability.
Continuous updates through future Java PlatformT releases (i.e. Java3).
---

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java

From novice to tech pro — start learning today.