Javax Print Java by API

import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import javax.print.StreamPrintService;
import javax.print.StreamPrintServiceFactory;
public class Main {
  public static void main(String[] argv) throws Exception {
    StreamPrintServiceFactory[] factories = StreamPrintServiceFactory
        .lookupStreamPrintServiceFactories(null, null);
    OutputStream fos = new BufferedOutputStream(new FileOutputStream("outfile.ps"));
    StreamPrintService service = factories[0].getPrintService(fos);
  }
}