0

質問の形で尋ねますが、なぜこの例外が発生するのかわかりません。オンラインでも実際のドキュメントは見つかりません。

あまり関係ないとは思いますが、状況を説明するために、JFreeReport クラシック エンジン レポート フレームワーク内で使用しています。

スタックトレースは次のとおりです。

java.awt.print.PrinterException: Invalid name of PrintService.
    at sun.awt.windows.WPrinterJob.setNativePrintService(Native Method)
    at sun.awt.windows.WPrinterJob.getPrintService(Unknown Source)
    at sun.awt.windows.WPrinterJob.printDialog(Unknown Source)
    at org.jfree.report.modules.gui.print.PrintUtil.print(PrintUtil.java:128)
    at org.jfree.report.modules.gui.print.PrintExportTask.run(PrintExportTask.java:84)
    at java.lang.Thread.run(Unknown Source)

ここで何が起こっているかについてのアイデアや提案は大歓迎です!

更新: このエラーがいつどこで生成されるかについてのドキュメントを見つけることも素晴らしいことです...

4

2 に答える 2

1

私も同じ問題を抱えていました。Java は私の印刷ジョブを印刷しません。

そのため、私の会社がメインのプリンターを変更したばかりであることに気付きました。次に、プリンターのリスト(win 8)から古いものを削除し、新しいものをデフォルトとして設定しました。

魔法のように動作します!

PS: stackoverflow での最初の返信です! \o/

于 2016-06-30T19:55:01.813 に答える
0

印刷サービス名は、プリンターの名前である必要があります。現在使用している PrintUtil クラスは、オペレーティング システムでセットアップしたプリンターを一覧表示するダイアログを表示します。パソコンを使って他のアプリケーションから印刷できますか?

そうでない場合は、プリンターを構成する必要があります。そうでない場合は、jFreeReport がデフォルトのプリンターをどこかに指定する必要があるかどうかを確認する必要があります。JFreeReport はオープン ソースであるため、PrintUtil クラスだけを使用して簡単なテスト プログラムを作成できるはずです。これにより、コードの問題点を簡単に示すことができます。

于 2010-09-22T14:08:05.413 に答える