« ejabberdでiRCフロントエンドを使うoldstable(sarge)からstable(etch)へのアップグレード注意点 »

Debian, Java and Printing

2007/05/30

  09:56:37 by , Categories: Freesoftware and Open Source Software, Debian

JDKの最新 Java SE JDK6 update01にあるその問題

この問題によって、JREは、CUPSのフィルターが解釈できないPostscriptを生成する。Postscriptプリンタを使っている場合には問題は発生しない。

これは、/DeferredMediaSelection をJREはPS中に生成するが、これをfoomatic-ripが解釈できないというもの。
Java BUG ID 5406286

他にもあるバグ

アプリケーションの起動ロケールによって印刷ダイアログで、ジョブを受け付けないような表示になるパターンもある。
Fedora JP掲示板での議論

これは、JavaはCUPSのunix domain socketによる接続に対応していないにもかかわらず、システムデフォルトがUNIX domain socketであることから発生する。Javaは、接続できないために、シェルコマンドによって状態を取得しようとする。ところがLocale設定がC/enで無い場合は、帰ってくる値がローカライズされているために、正しい状態を取得できない、というわけである。

この掲示板に投稿したように環境変数の

CUPS_SERVER=localhost
と設定する他、/usr/lib/libcups.so.2 へ /usr/lib/libcups.soからシンボリックリンクをはることで、この問題を解消することができる。

このシェルコマンドを使うときに、LANG=Cにしわすれるバグは多数あって、たとえばxfce4のThunarというファイルマネージャでもファイルの日付を正しく取得できないもの同様の問題と考えられるし、過去にもEmacs のdiredというファイルを管理するモードでもlocaleが英語以外のときに動作しない、というバグがあったことがある。

Pages: · 2

Trackback address for this post

Trackback URL (right click and copy shortcut/link location)

Feedback awaiting moderation

This post has 3 feedbacks awaiting moderation...


Form is loading...