Posts tagged ‘SailFin’

SIP コンテナの設定項目一覧

SailFin (Sun GlassFish Communications Server) の設定項目について調べ、
この情報は SailFin をご利用の方には有用な情報になるかと思い、本ブログでも
公開します。

下記は、SailFin の中で特に SIP コンテナに関連した設定項目の一覧になります。
もちろん、下記の設定項目以外に GlassFish で提供される設定項目も設定変更が
可能ですが、ここでは特に SIP コンテナ、SIP リスナーに関する項目だけを抜粋しています。
また、下記の設定項目は GUI の管理コンソールからも設定変更ができますので
必要に応じて、GUI 管理コンソールをご使用ください。

パラメータ名 意味 デフォルト値
server.log-service.module-log-levels.property.sip 各サーバーモジュールのログレベルを指定
します。

FINEST: 最大の詳細度

FINER: 中間の詳細度

FINE: 最小の詳細度

CONFIG: サーバー設定に関連するメッセージ

INFO: サーバー設定、またはエラーを除くサーバーの状態に関連するメッセージ

WARNING: 例外を含む警告

SEVERE: 正常なプログラム実行の妨げになるイベント

INFO
server.monitoring-service.module-monitoring-levels.property.sip-service SIP サービスの監視を有効
「LOW」または「HIGH」を選択します
OFF
server.sip-container.external-address コールバッククライアントがレスポンスを
返信する際に使用する外部からアクセス可能な
アドレスを指定します。
N/A
server.sip-container.external-sip-port コールバッククライアントがレスポンスを
返信する際に使用する外部からアクセス可能な
SIP用のポート番号を指定します。
5060
server.sip-container.external-sips-port コールバッククライアントがレスポンスを
返信する際に使用する外部からアクセス可能な
SIPS用のポート番号を指定します。
5061
server.sip-container.session-config.session-manager.manager-properties.max-sessions 最大セッション数 N/A
server.sip-container.session-config.session-manager.manager-properties.reap-interval-in-seconds 取得間隔
アクティブでないセッションデータが削除
されるまでの秒数
N/A
server.sip-container.session-config.session-manager.manager-properties.session-file-name セッションファイル名:
セッションデータを含むファイル。
N/A
server.sip-container.session-config.session-manager.manager-properties.session-id-generator-classname セッション ID ジェネレータクラス名:
セッション ID を生成するためのカスタムクラス
N/A
server.sip-container.session-config.session-manager.store-properties.directory = セッション情報をファイルに保存する際
ファイルの保存先のディレクトリを指定
(テスト環境においてのみ利用可能、
テスト時セッション情報の内容を確認する
ために利用)
N/A
server.sip-container.session-config.session-manager.store-properties.reap-interval-in-seconds 取得間隔:
アクティブでないセッションデータが削除
されるまでの秒数
N/A
server.sip-container.session-config.session-properties.timeout-in-seconds セッションタイムアウトの時間(秒) N/A
server.sip-service.property.accesslog アクセスログの保存先 ${com.sun.aas.instanceRoot}
/logs/sipaccess
server.sip-service.access-log.format SIPサービスのアクセスログのフォーマット
を指定
SIP ヘッダーの client.name、auth-user-name、
datetime、request、status、response.length、
max.forwards、from、cseq、contact、to、
content.type、via、call.id を指定可能
%client.name%
%auth-user-name%
%datetime%
%request%
%status%
%response.length%
server.sip-service.access-log.rotation-enabled アクセスログのローテーションを有効 TRUE
server.sip-service.access-log.rotation-interval-in-minutes ローテーション間隔を指定 15
server.sip-service.access-log.rotation-policy ローテーションのポリシーを指定
デフォルトの time 以外選択肢は無い
time
server.sip-service.access-log.rotation-suffix ローテーションサフィックス:
ローテーション後にアクセスログファイル名に
追加されるファイル名のサフィックス
yyyy-MM-dd
server.sip-service.connection-pool.max-pending-count 最大保留カウント:
LISTENソケットの保留の最大数
4096
server.sip-service.connection-pool.queue-size-in-bytes キューサイズ:
接続キューのバイト単位のサイズ.
-1 は、プロパティーが無効
-1
server.sip-service.connection-pool.receive-buffer-size-in-bytes 受信バッファーサイズ:
ソケットが使用する受信バッファのサイズ.
-1 は、プロパティーが無効
-1
server.sip-service.connection-pool.send-buffer-size-in-bytes 送信バッファーサイズ:
ソケットが使用する送信バッファのサイズ
8192
server.sip-service.keep-alive.max-connections 最大接続数:
キープアライブモードにある接続の最大数
256
server.sip-service.keep-alive.thread-count スレッド数:
システム内のキープアライブスレッドの数
1
server.sip-service.keep-alive.timeout-in-seconds タイムアウト:
接続がアイドルと見なされ、キープアライブ
状態で維持される最大時間。
-1 はタイムアウトが無効
-1
server.sip-service.request-processing.header-buffer-length-in-bytes SIP ヘッダーのバッファー長:
リクエスト処理スレッドがリクエストデータ
の読み込みに使用するヘッダーバッファのサイズ
8192
server.sip-service.request-processing.initial-thread-count 初期スレッド数:
SIP サービス開始時のリクエスト処理スレッド
の数
10
server.sip-service.request-processing.request-timeout-in-seconds リクエストタイムアウト:
SIPリクエストがタイムアウトされるまでの秒数
30
server.sip-service.request-processing.thread-count リクエストスレッド数:
リクエスト処理スレッドの最大数
10
server.sip-service.request-processing.thread-increment スレッドの増分:
リクエスト数が初期スレッド数に達した時点で
追加されるスレッド数
1
server.sip-service.sip-listener.sip-listener-*.address ネットワークアドレス:
ドットで区切られたペアまたは IPv6 形式で
指定可能。
複数のIPアドレスでリクエスト受け付けたい場合、
0.0.0.0、any (または ANY)、または
INADDR_ANY (すべて IP アドレス)を指定
0.0.0.0
server.sip-service.sip-listener.sip-listener-*.enabled SIP リスナーの有効/無効を設定 TRUE
server.sip-service.sip-listener.sip-listener-*.external-sip-address 外部向け SIPアドレス:
この値を指定した場合は、SIP コンテナの設定
よりも優先されます
N/A
server.sip-service.sip-listener.sip-listener-*.external-sip-port 外部向け SIPポート番号:
この値を指定した場合は、SIP コンテナの設定
よりも優先されます
N/A
server.sip-service.sip-listener.sip-listener-*.id SIPリスナーの識別名 sip-listener-1/
Sip-listener-2
server.sip-service.sip-listener.sip-listener-*.port SIPポート番号 5060/5061
server.sip-service.sip-listener.sip-listener-*.ssl.cert-nickname SIPS用のサーバ証明書のニックネームを設定 s1as
server.sip-service.sip-listener.sip-listener-*.ssl.client-auth-enabled SIPS用クライアント認証の有効/無効設定 FALSE
server.sip-service.sip-listener.sip-listener-*.ssl.ssl2-ciphers SIPS用 SSLv2の暗号化方式の指定 N/A
server.sip-service.sip-listener.sip-listener-*.ssl.ssl2-enabled SIPS用 SSLv2の有効/無効設定 FALSE
server.sip-service.sip-listener.sip-listener-*.ssl.ssl3-enabled SIPS用 SSLv3の有効/無効設定 FALSE
server.sip-service.sip-listener.sip-listener-*.ssl.ssl3-tls-ciphers SIPS用 SSLv3/TLSの暗号化方式の指定 N/A
server.sip-service.sip-listener.sip-listener-*.ssl.tls-enabled SIPS用 TLSの有効/無効設定 TRUE
server.sip-service.sip-listener.sip-listener-*.ssl.tls-rollback-enabled SIPS用のTLSロールバックの有効/無効設定 TRUE
server.sip-service.sip-listener.sip-listener-*.transport SIPリスナーの転送プロトコル TCP/UDP or tls
server.sip-service.sip-listener.sip-listener-*.type SIPリスナーの種類
タイプにはデフォルト、外部、または内部を
指定できます。内部リスナーは、clb により
プロキシの目的でのみ使用されます。
外部リスナーは、clb ではなく UA によってのみ
使用されます。デフォルトのタイプは両方利用
可能です。
default
server.sip-service.sip-protocol.default-tcp-transport デフォルトトランスポート:
contact および record-route ヘッダーの URI で
“transport=tcp” の挿入を有効/無効にします。
FALSE
server.sip-service.sip-protocol.error-response-enabled エラー応答:
不正な要求に対するエラー応答の送信を有効/
無効にします。
FALSE
server.sip-service.sip-protocol.sip-link.connection-alive-timeout-in-seconds 接続生存状態のタイムアウト:
接続を終了するまでに、SIP リンクがアクティブ
でない状態を許可される最大時間。
デフォルトは 120 秒。
120
server.sip-service.sip-protocol.sip-link.max-queue-length キューの最大長:
1 つのリンク上で書き込みを待機できる、
同時書き込み要求、または接続要求の最大数、
またはその両方の最大数。
デフォルトの要求数は 50
50
server.sip-service.sip-protocol.sip-link.write-timeout-in-millis 書き込みタイムアウト:
SIP リンクの 1 回の書き込み操作の最大時間
範囲は 1 から 50 ミリ秒
デフォルトは 10 ミリ秒
10
server.sip-service.sip-protocol.sip-link.write-timeout-retries 書き込みタイムアウトの再試行回数:
SIP リンクの単一の書き込み操作を再試行する
最大回数。範囲は 1 から 25
デフォルトは 25 です。
25
server.sip-service.sip-protocol.sip-timers.t1-in-millis SIP タイマー
タイマー T1:
T1 は、クライアントとサーバーの
トランザクション間の推定往復時間
デフォルト値は 500 ミリ秒
500
server.sip-service.sip-protocol.sip-timers.t2-in-millis タイマー T2:
非 INVITE 要求と INVITE 応答の最大の再送信
間隔
デフォルト値は 4000 ミリ秒
4000
server.sip-service.sip-protocol.sip-timers.t4-in-millis タイマー T4:
メッセージがネットワークに存続する最大時間
デフォルト値は 5000 ミリ秒
5000
server.overload-protection-service.enabled 過負荷保護サービス機能の有効/無効設定 FALSE
server.overload-protection-service.cpu-overload-protection CPU 過負荷保護の有効/無効設定 FALSE
server.overload-protection-service.cpu-http-threshold HTTP リクエストに対するアクセス拒否を行う
CPU の閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
70
server.overload-protection-service.cpu-ir-threshold SIP 初期リクエストに対するアクセス拒否を行う
CPU の閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
70
server.overload-protection-service.cpu-sr-threshold SIP 初期リクエスト以降のリクエストに対する
アクセス拒否を行うCPU の閾値を設定
(0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
90
server.overload-protection-service.cpu-mm-threshold HTTP/SIP の両リクエストに対するアクセス
拒否を行うCPU の閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
99
server.overload-protection-service.cpu-overload-activation-algorithm CPU 過負荷によるアクセス拒否
有効化アルゴリズムの選択:
CPU の過負荷保護を有効にするかどうかを
決定するアルゴリズムを指定します。
CONSECUTIVE もしくは MEDIAN を指定
MEDIAN
server.overload-protection-service.cpu-overload-deactivation-algorithm CPU 過負荷によるアクセス拒否
無効化アルゴリズムの選択:
CPU の過負荷保護を無効にするかどうかを
決定するアルゴリズムを指定します。
CONSECUTIVE もしくは MEDIAN を指定
CONSECUTIVE
server.overload-protection-service.mm-threshold-http-wait-time CPU 過負荷時
スレッドプールに戻されるまでにスレッドが
保持される期間を設定。
デフォルト2秒
2
server.overload-protection-service.number-of-samples CPU 過負荷の計測において
過負荷と判断されるまでに必要なサンプルの数を
設定
設定可能な最小サンプリングレートは 2
5
server.overload-protection-service.retry-after-interval CPU 過負荷を計測する間隔
503 エラーレスポンスの retry-after ヘッダに
ここで設定した値が書き加えられる
10
server.overload-protection-service.sample-rate CPU 過負荷の計測における計測間隔を設定
正の値を指定可能
2
server.overload-protection-service.memory-overload-protection メモリ過負荷保護の有効/無効設定 FALSE
server.overload-protection-service.mem-http-threshold HTTP リクエストに対するアクセス拒否を行う
メモリの閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
85
server.overload-protection-service.mem-ir-threshold SIP 初期リクエストに対するアクセス拒否を行う
メモリの閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
85
server.overload-protection-service.mem-sr-threshold SIP 初期リクエスト以降のリクエストに対する
アクセス拒否を行うメモリの閾値を設定
(0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
85
server.overload-protection-service.mem-mm-threshold HTTP/SIP の両リクエストに対するアクセス
拒否を行うメモリの閾値を設定 (0% から 100%)
閾値を超えるとHTTP 503 エラーを返す
99
server.overload-protection-service.mem-overload-activation-algorithm メモリ過負荷によるアクセス拒否
有効化アルゴリズムの選択:
メモリの過負荷保護を有効にするかどうかを
決定するアルゴリズムを指定します。
CONSECUTIVE もしくは MEDIAN を指定
MEDIAN
server.overload-protection-service.mem-overload-deactivation-algorithm メモリ過負荷によるアクセス拒否
無効化アルゴリズムの選択:
メモリの過負荷保護を無効にするかどうかを
決定するアルゴリズムを指定します。
CONSECUTIVE もしくは MEDIAN を指定
CONSECUTIVE

2009年12月21日 at 6:33 午後

SailFin v2.0 の技術情報




先日もご案内したように、SailFin v2.0が

リリースされました。これに伴い、SailFin の

開発者が使い方などのノウハウを

ブログにアップしています。




SailFin 関連のエントリ




SailFin v2.0 から課金、認証、承認を行うことが

できるように、Diameter プロトコルを利用できる

ようになったのですが、この Diameter の利用は、

Sun GlassFish Communications Server v2.0 の

ライセンスをご購入いただいたお客様だけが

利用できる(SunSolve から Patch を入手)ように

なるようです。



この Diameter の設定方法については、下記に

エントリが登録されておりますので、どうぞ

ご参照ください。




http://blogs.sun.com/naman/entry/setup_and_configure_diameter_on




是非、SailFin/GlassFish Communications Server を

お試しください。


2009年10月28日 at 11:44 午前

GlassFish v2.1.1 and SailFin v2.0 Released



昨晩、GlassFish v2.1.1とSailFin v2.0 (Sun GlassFish Communications Server)の

リリースが発表されました。(プレスリリース(英語版))



GlassFish v2.1.1 は SailFin v2.0 に対応したものなので、バグフィックスは

含まれますが、特に大きな変更はありません。IBM JDK 6 で AIX 6.1が

サポートされたくらいでしょうか。AIX ユーザの皆様、Geronimo の変わりに

是非 GlassFish をお試しください。



一方、SailFin v2.0も同様にAIX 6.1をサポートしましたが、それ以外に

多くの機能がアップデートされています。たとえば課金処理が可能な

Diameter をサポートしたり、Ericsson による実際の経験に基づく、

機能追加/変更要求等が数多く取り込まれています。

以前のバージョンより安定したバージョンと位置づけられるかと思います。

SailFin v1.5(Sun GlassFish Communications Server v1.5)をご利用の方は

是非、この機会に SailFin v2.0 にご変更ください。



SaiFin v1.5の機能, SailFin v2.0 の新機能、現時点での製品ロードマップを

ご確認されたい方は下記に製品紹介の最新の資料をアップ致しましたので、

是非、御確認頂ければと思います。




Project SailFin and Sun GlassFish Communications Server 製品紹介



2009年10月13日 at 10:04 午後

SailFin Cafe (SIP Application Framework)



SIP アプリケーションのサーバ側のフレームワークである、

SailFin Cafe が公開されました。

これは JSR 289 の SIP アプリケーション(SIP Servlet 1.1.) を

かんたんに構築するためのフレームワークです。



SIP アプリケーションの開発をかんたんにする

SailFin のサブプロジェクトの一つである、SailFin Cafe を

是非お試しください。




https://sailfin-cafe.dev.java.net/



2009年6月4日 at 12:00 午前

SailFinに関するオンラインセミナー開催



今週末SailFinに関するオンラインセミナーが開催されます。



SailFinはオープンソースのSIP Servletコンテナを含む

アプリケーションサーバですが、製品名としては正式には

Sun GlassFish(TM) Communications Server 1.5として出荷します。



昨年私がホットトピックセミナーで説明した際は、昨年の秋頃に出荷予定と

説明させて頂きましたが、SIP Servlet 1.1の仕様のFIX等が遅れたため、

かなり時間を経過してしまいましたが、やっと待望の出荷開始となります。



今回のセミナーはJavaOne 2008でもSailFinについて説明を行った、

Binodさん, Sreeramさんが説明を行います。



SailFinのセミナーの紹介:

http://wikis.sun.com/display/TheAquarium/SailFin


UStream:
Ustream The Aquarium



アメリカで金曜日の夕方17:30分から開始で、

日本時間になおすと土曜の夜中2時30分開始になりますので、

日本の皆様にはかなりきつい時間となりますが、もしご興味のある方が

いらっしゃいましたら、ぜひご参加ください。



もちろん、UStreamで録画されていますので後から確認して

頂く事も可能です。





ご参考:SailFinに関して記述した過去のブログ

 ● 
SailFin情報


 ● SailFinに関するJavaホットトピックセミナー

 ● ホットトピックセミナーで使用した発表資料

 ● セミナーで使用したSailFinのサンプルアプリケーションの公開



ちなみに、バージョン名が異なっていてとても分かり辛いのですが、

SailFin 1.0 = Sun GlassFish(TM) Communications Server 1.5

になります。


2009年1月28日 at 6:53 午後

GlassFish v2.1 and SailFin 1.0 リリース




アクエリウム
でアナウンスされておりますが、

GlassFish v2.1とSailFinがリリースされました。



http://www.sun.com/software/products/appsrvr/

http://www.sun.com/sip



上記の製品は、今すぐダウンロードしてご使用いただけますが、

価格の詳細等を含むプレスリリースは2月に発表される予定です。



また、Grizzlyのメーリングリストで私も初めて知ったのですが、

SailFinではGrizzlyの実装が2つ含まれるようです。

HTTPのコンテナとしてはGrizzly 1.0.22が使用され、

SIP ServletコンテナとしてはGrizzly 1.8.6が使用されているようです。



PS.

GlassFish v3になると、(修正:Java NIO 2で実装されるため、

             修正理由は:本エントリのコメント欄をご参照 )

Java SE 6以上が必須となる予定です。(GlassFish v3はJava SE 5で使用できないようです。)


2009年1月25日 at 6:46 午後 4件のコメント

SIP Servlet(JSR-289) Specification Final Release



JSR 289のSIP Servlet v1.1のファイナルの仕様が

ダウンロードできるようになりました。



JSR 289: SIP Servlet v1.1のステータス確認

http://jcp.org/en/jsr/detail?id=289



SIP Servlet v1.1ファイナルの入手先:

http://jcp.org/aboutJava/communityprocess/final/jsr289/index.html



このSIP Servlet v1.1に対応したアプリケーションサーバである

SailFin(Sun GlassFish Communications Server)は、予定では

今年の冬(12月中旬)にリリースされる予定ですので、

今暫くお待ちください。


2008年8月26日 at 4:15 午前

セミナーで使用したSailFinのサンプルアプリケーションの公開(クリック2ダイアル)



先日のホットトピックセミナーで発表した際に

使用したSailFinのデモアプリケーションを、

当日参加して頂いた皆様からのご要望にお応えして

ソースコード付きで公開することにしました。



アプリケーションとソースコードを下記のURLに置きました。

アプリケーションの動作方法も以降で紹介しますので、

御興味のある方は是非入手頂き遊んでみてください。



●ソースコード付きサンプル(NetBeans 6.1プロジェクト)


Click2Dial-Source.jar:ソースコード付きアーカイブ

Click2Dial.zip: ZIP版ソースコード付きアーカイブ



●発表資料


発表資料の入手はこちらから





実行前の事前準備(必要なファイルの取得):



●SIP Servletコンテナ : SailFin



SailFinの最新ビルドであるMileStone 4を下記のより

入手して、インストールしてください。

https://sailfin.dev.java.net/downloads/v1-MS4.html



●ソースコード付きサンプル(NetBeans 6.1プロジェクト)

Click2Dial-Source.jar



●SIP Client (SIP対応のソフトウェアフォン)



サンプルアプリケーションを動作させる為には

SIP Clientが必要になります。

フリーのSIP Clientとして下記のようなソフトウェアが

ありますので、それぞれ事前に入手しインストールしておいてください。



1. X-Lite(お勧め)

2. SIP Communicator





SailFinのインストールとJavaDB,SailFinの起動方法の紹介


SailFinのインストール方法





# java -Xmx256m -jar sailfin-installer-v1-b24d-darwin.jar -console
…. (中略)
….. (ライセンスの同意確認)
or based on this library.? If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so.? If you do not wish to do so, delete this
exception statement from your version.
Accept or Decline? [A,D,a,d] A
…. (中略)
sailfin/updatecenter/LICENSE.txt
sailfin/updatecenter/README
sailfin/updatecenter/registry/SYSTEM/local.xml
installation complete
# chmod 755 sailfin/lib/ant/bin/*
# cd sailfin
# ./lib/ant/bin/ant -f setup.xml
…. (中略)
[exec] Admin login information for host [localhost] and port
[4848] is being overwritten with credentials provided. This is
because the –savelogin option was used during create-domain
command.
[exec] Login information relevant to admin user name [admin]
for this domain [domain1] stored at [/SAILFIN-INSTALL/.asadminpass]
successfully.
[exec] Make sure that this file remains protected. Information
stored in this file will be used by asadmin commands to manage
this domain.
[delete] Deleting: /Applications/NetBeans/sailfin/passfile
BUILD SUCCESSFUL
Total time: 26 seconds





SailFinに付属するJavaDBの起動





# asadmin start-database
Database started in Network Server mode on host 0.0.0.0 and port 1527.
…. (中略)
Starting database in the background.
Log redirected to /Applications/NetBeans/sailfin/databases/derby.log.
Command start-database executed successfully.





SailFinの起動




# asadmin start-domain domain1
Starting Domain domain1, please wait.
…. (中略)
Domain listens on at least following ports for connections:
[8080 8181 4848 3700 3820 3920 8686 ].
Domain does not support application server clusters and other
standalone instances.









アプリケーションの動作



1. ソースコード付きサンプルの展開

  入手したClick2Dial-Source.jarを展開します。

  展開するとNetBeansのプロジェクトのディレクトリが

  作成されます。





# jar xvf Click2Dial-Source.jar
0 Thu Jun 19 19:49:02 JST 2008 META-INF/
60 Thu Jun 19 19:49:02 JST 2008 META-INF/MANIFEST.MF
0 Thu Jun 12 12:29:06 JST 2008 Click2Dial/
0 Thu Jun 12 12:29:04 JST 2008 Click2Dial/build/
0 Thu Jun 19 18:28:52 JST 2008 Click2Dial/build/web/
2106 Thu Jun 19 18:28:52 JST 2008 Click2Dial/build/web/Login.jsp
0 Thu Jun 12 12:29:04 JST 2008 Click2Dial/build/web/manage/
…….(中略)
0 Thu Jun 12 12:29:06 JST 2008 Click2Dial/dist/
7097035 Thu Jun 19 18:28:54 JST 2008 Click2Dial/dist/Click2Dial.war
…….(後略)





2. アプリケーションの配備



まず、アプリケーションを配備する前に、

アプリケーションサーバ上にJDBCのリソースを作成します。


※注意: JDBCのリソースを事前に作成しないと正常に動作しません。





# asadmin create-jdbc-resource –connectionpoolid DerbyPool jdbc/APP_ApacheDerby
Command create-jdbc-resource executed successfully.





次に、Click2Dial-Source.jarを展開すると展開したディレクトリ配下に、

distディレクトリが存在し、この中にClick2Dial.warファイルが存在しますので

確認してください。





# pwd
/NetBeansProjects/Click2Dial/dist
# ls
Click2Dial.war





このファイルをコピーしてアプリケーションを配備します。

ドメインディレクトリ配下の「autodeploy」ディレクトリの下に

ファイルをコピーしてください。



※ ご安心ください。アプリケーション配備時にデータベースの

  テーブルを自動的に作成するようにしていますので、これだけで

  動くようになります。


アプリケーションの配備




# cp Click2Dial.war /SAILFIN_INSTALL/sailfin/domains/domain1/autodeploy/



ファイルをコピーした時のサーバログ(ファイルコピーによる自動配備機能)




[#|2008-06-19T21:58:52.212+0900|INFO|sun-comms-appserver1.0|
javax.enterprise.system.container.web|_ThreadID=19;_ThreadName=
Timer-5;|contextConfig.available /Click2Dial|#]
[#|2008-06-19T21:58:52.635+0900|INFO|sun-comms-appserver1.0|
javax.enterprise.resource.webcontainer.jsf.config|_ThreadID=19;_Thread
Name=Timer-5;/Click2Dial;|Initializing Sun’s JavaServer Faces implemen
tation (1.2_04-b20-p03) for context ‘/Click2Dial’|#]
[#|2008-06-19T21:58:54.053+0900|INFO|sun-comms-appserver1.0|
javax.enterprise.system.container.sip|_ThreadID=19;_ThreadName=
Timer-5;|Enabling the application Click to Dial application|#]
[#|2008-06-19T21:58:54.093+0900|INFO|sun-comms-appserver1.0|
javax.enterprise.system.tools.deployment|_ThreadID=19;_ThreadName
=Timer-5;|[AutoDeploy] Successfully autodeployed : SAILFIN_INSTALL
/sailfin/domains/domain1/autodeploy/Click2Dial.war.|#]





3. Webアプリケーションの実行とユーザ作成



ブラウザよりSailFinが稼働するサーバに対して接続してください。

http://sailfin.japan.sun.com:8080/Click2Dial/

すると下記のような画面が表示されます。







ここで「新規ユーザ」のハイパーリンクを押下し、

すくなくとも2人のユーザを作成してください。










4. SIP Clientの実行(X-Liteの場合)



X-Liteをインストールした後起動してください。

まず始めにSIP Accountsの設定を行います。

「Add…」ボタンを押下してSIPの

アカウントの設定を行ってください。







アカウントの設定では下記のように情報を登録してください。

注意点としては「Domain Proxy」では「proxy」を選択し、

「Address」欄にSailFinが稼働するサーバ名

(もしくはIPアドレス)を入力します。







設定後「OK」ボタンを押下すると下記の画面が表示されます。







最後に「Close」ボタンを押下します。

ボタンを押下すると下記のように表示されれば

正常にFOOさんでREGISTERに成功しています。







5. クリックしてダイアルの実行



再度Webのアプリケーションに移動して

「社員名選択画面」にて電話を掛ける人

(X-Liteで設定したアカウント)でログイン


してください。

今回は「BAR」さんでログインします。

「BAR」さん=電話を掛ける人







ログインユーザ以外の人が登録をしている場合、

「接続可能ユーザ一覧」に名前と「接続先SIPアドレス」が

表示されます。



ここでは「FOO」さんが接続可能ですので、

「FOO」さんのリンクを押下してください。

すると接続相手(FOOさん)に電話が掛かる

ようになります。






6. ソースコードについて



作成したプログラムは、NetBeans 6.1(Mac OS X)で作成しています。

展開したアーカイブをNetBeansのプロジェクトとして読み込むと

リソースへの参照先が異なるためワーニングが一部出力されるかと思います。

その場合は、適宜御使用の環境に併せて参照先を変更してください。



※「ssa-api.jar」ファイルへの参照先はSailFinのインストールディレクトリ

 配下の「lib」ディレクトリ下にあります。

 ssa-api.jarファイルはSIPServletのライブラリを含むアーカイブです。



※ 作成したプログラムは2008/06月のホットトピックセミナーで

 デモ用に作成した簡易プログラムです。

 プログラムはデモ用に早くつくることに主をおいていたため、

 かなり手抜きをしています。(特にJPAまわり)

 本プログラムをどのように扱うかは御自身の判断で御使用ください。

 サンプルですのでご自由にお使い頂いて結構です。



 また、本プログラムを使用して発生した如何なる問題に対して

 私の方で責任を負うことはできませんので、ご理解頂いた上で

 ご使用ください。

 (問題は起きないと思いますが、間違っても本番環境で、

  そのまま使わないで下さいねってことです。)


2008年6月19日 at 8:05 午前 2件のコメント

SailFin情報



今日は、GlassFishではなく、SailFinについてご紹介したいと思います。



先日、日本エリクソンさんのイベントでも発表したのですが、

ちょっとした概要を説明します。



2007年5月にSunとEricssonはオープンソースの「GlassFishコミュニティ」上で、

「Communications Application Server」を構築するプロジェクト「SailFin」を

発表しました。



「プレスリリース」

http://www.sun.com/aboutsun/pr/2007-05/sunflash.20070508.5.xml

http://www.ericsson.com/ericsson/press/releases/20070508-1125135.shtml



Ericssonは元々IMS製品を出荷しており、その製品の中でJSR-116に準拠した

SIP(Session Initiation Protocol)Servlet Containerを彼らの製品中に

実装していました。そして、今回の発表によりそのSIP Servlet Containerの実装を

GlassFishコミュニティに寄贈していただく事になりました。

その後も、引き続きSunとEricssonで協力して

次世代の「Communications Application Server」を共同で構築中です。



現在では、SailFinの開発に対して、Sunのエンジニアの他、エリクソンのエンジニアも

約15名程フルタイムで、この新しいアプリケーションサーバの構築プロジェクトに

参加し日々開発を続けている状況です。



このSIP Servlet Containerを含むアプリケーションサーバは、

現在、プロモーションビルドとして下記より御試し頂く事ができます。



https://sailfin.dev.java.net/



そして、来月(2008年3月)にはベータ版がリリースされる予定です。

また、製品版は2008年6月頃にリリースされる予定です。



ここで、ちょっとプロモーションビルドをダウンロードして動作させてみました。

すると、下記のような管理画面が出力されます。



注意深くみてみて下さい!!(英語版ですが。)








なんと管理画面は、ほぼGlassFishの管理画面と同じではありませんか!!

SIP Container等の追加項目がありますが、Enterprise Application , Web Application,

Resources等はGlassFishと全く同じです。



そうなのです。SailFinはGlassFishを拡張しSIP Servlet Containerを統合した

アプリケーションサーバなのです。



つまり、GlassFishにできる事は、SailFinでもできます。

GlassFishの持つ機能の内の負荷分散や高可用性も当然実現できます。

それ以外の機能も御使用頂く事ができます。



また、内部的な話を少しすると、SIPのハンドリングはGrizzly上で実装されています。



下記の、Jean-Francoisのブログにも記載されているのですが、

たった2つのクラスを実装しただけで、Grizzly上でSIPを対応できるように

なったという事です。当然、Grizzly上に実装する事により、SIPメッセージを

TLSで暗号化して通信できるようになったりもします。



  #ここでもGrizzlyフレームワークの素晴らしさが実証されてますね。

  #いやぁ、改めてGrizzlyはすごいなぁ!!



http://weblogs.java.net/blog/jfarcand/archive/2007/11/supporting_the.html


Grizzly上で実装されたSIPプロトコル、御想像の通り非常にハイパフォーマンスに

なる事が予想されます。実際、開発者の中でもパフォーマンスに重点をおいて開発が進められて

いるようです。



さらに、NetBeans上でSIPサーブレットを作成できるようモジュールも

既に提供されております。これを使うとSIPサーブレットクラスの雛形が

簡単にできるようになりますし、NetBeansを使用するとConvergedな

アプリケーション(HTTP Servlet , SIP Servlet , EJB ,JDBCリソース、

JMSリソース、各種リソースを併用した)もかんたんに構築できるようになるかと思います。













まだ、製品リリースまでは若干時間がありますが、どのような製品に仕上がっているか、

是非試してみてください。




2008年2月7日 at 2:00 午前


Java Champion & Evangelist

Translate

ご注意

このエントリは個人の見解であり、所属する会社の公式見解ではありません

カレンダー

2023年6月
 1234
567891011
12131415161718
19202122232425
2627282930  

カテゴリー

clustermap

ブログ統計情報

  • 1,268,119 hits

RSSフィード

アーカイブ