** Description changed:

  This applies to a current Gutsy Gibbon amd64 installation 
  I have installed Java 1.5 from the repositories 
  
  Printing from any java application (e.g. Netbeans, Jedit) to a CUPS printer 
does not show the print dialog
  by compiling and running the following code i can't get any printers listed.
  
  import javax.print.PrintService;  import
  javax.print.attribute.Attribute;  import
  javax.print.attribute.standard.PrinterIsAcceptingJobs;  /*   *  *
  TestPrinter.java   *  *   *  * Created on 26 de Setembro de 2007, 14:52
  *  *   *  * To change this template, choose Tools | Template Manager   *
  * and open the template in the editor.   *  */    /**   *  *   *  *
  @author carlos   *  */  public class TestPrinter  {       /** Creates a
  new instance of TestPrinter */   public TestPrinter() { }     public
  static boolean checkAvailablePrinters()    {    PrintService[] ss =
  java.awt.print.PrinterJob.lookupPrintServices();    for (int
  i=0;i<ss.length;i++)     {     System.out.println( ss[i].getName() + "\n
  " + ss[i] );     Attribute[] att = ss[i].getAttributes().toArray();
  for (int j=0;j<att.length;j++)      {      if (att[j].equals(
  PrinterIsAcceptingJobs.ACCEPTING_JOBS ) )       {
  System.out.println( "ACCEPTING JOBS" );      }     }    }    return
  false;   }   public static void main( String[] args )   {
  checkAvailablePrinters();   }    }
  
  
  by running the following command, the printers are listed
  
  [EMAIL PROTECTED]:~$ lpstat -t
  programador em execução
  destino predefinido de sistema: XKPrinter
  periférico para XKPrinter: usb://HP/LaserJet%201022
  periférico para XKPrinter_Cores: usb://EPSON/Stylus%20CX3600
  periférico para XKPrinter_PDF: cups-pdf:/
  XKPrinter aceita pedidos desde Dom 21 Out 2007 18:46:10 WEST
  XKPrinter_Cores aceita pedidos desde Sáb 20 Out 2007 23:44:10 WEST
  XKPrinter_PDF aceita pedidos desde Sáb 28 Abr 2007 19:41:52 WEST
  impressora XKPrinter inactiva.  activada desde Dom 21 Out 2007 18:46:10 WEST
  impressora XKPrinter_Cores desactivada desde Sáb 20 Out 2007 23:44:10 WEST -
  
  Updated: I can list the printers by using that java code with jre-7
  beta, but still can't see any print dialog when i try to print any
  document with any java application. I get only the following output when
  i try to run this hello world printing function
  
  /*
   * Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions are met:
   *
   * -Redistribution of source code must retain the above copyright notice, this
   *  list of conditions and the following disclaimer.
   *
   * -Redistribution in binary form must reproduce the above copyright notice,
   *  this list of conditions and the following disclaimer in the documentation
   *  and/or other materials provided with the distribution.
   *
   * Neither the name of Sun Microsystems, Inc. or the names of contributors may
   * be used to endorse or promote products derived from this software without
   * specific prior written permission.
   *
   * This software is provided "AS IS," without a warranty of any kind. ALL
   * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING
   * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
   * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MIDROSYSTEMS, INC. ("SUN")
   * AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE
   * AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS
   * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST
   * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,
   * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY
   * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE,
   * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
   *
   * You acknowledge that this software is not designed, licensed or intended
   * for use in the design, construction, operation or maintenance of any
   * nuclear facility.
   */
  
  import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  import java.awt.print.*;
  
  public class HelloWorldPrinter implements Printable, ActionListener {
  
  
      public int print(Graphics g, PageFormat pf, int page) throws
                                                          PrinterException {
  
          if (page > 0) { /* We have only one page, and 'page' is zero-based */
              return NO_SUCH_PAGE;
          }
  
          /* User (0,0) is typically outside the imageable area, so we must
           * translate by the X and Y values in the PageFormat to avoid clipping
           */
          Graphics2D g2d = (Graphics2D)g;
          g2d.translate(pf.getImageableX(), pf.getImageableY());
  
          /* Now we perform our rendering */
          g.drawString("Hello world!", 100, 100);
  
          /* tell the caller that this page is part of the printed document */
          return PAGE_EXISTS;
      }
  
      public void actionPerformed(ActionEvent e) {
           PrinterJob job = PrinterJob.getPrinterJob();
           job.setPrintable(this);
           boolean ok = job.printDialog();
           if (ok) {
               try {
                    job.print();
               } catch (PrinterException ex) {
                /* The job did not successfully complete */
               }
           }
      }
  
      public static void main(String args[]) {
   
          UIManager.put("swing.boldMetal", Boolean.FALSE);
          JFrame f = new JFrame("Hello World Printer");
          f.addWindowListener(new WindowAdapter() {
             public void windowClosing(WindowEvent e) {System.exit(0);}
          });
          JButton printButton = new JButton("Print Hello World");
          printButton.addActionListener(new HelloWorldPrinter());
          f.add("Center", printButton);
          f.pack();
          f.setVisible(true);
      }
- 
+ }
  And the Output
  java.lang.NullPointerException: null attribute
          at 
sun.print.IPPPrintService.isAttributeValueSupported(IPPPrintService.java:1147)
          at 
sun.print.ServiceDialog$OrientationPanel.updateInfo(ServiceDialog.java:2121)
          at 
sun.print.ServiceDialog$PageSetupPanel.updateInfo(ServiceDialog.java:1263)
          at sun.print.ServiceDialog.updatePanels(ServiceDialog.java:437)
          at sun.print.ServiceDialog.initPrintDialog(ServiceDialog.java:195)
          at sun.print.ServiceDialog.<init>(ServiceDialog.java:124)
          at javax.print.ServiceUI.printDialog(ServiceUI.java:188)
          at sun.print.RasterPrinterJob.printDialog(RasterPrinterJob.java:855)
          at sun.print.PSPrinterJob.printDialog(PSPrinterJob.java:421)

-- 
Java doesn't list any printers in cups
https://bugs.launchpad.net/bugs/155462
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to