- PR -

PJA Toolkit の使用(java起動時のコマンドラインオプションを変更できない場合)

1
投稿者投稿内容
すず
常連さん
会議室デビュー日: 2003/04/17
投稿数: 30
投稿日時: 2004-03-21 23:03
お世話になっております。
いつまで経っても基本的な質問ばかりで恐縮なんですが・・・。

Xウインドウが導入されていないUNIX上で、画像描画を行いたいと考えております。
PJA Toolkit というものがあるということで、こちらを使用したいのですが、
このHP(http://www.tsuhtan.net/java/pja/)では 
java起動時のコマンドラインオプションを変更できない場合にも使える(かも?)という事が記述されているようなのですが、
これは具体的にどのようなコーディングで実現出来るのでしょうか??。

JAVAの知識に乏しい事もあり、さっぱりイメージ出来なくて・・・情けない限りで御座います。

実現した方いらっしゃいましたら、ご教授下さいませ
宜しくお願いいたします。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-03-22 00:53
「JAVAの知識に乏しい事もあり、さっぱりイメージ出来ない」のに「具体的にどのようなコーディングで実現出来るのでしょうか??」と言われてはどう答えてよいかわかりません・・・・。

ちなみに JDK1.4.x より前の実行環境で動かす前提でしょうか?
この掲示板でも何度か話題になっていますがJDK1.4.x ならヘッドレスモードというのがサポートされており X がなくてもグラフィック関連の API を利用することができます。
すず
常連さん
会議室デビュー日: 2003/04/17
投稿数: 30
投稿日時: 2004-03-22 09:18
失礼致しました。

JDK1.4.x以前の環境で動かします。
さらにjava起動時のコマンドラインオプションを変更する事は可能な限りしたくないと考えております。

以下は参考にしたHPの抜粋ですが、
>コマンドラインオプションを変更できない場合
>com.eteks.awt.servlet.PJARedirectServlet を使用して、グラフィクス処理サーブレットを実行させます。

と記述されていますが、
これを実際にはどのように行うのかが分からなくて困っております。
コーディングサンプルとかがあれば助かるのですが無いようでして・・・

すず
常連さん
会議室デビュー日: 2003/04/17
投稿数: 30
投稿日時: 2004-03-22 20:54
お世話になっております。

色々試してみましたが、
こちらの環境では、コマンドラインオプションから指定するしか方法がなさそうでした。
お騒がせしました。

ありがとうございます。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2004-03-22 22:08
unibon です。こんにちわ。

引用:

すずさんの書き込み (2004-03-22 20:54) より:
色々試してみましたが、
こちらの環境では、コマンドラインオプションから指定するしか方法がなさそうでした。


ヘッドレスや PJA はあまり良く知りませんが、コマンドラインで指定するものとは -D によるシステムプロパティのことでしょうか。もしそうならば、多くは main メソッドの中で System.setProperty
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/System.html#setProperty(java.lang.String,%20java.lang.String)
で指定しても有効なことが多いので、コマンドラインを使用しなくてもすみます。
#現在はコマンドラインを使いさえすれば目的とすることができているのでしょうか。
佐々木
大ベテラン
会議室デビュー日: 2003/03/30
投稿数: 121
投稿日時: 2004-03-22 22:13
佐々木です。("サ"から名前変えました)

Java側をいじりたくないならXvfbを一度検討すると良いですよ。たぶん最も簡単な解決策です。(この場合、PJAを使う必要はありません)

[ メッセージ編集済み 編集者: 佐々木 編集日時 2004-03-22 22:15 ]
すず
常連さん
会議室デビュー日: 2003/04/17
投稿数: 30
投稿日時: 2004-03-22 22:53
ご回答ありがとうございます。

基本的には完全にアプリ側だけで対応したいと考えています。

System.setPropertyをした場合、
結局コマンドラインオプションを指定した事と同じになってしまいますよね。
使い終わったらまたsetPropertyして元に戻せば良いのかもしれませんが・・・

System.setProperty自体は試してみましたが
「Servlet Error: Could not find class: com.eteks.java2d.PJAGraphicsEnvironment: java.lang.Exception: Could not find class: com.eteks.java2d.PJAGraphicsEnvironment」
になってしまいました。
以下のように宣言しています。

System.setProperty( "awt.toolkit", "com.eteks.awt.PJAToolkit");
System.setProperty( "java.awt.graphicsenv","com.eteks.java2d.PJAGraphicsEnvironment");

Xvfbに関しても、環境をいじらないといけませんので
基本的には×って事になってしまいます。



1

スキルアップ/キャリアアップ(JOB@IT)