Open Laszloを使って作るリッチクライアント(5)
Laszlo Application配置の2つの方法
浅野守
2005/8/16
本連載ではオープンソースのリッチクライアント製品として注目を集める「Open Laszlo」を解説している。Laszloはサーバサイドで生成したコンテンツをFlashとしてクライアントのWebブラウザに配信するもので、Macromedia社のFlexと非常によく似たアーキテクチャを採用。前回「Open Laszloのクラスを定義してコードを活用する」で実装方法を理解できたら、プレイスメントに挑戦してみよう。
■Laszlo Application配置の2つの方法
前回までで、Laszlo Applicationの実装方法がなんとなく分かっていただけたと思います。今回は作成したLaszlo
Applicationの配置方法について説明したいと思います。
Laszlo Applicationを配置するには2つの方法があります。1つはLaszlo Presentation Server(LPS)を使用する方法、もう1つはあらかじめコンパイルしておいた Laszlo Application (.swfファイル)をIISやApacheといったWebサーバーで配布する方法です。後者の方式はSOLO(Standard OpenLaszlo Output)またはサーバーレス(LPSを使用しないので)と呼ばれています。
■Laszlo Presentation Server(LPS)で配置する
Laszlo Applicationのソースコードファイル .lzx ファイルを LPSの配下のフォルダに保存します。Windowsの場合、ユーザーアプリケーションの保存場所はインストール時のデフォルト設定では、
C:\Program Files\OpenLaszlo Server 3.0\Server\lps-3.0\my-apps
|
になっています。ここに保存したLaszlo Applicationは、以下のURLでアクセスできます(XXXXはソースコードのファイル名)。またmy-appsのフォルダ名を任意の名称に変更しても問題ありません。
http://localhost:8080/lps-3.0/my-apps/XXXX.lzx |
クライアント(Webブラウザ)からアクセスされたLZXソースファイルはSWF形式へ動的にコンパイルされ、最初にコンパイルされたバイトコードはキャッシュされ、クライアントにダウンロードされます。
では、my-appsに簡単なソースコードを作成して試してみましょう。メモ帳を立ち上げ以下のコードを入力してmy-appsフォルダにhello.lxzというファイル名で保存してください。
<canvas> |
http://localhost:8080/lps-3.0/my-apps/hello.lzxにブラウザからアクセスすると、Hello Laszlo!と表示されるはずです。
LPSで配置した場合、LPSの持つメディア・トランスコーディング、データ・マネージャ、パーシステント・コネクション・マネージャ、キャッシュなどの機能を利用することができます(画面1)。ただしパフォーマンスとトレードオフする場合があるようです。
画面1 Laszlo Presentation Server(LPS)のアーキテクチャ |
・ LPS Request Types
先ほどアクセスしたLaszlo Application、hellow.lzxでは画面2のようなボタンが表示されています。これはLPSがLazlo
ApplicationをラッピングするHTMLコンテンツを返しているためです。このHTMLコンテンツの内容は、LPS Request Typeを指定することで制御することができます。前記URLの最後に?lzt=htmlを付けてアクセスすると、先ほどまで表示されていたボタンが表示されなくなります。
画面2 開発ツールボタン |
LPS Request Typeは、lzt=htmlのほかに、lzt=html、lzt=html-object、lzt=window、lzt=embet、lzt=js、lzt=object-tag、lzt=swf、lzt=app_console、lzt=source、lzt=xml、lzt=log、lzt=clearlog、lzt=logconfig、lzt=clearcache、lzt=serverinfo、lzt=errorcount、lzt=errorcount&clear=1、lzt=stat、lzt=gcなどがあります。詳細は「System Administrator's Guide to Deploying Laszlo Applications」の「Chapter 4. LPS Request Types」をご覧ください。
これらLPS Request TypeによりLPSが返すHTMLのソースコードを、作成したアプリケーションを記述するHTMLソースのテンプレートとして利用することもできます。
■SOLO(Standard OpenLaszlo Output)で配置する
SOLOでLaszlo Applicationを配布するには、あらかじめコンパイルしておく必要があります。
・ Lazlo Applicationのコンパイル
Laszlo Applicationをコンパイルするには以下の3通りの方法があります。
- コマンドラインからコンパイルする
- クエリーパラメータlzproxied=falseを指定してLPSでコンパイルする
- LZXソースのcanvasタグの属性にproxied="false"を指定する
コンパイルコマンドlzcは、デフォルト設定のインストールでは、C:\Program Files\OpenLaszlo Server 3.0\binに存在しています。「Software Developer's Guide to Laszlo Applications」には、lzc filename.lzxとすることでコンパイルできる記述がありますが、現バージョンでは正常に動作しないようです。
では、先ほど使用したhello.lzxをコンパイルしてSWF形式にしてみましょう。以下のURLにアクセスしてみてください。LPSがhello.lzxをコンパイルし、my-appsフォルダにhello.lzx.swfという名称で保存します。
http://localhost:8080/lps-3.0/my-apps/hello.lzx?lzproxied=false |
・ IISに配置する
IISの設定の詳細については省きますが、お使いのパソコンにIISがインストールされていて公開しているフォルダがありましたら(デフォルトの状態ではC:\Inetpub\wwwroot)、そこにhello.lzx.swfをコピーしてブラウザからアクセスしてください。やはり同様にHello
Laszlo!と表示されるはずです(画面3)。
画面3 IISで配置したLaszlo Application |
・ Wrapper HTML
SOLOで配置した場合、SWFファイルを直接URLで指定しましたがSWFファイルをHTML内に記述して配置することも当然可能です(画面4)。このときのHTMLについては、LPSを使用することで簡単に作成することができます。hello.lxzを例にすると以下の手順で作成できます。
- LZXソースファイルにlzt=html-objectのLPS Request Typeを指定してアクセスする
- ブラウザのビューソースでHTMLソースを表示し、エディターへコピー&ペーストする
- data="hello.lzx?lzt=swf" を data="hello.lzx.swf" に修正する
- <param name="movie" value="hello.lzx?lzt=swf"> を <param name="movie" value="hellow.lzx.swf"> に変更する
- ファイルを任意のhtmlファイルとして保存し、hello.lzx.swfを配置したフォルダに配置する
画面4 IISで配置したWrapper HTML |
Wrapper HTMLの作成方法は、SOLOによる配置だけではなくLPSでLaszlo Applicationを配置する場合にも利用することが可能です。
ここまでで、Laszlo Application配置の2方法についてご理解いただけたでしょうか。次回はLZXのデータ形式とバインディングについて解説します。
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する - GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】 - PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】 - Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|