Lucian, Thank you! I found a copy of rt.jar in /library/java/extensions that was causing the problem. Now, however, I am getting a different error and so am still unable to print. Here is output from the Java console when I hit the print button: security: Automation: Accept printing security: Automation: Accept printing network: Connecting http://localhost:631/CanonMP530 with proxy=DIRECT security: Automation: Accept printing net.sf.jasperreports.engine.JRException: No printer available. at net.sf.jasperreports.engine.JasperPrintManager.printReport(JasperPrintManager.java:241) at net.sf.jasperreports.view.JRViewer$21.run(JRViewer.java:1198) at java.lang.Thread.run(Thread.java:613) Any ideas? I do have two printers set up, but neither is local. My CUPS log shows a bunch of entries like: localhost - - [21/Mar/2008:06:27:40 -0500] "POST / HTTP/1.1" 200 193 Get-Printer-Attributes successful-ok which indicates that the applet is successfully getting information about my printer. Thanks!