打印图像代码在Linux -Cent -OS服务器中部署时不起作用



以下代码在Windows上运行时正常工作,但是如果它是在服务器中部署并通过Windows系统访问的,则会引发运行时exception" 没有可用的打印机服务。。该代码中是否有任何问题,还是您建议任何替代方案

 package com.rajsoft.CAF.APController;
 import java.io.FileInputStream;
 import javax.print.Doc;
 import javax.print.DocFlavor;
 import javax.print.DocPrintJob;
 import javax.print.PrintService;
 import javax.print.PrintServiceLookup;
 import javax.print.SimpleDoc;
 import javax.print.attribute.HashPrintRequestAttributeSet;
 import javax.print.attribute.PrintRequestAttributeSet;
 import javax.print.attribute.standard.Copies;
 public class SamplePrint {
   static public void main(String args[]) throws Exception {
     PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
     pras.add(new Copies(1));
     PrintService pss[] =     PrintServiceLookup.lookupPrintServices(DocFlavor.INPUT_STREAM.GIF, pras);
if (pss.length == 0)
  throw new RuntimeException("No printer services available.");
PrintService ps = pss[0];
System.out.println("Printing to " + ps);
DocPrintJob job = ps.createPrintJob();
//FileInputStream fin = new FileInputStream("C:/SignImage.GIF");
 FileInputStream fin = new FileInputStream("C:/SignImages/Hyderabad.GIF");
Doc doc = new SimpleDoc(fin, DocFlavor.INPUT_STREAM.GIF, null);
job.print(doc, pras);
fin.close();
   }
 }

我猜它是您要求的风味。您可以使用null的风味还是简单地调用" LookupDefaultPrintService()",看看是否返回任何默认服务以调用您的代码。

最新更新