12. アプレットを使用するには
12.1. はじめに
jVアプレット(jV applet)を使ったウェブページでは、
- 閲覧者(ウェブクライアント)の環境にjVをインストールしておく必要はありません。
- ラジオボタンの切り替えで表示を変更するなど、一定の操作を簡単に行うためのツールをウェブサイト制作者側で設定しておくことができます。
但し、アプレットを埋め込んだページを閲覧するには、ウェブクライアントに、Java プラグインがインストールされている必要があります。なお本来はこれに加えてJOGL(Java OpenGL)もウェブクライアントにインストールされている必要がありますが、アプレットランチャーも併用したアプレットページでは、環境に応じたJOGLが自動的にダウンロードされるため、その必要はありません。
アプレットはHTMLタグの、applet、object または embed タグによって呼び出すことができます。applet タグは、様々なブラウザに対応しており記述が容易ですが、HTML4では非推奨とされています。object タグは applet の代替として推奨されているタグですが、applet タグに比べて記述が複雑です。embed タグはMozilla系ブラウザで有効ですが、W3Cの規格外のタグです[1][2][3]。詳しくはJava プラグインホームページをご参照下さい。
呼び出す際のクラス名は "org.pdbj.viewer.gui.ViewerApplet" です。 プログラムは下記の特徴を持っています。
- コマンドラインインタフェースを使用するかどうかを指定できます。
- ファイル制御パネルを使用するかどうかを指定できます。
- ポップアップメニューを使用するかどうかを指定できます。
- 同じウェブページではマウスイベントを共有できます。
- アプレットはJavaScriptからのコマンド文字を受け取ることができます。
- アプレットはマウスで指定した原子の情報をJavaScriptに送ることができます。
12.2. サーバへのjVバイナリインストール
ウェブサーバでjVアプレットを用いたページを提供するには、jVバイナリをあらかじめウェブサーバにインストールしておく必要があります。その方法はスタンドアロン版の場合と同等です。
以下にサーバにインストールする例を示します。
- ウェブサーバのOS
- Linux系(CentOS)
- ウェーブサーバアプリケーション
- Apache 2.2
- ウェブサイトのドキュメントルートパス
/var/www/html- ウェブサイトのルートURL
http://www.sample.org/- jVバイナリのルートパス
/var/www/html/jv- jVのバージョン
- 4.1p1
# ドキュメントルートに移動 [root@server ~]# cd /var/www/html # ここにjVバイナリを置いて解凍展開 [root@server html]# tar -zxvf jV_4_1_p1.tar.gz jV_4_1_p1/jv4_1.jar jV_4_1_p1/jv4_1_signed.jar jV_4_1_p1/jV_manual.html ... jV_4_1_p1/startup_macosx.command jV_4_1_p1/startup_windows.bat jV_4_1_p1/startup_windows_amd64.bat # 必要に応じ適宜ディレクトリ名変更 [root@server html]# mv jV_4_1_p1 jv # アプレットランチャー関係ファイルをダウンロード(サーバローカルに置くのであれば) [root@server html]# cd jv [root@server jv]# wget http://download.java.net/media/applet-launcher/applet-launcher.jar [root@server jv]# wget http://download.java.net/media/gluegen/webstart/gluegen-rt.jar
12.3. 書式とパラメータ
アプレットを表示するためのhtmlコードはページを閲覧するウェブクライアントの環境(OSやブラウザの種類)によって異なります。以下に指定するパラメータと合わせて説明します。
<!-- applet コードで記述した場合(HTML4で非推奨) --> <applet code="クラス名" archive="jarファイル" width="アプレットの横幅" height="アプレットの高さ"> オプションパラメータ </applet> <!-- object コードで記述した場合(HTML4ではこちらを推奨) --> <object code="java:クラス名" type="application/x-java-applet" codetype="application/java" archive="jarファイル" width="アプレットの横幅" height="アプレットの高さ"> オプションパラメータ </applet>
- applet の code="クラス名"
- object の classid="java:クラス名"
- 旧型(Classic)Java Plug-inを使用する環境の場合「org.jdesktop.applet.util.JNLPAppletLauncher」、新型(Next Generation)Java Plug-inを使用する環境の場合「org.pdbj.viewer.gui.ViewerApplet」を指定します。JRE 1.5以前の環境(Mac OS X 10.4以前はJRE 1.6以降が提供されていないため必然的に該当)あるいはMac用ブラウザの一種Caminoは旧型で、それ以外の環境では新型のhtmlコードでアプレットが表示できます。
- archive="jarファイル"
-
jVアプレット表示に必要となるjV本体、JOGL、アプレットランチャーのjarファイルを指定します。指定するファイルの詳細は以下の通りです。ファイルの指定は完全なURL(同一ウェブサーバ内のファイルを参照する場合、
http://www.sample.orgのようなプロトコル名+完全修飾ドメイン名は省略可能)で行い、複数の指定はコンマで区切ります。前節事例の場合、指定値は以下のようになります。archive="/jv/jv4_1_signed.jar, /jv/applet-launcher.jar, /jv/gluegen-rt.jar, /jv/lib/jogl.all.jar"各指定値について以下に説明します。- jV本体
- 画像保存などの機能を有効にするには、Java拡張機能を有効化できる署名版(
jv4_1_signed.jar)を指定します。そうでない場合は非署名版(jv4_1.jar)を指定します。前節事例の場合、指定値は/jv/jv4_1_signed.jarまたは/jv/jv4_1.jarとなります。 - アプレットランチャー関係
-
applet-launcher.jarとgluegen-rt.jarを指定します。配布元のURLを直接指定する場合、以下に記す完全なURLを指定します。http://download.java.net/media/applet-launcher/applet-launcher.jarhttp://download.java.net/media/gluegen/webstart/gluegen-rt.jar
/var/www/html/jvにダウンロードしてそちらを利用する場合、以下の指定になります。/jv/pplet-launcher.jar/jv/gluegen-rt.jar
- JOGL
-
jV4.0以前とjV4.1以降では指定するファイル名が異なります。jV4.0以前では
jogl.jar、jV4.1以降ではjogl.all.jarを指定します。前節事例では/jv/lib/jogl.all.jarを指定することになります。
- アプレットの横幅
- アプレット領域の横幅を指定します。整数値で指定した場合はピクセル単位での絶対指定、数値の後に"%"を記した場合は利用可能な領域に対する相対指定となります。
- アプレットの高さ
- アプレット領域の高さを指定します。整数値で指定した場合はピクセル単位での絶対指定、数値の後に"%"を記した場合は利用可能な領域に対する相対指定となります。
- オプションパラメータ
-
param要素を使って追加の指定を行うことができます。項目指定はname属性で行い、対応する値はvalue属性に指定します。指定できる項目は以下の通りです。name属性値 既定値 内容 pdbmlURL (なし) 読み込むPDBMLファイルのURLを指定します。ファイルはコンマで区切って複数個指定することができます[注1][注2]。jVコマンドの load pdbmlに相当する動作を行います。例:
<param name="pdbmlURL" value="http://pdbj.org/XML/all/1smd.xml.gz"/>pdbURL (なし) 読み込むPDBファイルのURLを指定します。ファイルはコンマで区切って複数個指定することができます[注1][注2]。jVコマンドの load pdbに相当する動作を行います。例:
<param name="pdbURL" value="http://pdbj.org/pdb_all/pdb1smd.ent.gz"/>polygonURL (なし) 読み込むポリゴンファイルのURLを指定します。ファイルはコンマで区切って複数個指定することができます[注1][注2]。jVコマンドの load polygonに相当する動作を行います。例:
<param name="polygonURL" value="http://pdbj.org/biol/rdchb/a1/1a14/1a141-rdchb_0002.xml"/>animURL (なし) 読み込むアニメーションファイルのURL(コンマで区切って複数個指定することができます)[注2]。 command_area false コマンドラインインタフェースを利用するかどうか(true に設定するとアプレット領域下方にコマンドエリアが表示され、false なら表示されない)。但し、後述の「newt」を有効にする設定を行った場合、当項目の設定値に関わらずコマンドラインインタフェースを利用することはできません(コマンドエリアを表示することはできません)。 例:
<param name="command_area" value="true"/>file_control false ファイルコントロールパネルを使用するかどうか(true に設定するとアプレット領域右部に操作対象ファイルの選択メニューが表示され、false なら表示されない)。 popup_menu true 右クリックするによるポップアップメニューの利用を許可するかどうか(true なら利用可能、false なら右クリックしてもポップアップメニューは表示されない)。 mouse_send_to (なし) マウスイベントによるアプレットの名前属性が共有されます (コンマで区切って複数指定できます)。 commands (なし) アプレットを開始して最初に実行するコマンド (セミコロンで区切って複数指定できます)。 report_picking false マウスでクリックした原子に関する情報をJavaScriptに送るかどうか(true または false で指定)。 picking_receiver (なし) マウスクリックで指定するデータのJavaScript関数名。 file_load_message false ファイル読み込み中にメッセージダイアログを表示するかどうか(true に設定すれば表示され、false に設定すれば表示されない)。 call_on_start false アプレット開始時にJavaScript関数を呼び出すかどうか(true または false で指定)。 noddraw.check codebase_lookup jnlpNumExtensions jnlpExtension1 java_arguments progressbar subapplet.classname subapplet.displayname noddraw.check.silent newt false jnlp_href 注
- ファイルはgzip圧縮されたものでも扱えます。
- URLは「http://」で始まるもののみ有効です。「ftp://」などはエラーになり「Can't Find PDBML File.」警告ダイアログが表示されます。
アプレットを表示するためのhtmlコード例は各環境での動作状況ページをご覧下さい。
12.5. JavaScriptからアプレットへの通信
閲覧アプレットクラスには、JavaScript と呼ばれる一般的な方法が利用できます。
void executeCommand(String commands) |
この方法で、アプレットは任意のコマンドを受け取ることができます(セミコロンで区切って複数指定できます)。
void loadPDB(String fileLocation) |
void loadPDBML(String fileLocation) |
void loadPolygon(String fileLocation) |
void loadAnim(String fileLocation) |
この方法で、指定したPDBファイル、PDBMLファイル、ポリゴンファイル、アニメーションファイルがそれぞれ読み込まれます。
void loadPDB(String fileLocation, int fitTo) |
void loadPDBML(String fileLocation, int fitTo) |
void loadPolygon(String fileLocation, int fitTo) |
void loadAnim(String fileLocation, int fitTo) |
この方法で、読み込んだファイルの変化マトリックスを指定したファイルの変化マトリックスにセットします。
12.6. アプレットからJavaScriptへの通信
マウスクリックの結果をJavaScriptに送るには、以下の関数をJavaScript側で定義しておく必要があります。
function receiveMousePick(file, model, chain, res, atom, altloc, resName, atomName, x, y, z) |
なお、この関数名の既定値は「receiveMousePick」ですが、APPLET、OBJECT、EMBEDタグで「picking_receiver」の値を指定して変更することができます。
アプレットパラメータ「call_on_start」で然るべき設定がされていれば、アプレットが開始された時、以下のJavaScript関数が呼び出されます。この時、関数は指定された引数をアプレット名として受け取ります。
function jvOnStart(name) |
更に、'MAYSCRIPT'という新しい属性がアプレット、またはOBJECT/EMBEDタグに必要です (詳しくはJavaプラグインガイドを参照して下さい)。
12.6. アプレットランチャーについて
jVアプレット開く際、環境に応じたJOGLを自動的にインストールするアプレットランチャー(Applet launcher)を利用すると、閲覧する環境にJOGLが事前インストールされていなくてもjVアプレットを表示、操作することができます。アプレットランチャーは、jVバージョン3.6以降で利用することができます。
アプレットランチャーを利用するには jV の jar ファイルに加え、下記4つのファイルが必要です(Java環境によっては更にhttp://pdbj.org/jv/jv-applet.jnlpも必要です)。 アプレットのhtmlコードに直接以下のURLを記述するか、あるいはファイルをダウンロードしてダウンロードした先のURLを記述して下さい。
- http://download.java.net/media/applet-launcher/applet-launcher.jar
- http://download.java.net/media/jogl/builds/archive/jsr-231-webstart-current/jogl.jar
- http://download.java.net/media/jogl/builds/archive/jsr-231-webstart-current/jogl.jnpl
- http://download.java.net/media/gluegen/webstart/gluegen-rt.jar
以下にアプレットランチャーを使ったjVアプレットの記述例を示します。下記例は必要な各ファイルを html ファイルと同一ディレクトリにある場合です。
コードの前の方は主にアプレットランチャーの通常の使い方とほぼ同じです。詳しくはアプレットランチャーのウェブサイトをご覧下さい。後の方はjVのパラメータ指定を行っています。コードの記述方法はウェブクライアントのJava環境(Java Runtime Environment)のバージョン等によって異なります。詳しくは下記事例をご覧下さい。
なお、JREのバージョンによってアプレットランチャーがうまく動作しない場合があります。詳しくはトラブルシューティングをご覧下さい。
- Classic Java Plug-in環境用(Mac OS X 10.4以前等) - applet要素 / object要素
- New Java Plug-in環境用 - applet要素 / object要素(IE) / object要素(IE以外)
- Classic Java Plug-in環境用(Mac OS X 10.4以前等) - applet要素による記述
-
<applet name="jVwindow" height="600" width="600" archive="applet-launcher.jar, jogl.jar, gluegen-rt.jar, jv3.jar" code="org.jdesktop.applet.util.JNLPAppletLauncher"> <-- height:アプレットの高さ、width:アプレットの幅 archive:追加ファイルのURL code:アプレットランチャーを指定する固有コード --> <param name="subapplet.classname" value="org.pdbj.viewer.gui.ViewerApplet"/> <!-- jVアプレットのクラス名指定 --> <param name="subapplet.displayname" value="jV applet"/> <param name="noddraw.check" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="noddraw.check.silent" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="progressbar" value="true"/> <!-- ロード中にプログレスバーを表示する --> <param name="jnlpNumExtensions" value="1"/> <param name="jnlpExtension1" value="jogl.jnlp"/> <param name="pdbURL" value=""/> <param name="pdbmlURL" value="http://service.pdbj.org/XML/viewer/148l-noatom.xml.gz"> <param name="polygonURL" value=""/> <param name="commands" value="set picking ident;background black;wireframe off;cartoon;color group"/> </applet> - Classic Java Plug-in環境用(Mac OS X 10.4以前等) - object要素による記述
-
<object name="jVwindow" height="600" width="600" classid="java:org.jdesktop.applet.util.JNLPAppletLauncher" type="application/x-java-applet" codetype="application/java" archive="applet-launcher.jar, jogl.jar, gluegen-rt.jar, jv3.jar"> <-- height:アプレットの高さ、width:アプレットの幅 classid:アプレットランチャーを指定する固有コード type,codetype:オブジェクトの種類の示す archive:追加ファイルのURL --> <param name="subapplet.classname" value="org.pdbj.viewer.gui.ViewerApplet"/> <!-- jVアプレットのクラス名指定 --> <param name="subapplet.displayname" value="jV applet"/> <param name="noddraw.check" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="noddraw.check.silent" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="progressbar" value="true"/> <!-- ロード中にプログレスバーを表示する --> <param name="jnlpNumExtensions" value="1"/> <param name="jnlpExtension1" value="jogl.jnlp"/> <param name="pdbURL" value=""/> <param name="pdbmlURL" value="http://service.pdbj.org/XML/viewer/148l-noatom.xml.gz"> <param name="polygonURL" value=""/> <param name="commands" value="set picking ident;background black;wireframe off;cartoon;color group"/> </object> - New Java Plug-in環境用 - applet要素による記述
-
<applet name="jVwindow" height="600" width="600" code="org.pdbj.viewer.gui.ViewerApplet"> <-- height:アプレットの高さ、width:アプレットの幅 code:jVを指定する固有コード --> <param name="jnlp_href" value="http://pdbj.org/jv/jv-applet.jnlp"/> <!-- new Java Plug-in に必要 --> <param name="noddraw.check" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="noddraw.check.silent" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="progressbar" value="true"/> <!-- ロード中にプログレスバーを表示する --> <param name="jnlpNumExtensions" value="1"/> <param name="jnlpExtension1" value="jogl.jnlp"/> <param name="pdbURL" value=""/> <param name="pdbmlURL" value="http://service.pdbj.org/XML/viewer/148l-noatom.xml.gz"> <param name="polygonURL" value=""/> <param name="commands" value="set picking ident;background black;wireframe off;cartoon;color group"/> </applet> - New Java Plug-in環境用 - object要素による記述(Internet Explorerの場合)
-
<object name="jVwindow" height="600" width="600" classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" data="java:org.pdbj.viewer.gui.ViewerApplet"> <-- height:アプレットの高さ、width:アプレットの幅 classid:Java Plug-inであることを示すコード code:jVを指定する固有コード --> <param name="jnlp_href" value="http://pdbj.org/jv/jv-applet.jnlp"/> <!-- new Java Plug-in に必要 --> <param name="noddraw.check" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="noddraw.check.silent" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="progressbar" value="true"/> <!-- ロード中にプログレスバーを表示する --> <param name="jnlpNumExtensions" value="1"/> <param name="jnlpExtension1" value="jogl.jnlp"/> <param name="pdbURL" value=""/> <param name="pdbmlURL" value="http://service.pdbj.org/XML/viewer/148l-noatom.xml.gz"> <param name="polygonURL" value=""/> <param name="commands" value="set picking ident;background black;wireframe off;cartoon;color group"/> </object> - New Java Plug-in環境用 - object要素による記述(Internet Explorer以外)
-
<object name="jVwindow" height="600" width="600" classid="org.pdbj.viewer.gui.ViewerApplet" <-- height:アプレットの高さ、width:アプレットの幅 classid:Java Plug-inであることを示すコード code:jVを指定する固有コード --> <param name="jnlp_href" value="http://pdbj.org/jv/jv-applet.jnlp"/> <!-- new Java Plug-in に必要 --> <param name="noddraw.check" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="noddraw.check.silent" value="true"/> <!-- WindowsでDirectDrowを使わないための設定 --> <param name="progressbar" value="true"/> <!-- ロード中にプログレスバーを表示する --> <param name="jnlpNumExtensions" value="1"/> <param name="jnlpExtension1" value="jogl.jnlp"/> <param name="pdbURL" value=""/> <param name="pdbmlURL" value="http://service.pdbj.org/XML/viewer/148l-noatom.xml.gz"> <param name="polygonURL" value=""/> <param name="commands" value="set picking ident;background black;wireframe off;cartoon;color group"/> </object>
12.7. Linux環境におけるアプレットの表示
Linux環境下でjV Javaアプレットを表示できるようにする方法について以下に説明します。いずれの場合も、閲覧するウェブクライアントコンピュータにSun (Oracle) Java環境がインストールされている必要があります。
- 1. Sun(Oracle)のJava環境(JRE)をダウンロードする
- 「Linux自己解凍バイナリファイル」をJavaダウンロードページからダウンロードします。JavaとしてOpenJDKが既にインストールされている場合もありますが、その場合SunのJavaもインストールします(OpenJDKと共存していても構わない)。32bit版OSの場合は「Linux(自己解凍ファイル)」、64bit版OSの場合は「Linux x64」をダウンロードします。RHEL、CentOSではRPM版を選択しても構いません。なお「JavaアプレットとJava Web Startを使用する場合は、32ビットバージョンを使用してください。」とダウンロードページに記載されていますが、64bit版でも動作します。
- 2. インストール先ディレクトリに移動してインストール実行
-
- 2a. 非RPM版の場合
-
インストールしたいディレクトリに移動して、ダウンロードしたバイナリを実行します[5]。以下の例は
~/downloadへダウンロードした自己解凍バイナリファイルを使って、/usr/lib/jvmへインストールする場合です。なお、RPM版を使う場合は2bをご覧下さい。[Ubuntu 10.04 LTSの場合] 32bit版OSの場合は「Linux(自己解凍ファイル)」、64bit版OSの場合は「Linux x64」をダウンロード $ ls ~/downloads -rw-r--r-- 1 user user 21630577 2011-08-25 14:23 jre-6u27-linux-i586.bin # 64bit版の場合、ファイル名は「jre-6u27-linux-amd64.bin」のようになります $ chmod +x ~/downloads/jre-6u27-linux-i586.bin # 実行権限付加 $ ls ~/downloads -rwxr-xr-x 1 user user 21630577 2011-08-25 14:23 jre-6u27-linux-i586.bin $ sudo mkdir /usr/lib/jvm # OpenJDKがインストール済みの場合このディレクトリは既に存在 $ cd /usr/lib/jvm $ sudo ~/download/jre-6u26-linux-i586.bin
- 2b. RPM版の場合
-
Fedora系(RHEL、CentOS等)の場合、RPM版を使ってもインストールできます。なおオンラインドキュメントの記述ではカレントディレクトリにインストールされるとありますが[6]、実際には常に
/usr/java配下にインストールされるようです。ブラウザからRPMをダウンロードし、そのままGUIでインストールを実行しても結構です(管理者権限が必要)。非RPM版バイナリを使ったインストールについては2aをご覧下さい。[CentOS 6.0の場合] 32bit版OSの場合は「Linux RPM(自己解凍ファイル)」、64bit版OSの場合は「Linux x64 RPM」をダウンロード $ pwd /home/user/downloads $ ls -l 合計 20588 -rw-r--r-- 1 user user 21080279 8月 29 10:33 2011 jre-6u27-linux-i586-rpm.bin # 64bit版の場合、ファイル名は「jre-6u27-linux-amd64-rpm.bin」のようになります $ $ chmod +x jre-6u27-linux-i586-rpm.bin # 実行権限付加 $ cd /usr/lib/jvm $ ./jre-6u27-linux-i586-rpm.bin # 実行→rpmパッケージができる Unpacking... Extracting... UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (ZIP-Bugs@lists.wku.edu). inflating: jre-6u27-linux-i586.rpm 準備中... ########################################### [100%] 1:jre ########################################### [100%] Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... localedata.jar... plugin.jar... javaws.jar... deploy.jar... Done. $ ls -l /usr/lib/jvm # ここにインストールしたJREはない 合計 20840 drwxr-xr-x. 3 root root 4096 7月 14 17:24 2011 java-1.5.0-gcj-1.5.0.0 drwxr-xr-x. 3 root root 4096 6月 25 11:31 2011 java-1.6.0-openjdk-1.6.0.0 lrwxrwxrwx. 1 root root 21 8月 25 16:28 2011 jre -> /etc/alternatives/jre lrwxrwxrwx. 1 root root 27 7月 14 17:24 2011 jre-1.5.0 -> /etc/alternatives/jre_1.5.0 lrwxrwxrwx. 1 root root 26 7月 14 17:24 2011 jre-1.5.0-gcj -> java-1.5.0-gcj-1.5.0.0/jre lrwxrwxrwx. 1 root root 27 8月 25 16:28 2011 jre-1.6.0 -> /etc/alternatives/jre_1.6.0 lrwxrwxrwx. 1 root root 26 8月 25 16:28 2011 jre-1.6.0-openjdk -> java-1.6.0-openjdk-1.6.0.0/jre -rw-r--r--. 1 root root 21331915 7月 19 20:07 2011 jre-6u27-linux-i586.rpm lrwxrwxrwx. 1 root root 25 7月 14 17:24 2011 jre-gcj -> /etc/alternatives/jre_gcj lrwxrwxrwx. 1 root root 29 8月 25 16:28 2011 jre-openjdk -> /etc/alternatives/jre_openjdk $ ls -l /usr/java # JREはここにインストールされた 合計 4 lrwxrwxrwx. 1 root root 16 8月 29 10:51 2011 default -> /usr/java/latest drwxrwxrwx. 1 root root 4096 8月 29 10:50 2011 jre1.6.0_27 lrwxrwxrwx. 1 root root 16 8月 29 10:51 2011 latest -> /usr/java/jre1.6.0_27
- 3. ブラウザ別のプラグイン設定
-
- Firefox 1. javaコマンドへのパスを通す
-
javaコマンドへのパスを通します(あるいはパスの通っているディレクトリにjavaコマンドのシンボリックリンクを作成します)。先に別のJava(OpenJDKなど)がインストールされていた場合、そちらがjavaコマンドとして認識され、ここでインストールしたSunのJavaが適用されない場合があります。設定方法の詳細は以下の例をご覧下さい。
[Ubuntu 10.04 LTS で OpenJDKが既にインストールされていた場合] # javaコマンドはOpenJDKの方を指している $ java -version java version "1.6.0_20" OpenJDK Runtime Environment (IcedTea6 1.9.9) (6b20-1.9.9-0ubuntu1~10.04.2) OpenJDK Client VM (build 19.0-b09, mixed mode, sharing) $ which java /usr/bin/java $ ls -l /usr/bin/java lrwxrwxrwx. 1 root root 22 8月 22 17:26 2011 /usr/bin/java -> /etc/alternatives/java $ ls -l /etc/alternatives/java lrwxrwxrwx. 1 root root 35 8月 22 17:26 2011 /etc/alternatives/java -> /usr/lib/jvm/jre-1.5.0-gcj/bin/java $ ls /usr/lib/jvm 合計 4 lrwxrwxrwx 1 root root 14 2011-08-25 13:44 java-1.6.0-openjdk -> java-6-openjdk drwxr-xr-x 5 root root 4096 2011-08-25 13:44 java-6-openjdk # javaコマンドのシンボリックリンク元を変更 $ sudo ln -sf /usr/lib/jvm/jre1.6.0_27/bin/java /etc/alternatives/java # RPMで椅子トールした場合は以下のようになる $ sudo ln -sf /usr/java/jre1.6.0_27/bin/java /etc/alternatives/java $ ls -l /etc/alternatives/java lrwxrwxrwx. 1 root root 33 8月 22 17:34 2011 /etc/alternatives/java -> /usr/lib/jvm/jre1.6.0_27/bin/java # Sub Javaに変更された $ java -version java version "1.6.0_27" Java(TM) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) Client VM (build 20.1-b06, mixed mode, sharing) # 64bit版の場合、以下のようになります $ java -version java version "1.6.0_27" Java(TM) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) 64-Bit Server VM (build 20.1-b06, mixed mode) [CentOS 6.0の場合] $ java -version # javaコマンドはまだOpenJDKのものを指している java version "1.6.0_17" OpenJDK Runtime Environment (IcedTea6 1.7.5) (rhel-1.31.b17.el6_0-i386) OpenJDK Client VM (build 14.0-b16, mixed mode) $ which java /usr/bin/java $ ls -l /usr/bin/java lrwxrwxrwx. 1 root root 22 8月 25 16:28 2011 /usr/bin/java -> /etc/alternatives/java $ ln -sf /usr/java/latest/bin/java /usr/bin/java # javaコマンドのリンク元をSun Javaのものに置き換え $ ls -l /usr/bin/java lrwxrwxrwx. 1 root root 25 8月 29 11:12 2011 /usr/bin/java -> /usr/java/latest/bin/java $ java -version java version "1.6.0_27" Java(TM) SE Runtime Environment (build 1.6.0_27-b07) Java HotSpot(TM) Client VM (build 20.2-b06, mixed mode, sharing)
- Firefox 2. Firefoxプラグインフォルダにプラグインファイルのシンボリックリンクを作成
-
Firefox 3.6では
/usr/lib/firefox-3.6/pluginsがプラグインを置く場所となっていたようだが、Firefox 10.0.4 (ESR) では/usr/lib/mozilla/plugins(64bit版では/usr/lib64/mozilla/plugins?)に置けば動作した。# CentOS 6.0 32bit版 + Firefox 3.6 で /usr/java にSun Javaをインストールした場合 # mkdir /usr/lib/firefox-3.6/plugins # 初期状態ではこのディレクトリは存在しなかったので作る # sudo ln -s /usr/java/jre1.6.0_27/lib/i386/libnpjp2.so /usr/lib/firefox-3.6/plugins # CentOS 6.0 32bit版 + Firefox 3.6 で /usr/lib/jvm にSun Javaをインストールした場合 # mkdir /usr/lib/firefox-3.6/plugins # 初期状態ではこのディレクトリは存在しなかったので作る # sudo ln -s /usr/lib/jvm/jre1.6.0_27/lib/i386/libnpjp2.so /usr/lib/firefox-3.6/plugins # Ubuntu 10.04 LTS 32bit版 + Firefox 3.6 で /usr/lib/jvm にSun Javaをインストールした場合 $ sudo ln -s /usr/lib/jvm/jre1.6.0_27/lib/i386/libnpjp2.so /usr/lib/firefox-addons/plugins /usr/lib/firefox-3.6.20/plugins は /usr/lib/firefox-addons/pluginsのシンボリックリンクになっている # Ubuntu 10.04 LTS 64bit版 + Firefox 3.6 で /usr/lib/jvm にSun Javaをインストールした場合 $ sudo ln -s /usr/lib/jvm/jre1.6.0_27/lib/amd64/libnpjp2.so /usr/lib/firefox-addons/plugins # RHEL 5.7 64bit版 + Firefox 10.0.4 (ESR) で /usr/java にSun Javaをインストールした場合 $ sudo ln -s /usr/java/jre1.7.0_04/lib/amd64/libnpjp2.so /usr/lib64/mozilla/plugins
- Opera. プラグインを検索できるようにする
-
下記いずれかの方法で、プラグインが検索できるようにする。
- Opera A. 既存のプラグイン検索対象ディレクトリにプラグインファイルを配置する
-
Opera 11.60にてデフォルトで設定されているプラグインパスの1つ
/usr/lib/opera/pluginsに Java Plug-in ライブラリ/usr/lib/jvm/jre1.6.0_30/lib/i386/libnpjp2.soのシンボリックリンクを作る場合。# ln -s /usr/lib/jvm/jre1.6.0_30/lib/i386/libnpjp2.so /usr/lib/opera/plugins/libnpjp2.so - Opera B. プラグイン検索対象ディレクトリにプラグインファイルがあるディレクトリを追加する
-
既にFirefoxのプラグインが
/usr/lib/firefox-addons/plugins/libnpjp2.soに設置済みであり、これを検出できるようにする場合。- Opera B-1. 設定ウインドウを開く
-
Opera 11.60 の場合、メニューの[設定(S)]-[設定…(P)](Ctrl+F12)をクリック。
- Opera B-2. プラグインウインドウを開きプラグイン検索対象パスを追加
-
詳細設定タブの[コンテンツ]を選択し[プラグインオプション…]ボタンをクリックして[プラグイン]ウインドウを開く。
次に、[パスの変更…]ボタンをクリックして[プラグインのパス]ウインドウが開く
[追加…]ボタンをクリックし、プラグインがあるディレクトリ(
/usr/lib/firefox-addons/plugins/libnpjp2.so)を追加。追加された。
- Google Chromeの場合
-
mozilla ブラウザプラグインフォルダ
/usr/lib/mozilla/pluginsに Java プラグインファイル(シンボリックリンクで可)を置きます。Firefox のプラグインが置かれる/usr/lib/firefox-addons/pluginsに置いても認識しません。Sun Java が/usr/lib/jvm/jre1.6.0_30にインストールされている場合、以下のコマンドで設定することができます。# ln -s /usr/lib/jvm/jre1.6.0_30/lib/i386/libnpjp2.so /usr/lib/mozilla/plugins/libnpjp2.so
12.8. 各環境での動作状況
こちらをご覧下さい。
12.9. 参考文献・サイト
- Using APPLET, OBJECT and EMBED Tags…Java Plugin Guideより
- HTML/XHTMLリファレンス…reflux flow
- HTML 4.01 Specification…W3C Recommendation
- Linux コンピュータ用の Java をダウンロードしてインストールするにはどうすればよいですか?
- Linux (自己解凍) ファイルをインストールするには
- Linux RPM (自己解凍) ファイルをインストールするには
- Linux 上の Opera に Plug-in をインストールする方法
- Ubuntu日本語フォーラム / 10.04でChromium用にJava Runtimeをインストールしたい