私の方もやっと落ち着き、来年の準備に取り掛かる事ができるようになりました。来年も引き続きGlassFishのネタを中心にブログで色々な情報を提供して行きたいと思っておりますので、どうぞ宜しくお願いします。最後に一つ情報提供したいと思います。実は先日@ITの編集者の方からGlassFishに関するインタビューを受けていたのですが、そのインタビュー記事が@ITに掲載されました。繰り返しとなる内容が掲載されているのですが、もし周りにセミナーに御参加頂いていない方やGlassFishについて他の方に紹介したいという方がいらっしゃいましたら、是非下記のURLも御紹介ください。オープンソースの高機能アプリケーションサーバ、いよいよ日本語版が登場それでは、皆様御健康に気をつけて良い御年を御迎え下さい。来年もどうぞ宜しくお願いします。他のアプリケーションサーバからのマイグレーションツールのページがアップデートされている事が分かりました。#ただし、よくみるとまだツールのダウンロードはできないみたいです。Soonと書かれているので、すぐにリリースされる事を期待してます。v2上で動作できるようになります。午前glassfishとtomcatの違い_part_2_配備編さて、今日は昨日に引き続き比較を行って行きたいと思います。今日は、作成したアプリケーションの配備(デプロイ)・配備解除(アンデプロイ)方法の違いについて説明します。Tomcatでは下記の方法があるようです。起動時の配備Tomcatの起動時にアプリケーションを配備するためには、server.xmlのバーチャルホストの定義(<Host>タグ)中のdeployOnStartupプロパティがtrueの場合に配備されるようです。>●Tomcatサーバ実行中の配備Tomcatの起動後、実行中に動的に配備を行いたい場合は、server.xmlのバーチャルホストの定義(<Host>タグ)中のautoDeployプロパティをtrueにすると有効になるようです。........>●クライアントデプロイヤパッケージを使った配備Tomcatの管理画面より、下記の何れかの方法で配備できます。この管理画面に接続するために別途設定が必要です。NetBeans等の統合開発環境付属の配備ツールの使用これは、TomcatもGlassFishも共に対応しているわけですが、サーバ管理者が使用するよりも、むしろ開発者が開発時に容易に配備できるので、開発者にとっては最も簡単な方法かと思います。GlassFishの配備方法は用途に応じて様々な配備方法が提供されています。ファイルのコピーによる自動配備さて、はじめにファイルをコピーして自動配備を行う方法について紹介します。GlassFishをインストールしたディレクトリ配下にdomainディレクトリが存在しますが、domainディレクトリ配下は下記のようなディレクトリ構成となっています。wsrp/>この中でautodeployディレクトリが存在していますので確認してみて下さい。サーバ上でアプリケーションを自動的に配備するために、このディレクトリ配下にWARファイルをコピーしてください。すると自動的にアプリケーションの配備が完了します。正常に実行されました。正常に実行されました。上記では、実行前にはtestと呼ばれるアプリケーションが配備されていなかった環境で、test.warファイルをコピーした後、自動的にtestアプリケーションが配備されている事を確認しています。list-application-refsコマンド以外にlist-componentsコマンドでも確認できます。正常に実行されました。配備を取り消すためには、該当のディレクトリよりWARファイルを削除する事で自動的に配備を取り消す事ができます。正常に実行されました。正常に実行されました。如何でしょう?Tomcatに比べ設定ファイルの変更の必要がなく、ファイルのコピー/削除で配備・配備の取り消しが簡単に実現できます。上記の自動配備は内部的に2秒間隔のポーリングを行い変更を確認しています。管理コンソールより設定変更が可能です。asadminコマンドの利用GlassFishでは専用の管理用コマンド(asadmin)を使用し管理する事も可能です。下記では、asadminコマンドを使用してアプリケーションの配備(deploy)・配備取り消し(undeploy)を行う方法について紹介します。asadminコマンドで配備時に指定できるオプションを示します。–helpを実行しヘルプを御参照ください。filepathさて、それでは実際にデプロイしてみましょう。簡単にデプロイする方法は下記のようにファイル名を指定します。正常に実行されました。配備の取り消し方法は、undeployコマンドを実行します。–helpを御参照ください。target]component_name実際に配備を取り消してみましょう。正常に実行されました。以上で、asadminコマンドによる配備・配備取り消しを御紹介しました。port]の引数を指定する事によりリモートの環境からも実行できます。その他、ディレクトリを指定して配備を行う、deploydirコマンドも用意されています。)一旦配備したアプリケーションの一部(class,xml等)だけを変更したい場合があります。その際、GlassFishでは下記のようにして変更を動的に反映させる事ができます。特定のclassファイルだけを修正したい場合を考えます。通常、アプリケーションは下記のディレクトリ下に配備されていますが、この中に含まれる、Page1.classのみ変更を加えたい場合、Tomcatの場合、ファイルをコピーするだけで動的に反映されるようですが、GlassFishでは、.reloadファイルという空のファイルを作成(更新)する必要があります。内容が変更されているかを確認してみて下さい。マニュアルの御参照JSPファイルの変更の場合は(即座に反映されるため)必要ありませんが、classファイル等の更新を行う場合は、その毎に、.reloadファイルの更新日付をtouchコマンドで更新して下さい。動的再読み込みの設定も管理コンソールより行う事ができます。アプリケーション」を選択します。...」ボタンを押下します。すると下記のような画面が表示されます。ここで、サーバにアップロードされるパッケージファイルについては、Tomcatと同様にファイルを選択するダイアログウィンドウが表示されますのでファイルを選択します。サーバが稼働しているマシンのファイルシステム中に存在しているファイルから配備する方法は非常に使い勝手がよくなっています。...」ボタンを押下して下さい。するとGlassFishが稼働するマシンのファイルシステムを参照できる、ウィンドウが表示されます。ここで、ディレクトリ階層を手繰りながらファイルを検索して指定してください。ファイルを選択した後、自動的に「アプリケーション名:」「コンテキストルート」が設定されますので、設定内容を全て確認した後、「了解」ボタンを押下します。...」に変わるという小技も用意してます。定められたAPIを使用し配備する方法もあります。一般的には、あまり独自の配備プログラムを書く事は少ないと思いますので、ここでは、説明を省きたいと思います。如何でしょうか?Tomcatと比べてGlassFishでは様々な配備方法を提供しているだけでなく、管理コンソールを使用した配備方法もとても簡単です。XMLを編集する代わりに、何通りかの便利なツールを用意しています。今までの管理コストと今後の管理コストを考えた場合、全くの新人さんにアプリケーションサーバの管理を教えるのに、楽なのはXMLの手書きや構文を覚えさせる事でしょうか?それとも管理コマンドになれて頂く事でしょうか?なれれば、必ず使い易くなるGlassFish是非御賞味ください。午前GlassFish日本語ディスカッションメーリングリストオープンしまったぁ、アクアリウムに先に情報をリークされてしまった。日本語でGlassFishについてディスカッションができるメーリングリストを作成しようという事で、discuss_ja@glassfish.dev.java.netというメーリングリストを開設致しました。#実は、既に数日前からメーリングリストだけは作成していたのですが、#まだ、公開まではしておりませんでした。(ですのでリークというのも大げさなのですが。翻訳化に関すること等を日本語でディスカッションできる場として利用できればと思っております。細かな運営方針は別途決めたいと思っておりますが、GlassFish日本語コミュニティの第1弾として出発できればと思っております。今後ともどうぞ宜しくお願いします。v2の管理の違いについてこれから、少しずつ連載して行きたいと思います。#本文は、今までTomcatを使用してきた方を対象に書いておりますので、#Tomcat自身を触った事のない方は多少わかりずらい点もあるかと思います。#以降では、Tomcatでこのようにしてできた事がGlassFishではどうやるの?#という、管理者の御要望に応えるべく乗り換えが少しでも#楽になればと思い、すこしずつ書いて行きたいと思います。はじめに、インストール方法についてですが、こちらは今やインストーラが付いていたり、コマンドを実行すればそのままサービスを起動できますので、互いに遜色なくどちらも簡単にインストールできます。9.1それぞれのインストール方法について概要を説明します。HADBのインストールhttp://blogs.sun.com/yosshi/page/Apparchiveサーバの起動さて、インストール後、起動するわけですが、それぞれ下記を実行します。Tomcatでは下記を実行します。9.1は下記のコマンドを実行します。domain1上記を実行すると、それぞれ8080番ポートでサービスが提供されるようになります。GlassFishではそれ以外に、管理画面に接続するための4848番ポート、HTTPSで接続するための8181番ポート等もLISTENされています。リスナー」を選択して変更が可能です。(下記では18080に変更)また、その設定内容は下記のディレクトリ配下に記載されています。xpowered-by=”true”>さて、ここですでに御気付きの事と思いますが、エンドユーザに対するサービスを提供するポート番号(18080)と、管理者が管理をするポート番号(4848)が異なっている点に御気付きの事と思います。Tomcatの場合、管理用のツール(apache-tomcat-[version]-admin.zipによる管理も含む)を利用する場合、サービスを提供しているポート番号(8080)と同一のポート番号(8080)で管理を行います。任意のユーザが管理画面に物理的にアクセスできるような状況になり後はRealmによるユーザ認証が残っているだけとなります。#少し調べてできなさそうだったので上記を書きましたが、#変更できたらすいません。(^_^;)、だれか教えてください。GlassFishではデフォルトで管理用のポート番号(4848)とサービスを提供するポート番号(8080)が異なります。そこで、エンドユーザに対してサービスを提供している状況でも管理サーバに接続し、GUIで監視等を含む管理ができるようになります。管理用のポート(4848)に対してアクセスできるネットワークセグメントを限定させる等の防御も容易に実現できます。Realmによるユーザ認証を行う事で、よりセキュリティに強い環境を構築しやすくなります。記載する場合も、パスワードを直接ファイル内に記載しています。Realm等にする必要あり。roles=”manager”/></tomcat-users>一方、GlassFishでは下記のように、管理コンソールより「アプリケーションサーバ」ー>「管理者パスワード」を選択し変更が可能となります。この際、修正されたパスワードは、下記に暗号化されて保存されています。こちらの方がより安全ですね。v3では、より管理方法が洗練される予定です。等も実装される予定です。v2を使用できるようし、さらにjMakiのサンプルアプリを作って動作確認を行う手順について紹介します。3.3の環境を使用します。3.3と連携の設定を行います。v2マルチリンガル版は下記のディレクトリにインストール済みです。Xの環境下で行っています。他のOSでは適宜ディレクトリ等を御変更ください。v2を連携させる手順について進めて行きたいと思います。手順まず、Eclipseのバージョンを確認しておきます。→「その他(O)」を選択します。すると、下記の画面が表示されます。EE(デフォルト)」を選択し、「OK」ボタンを押下してください。すると、Eclipseの画面下部に下記の画面のように「サーバ」タブが表示されます。この状態で、「サーバ」タブをマウスで選択しアクティブな状態にして下さい。「サーバ」タブをアクティブにすると”サーバ”、”状態”、”状況”の項目が表示されますので、”サーバ”の項目の白い部分で、マウスを右クリックして下さい。すると、「新規」ボタンが表示されます、さらに矢印の方向にマウスを移動すると「サーバ」が表示されますので選択して下さい。「サーバ」を選択すると上記の「新規サーバの定義」画面が表示されます。ここで、「追加サーバ・アダプターのダウンロード」のリンクをクリックしてください。クリックすると、リモート更新管理サイトより、自動的に追加用の新規サーバ・アダプタの一覧を取得します。(N)」ボタンを押下します。「使用条件の条項に同意します(A)」のラジオボタンを選択し、「終了(F)」ボタンを押下して下さい。ボタンを押下すると下記の警告画面が表示されますが、「OK」ボタンを押下して下さい。自動的にサーバ・アダプタのインストールが実行されます。完了後、自動的にEclipseの再起動が行われます。「サーバ」タブへ戻ってください。「サーバ」タブ上で下記のように”サーバ”の項目の白い部分で、マウスを右クリックして下さい。「新規」ボタンが表示されます、さらに矢印の方向にマウスを移動すると「サーバ」が表示されますので、選択して下さい。新規サーバを選択後、下記の「新規サーバの定義」画面が表示されます。ここで、画面の内容を確認すると新たに「GlassFish」のアイコンが追加されている事が確認できます。そこで、この「GlassFish」ツリーを展開してみます。するとバージョン毎に異なる3項目が表示されます。この中で、システムにインストールされている適切なバージョンを選択して下さい。(N)」ボタンを押下します。すると下記の画面が表示されます。ここで、「アプリケーション・サーバ・ディレクトリ(S):」の部分に、GlassFishのインストールディレクトリを指定します。...」ボタンを押下し検索して下さい。ここでは、前提で記載したように下記のインストールディレクトリを指定します。最後に「終了(F)」ボタンを押下して下さい。「サーバ」タブ内に下記のGlassFishの項目が追加されている事を確認できます。5」を選択しマウスで右クリックして下さい。いくつかの選択項目が表示されますが、「開く」を選択します。「開く」を選択した後、下記の画面が別ウィンドウに表示されますので、デフォルト値を変更する場合は、こちらから変更可能です。それではEclipseからGlassFishの起動を行ってみましょう。起動方法:画面下部の「サーバ」タブより下記の緑色のボタンを押下して下さい。すると、「コンソール」タブに自動的に切り替わりサーバ起動時ログが出力されます。正常に起動すると「サーバ」タブに自動的に戻り、「状態」が「始動済み」に変わります。停止方法:アプリケーションサーバが起動された状態(始動済み)で、「サーバ」タブ内の赤いボタンを押下して下さい。すると、起動時と同様、自動的に「コンソール」タブに画面が切り替わり、停止時のログを出力します。最後に「サーバ」タブをアクティブにし「状態」を確認すると、「停止」に変わっている事が確認できます。上記で、EclipseとGlassFishの連携設定手順は完了です。jMakiアプリケーションによる動作確認:ここでは、実際に簡単なアプリケーションを作って配備してみましょう。今回は、せっかくですので、jMakiのプロジェクトを作ってみたいと思います。下記のURLを御参考にして下さい。https://ajax.dev.java.net/eclipse/index.htmlまず、新規に「動的Webプロジェクト」を作成します。プロジェクト」を選択してください。プロジェクト」を選択すると下記の画面が表示されます。(N)」ボタンを押下して下さい。ボタンを押下すると、下記の画面が表示されます。Ajax」のチェックボックスにチェックを付け「終了(F)」ボタンを押下してください。次に、JSPファイルを作成します。「新規(N)」→「JSP」を選択してください。選択すると、下記の画面が表示されますので、ファイル名(index.jsp)を入力し「終了(F)」ボタンを押下します。index.jspが生成されたら、「スニペット」を使用しjMakiのアプリケーションを実際に作っていきます。Mapから検索し表示するアプリケーションを作成します。「スニペット」より「Yahoo」を選び「geocoder」をドラッグ・アンド・ドロップでJSPのbodyタグ内にコピーします。次に、同様に「スニペット」より「Yahoo」を選び「map」をドラッグ・アンド・ドロップでコピーします。コピーして出来上がったコードは下記です。(※:ここまで一切コードを書いてません。)上記だけで、最も簡単なjMakiサンプルアプリケーションは完成です。そこで上に記載したコードが実際に動作するか、実行・確認してみましょう。サーバで実行(1)」を選択してください。正常に、GlassFish上に配備され実行した場合、下記のような画面がEclipse上で表示されます。デフォルトは海外の地図が表示されていますが、ここで、「Location:」のテキストフィールドの箇所に「TOKYO」と入力してみましょう。Mapで東京の地図が表示される事がわかります。如何でしょう?jMakiって簡単でしょ?#まぁ、一番な簡単なデモにしただけなのですが。御興味のある方は是非下記のサイトへアクセスして見てください!!http://jmaki.comhttps://ajax.dev.java.net本当は、EclipseでGlassFishの設定方法を紹介するだけのつもりだったのですが、せっかくならと動作確認のためにjMakiを使いました!!以上でEclipseとGlassFishを連携させるための手順について説明しましたが如何でしょう?御役に立ちましたか?恐らく上記の手順に従って設定を行って頂ければ問題は少ないと思います。周りのEclipseユーザの方にも薦めてみていただけないでしょうか。6.0とGlassFishの相性は抜群です!!下記の画面のようにNetBeansを使用すると開発環境の中からアプリケーションサーバ上のリソース等も見る事ができるようになります。別途、管理画面(http://HOST:4848)にアクセスしなくてもある程度簡単な事であれば開発環境下からできるようになっています。5.5.1やそれ以前のバージョンと同様に起動・停止・デバッグ用に起動等、ごく限られた機能しか実行できません。開発者の方も、ブラウザを使用して(http://HOSTNAME:4848)にアクセスして頂く必要がでてくるかもしれません。極度の心配を抱く必要はありません。マルチリンガル版をインストールするとヘルプも日本語化されていますし、基本的な操作は非常に簡単にできるようになっていますので、開発者の方も怖がらずトライしてみて下さい。6.0自身も本当に良いできになっていますので、まだ、試したことのない方は是非一度試してみてください。6が持つ機能の比較について簡単に紹介されています。Kalaliさん)がGlassFishも含めた同等の比較内容をブログにまとめて公開してくれています。compared比較した項目数が少なくて、殆どがYesとなっているので残念ですが簡単な比較という点で一度ご覧頂ければと思います。上記と異なる比較資料もあります。下記のURLではTomcatとの比較を行っていますが、こちらも是非ご覧ください。サービススタックに関する比較資料を紹介します。最後に、GlassFishに実装されているJAX-WSとAxis2とのパフォーマンスを比較したチャートを下記に添付しますが、こちらによるとJAX-WSのパフォーマンスが非常によい事がわかります。(リンクをクリックすると拡大できます。)Webサービスを実装されている方も是非、GlassFish上でサービスを提供する事を御検討ください。午前GlassFishがサポートする外部のフレームワークさて、今日はGlassFish上で動作可能な外部フレームワークについて御紹介します。5ではなく、やはり既存のフレームワークを使いたい御要望もあるかと思います。GlassFish上ではどのようなフレームワークを動かす事ができるのでしょうか?実は、既に下記のURLに一覧が記載されています。GlassFish上で動作可能な外部フレームワークの御紹介ページへフレームワーク名だけを抜き出すと下記が動作確認されています。非常に多くの外部フレームワークと連携ができる事が御確認頂けるかと思います。5に移行する事が困難と御考えな方も既存のフレームワークを使用する事ができます。ハイパフォーマンスなGlassFish上で既存アプリを御賞味下さい!!PS.今日はこれから雨が降るそうなので、いつもより少し早く帰ろうと思っています。v2のプロモーション活動に必要な情報収集や活動を行っているのですが、プロモーション用に使うGlassFishのT-シャツをUSより直輸入致しました。これは、社内のイベントでUSに出張に行った際に海外のエンジニアが着ていて、カッコイイ!!と思い。無料セミナーを御紹介します。JMXのエッセンス教えますGlasssfishや、Sunのアプリケーションサーバを監視する際に、JMX(AMX)経由で管理を行う事ができる機能も持っています。#実際、管理サーバ内でもJMXを使用して管理を行っています。独自のアプリケーションサーバ管理用ツールも作成できるようになり、非常に重要な技術です。このセッションではJMXに関する基本的な内容を優しく教えてくれます。今までJMXについて興味のなかった方、興味はあったけどよく分からなかった方は受講されてみては如何でしょうか。トラブルシューティングの手がかりまた、トラブルシューティングの手法の御紹介もとても参考になると思います。御興味のある方はセミナーへ参加してみてください。ビルと駅は地下でつながっています。エレベーターにて27階まで直接お越しください。http://jp.sun.com/company/events/2007/000106.html*定員になり次第締め切らせていただきますので、お早めにお申し込みください。表にはあまり出てこないですが、実は歴史的にも古く、組み込みからサーバまでいろいろな分野で使われている「縁の下の力持ち」的な技術です。監視はちょっと敷居が高くて・・・」と感じている方は案外多いのではないでしょうか。エッセンスをわかりやすく解説します。よし)みなさんはトラブルシューティングを「なんとなく」やっていませんか。ログやダンプは集めたものの、それらをどう使えば問題が解決するのか途方にくれたことはありませんか。このセッションでは具体的なトラブルシューティングの手順をとりあげ、主要なツールの効果的な使い方やログを読み解く手がかりを紹介します。使用に同意したとみなされます。Terada現在53人フォロワーがいます。