Macintosh Developer Online (MDOnline)


2000年7月28日発行号 - Linuxサポートを進めるWebObjects



今日はアップル本社でのWebObjectsセミナーがありました。今日の配信号はその内容をお届けします。こうしたセミナーを開催していただいたアップル様には重ね重ね、お礼を申し上げます。また、セミナーに参加していただいた方々もありがとうございました。皆さん、あまりに真剣な目つきでちょっと恐かったけど(笑)、WebObjectsを抽選でゲットされた方はいきなりえびす顔でしたね。みなさんとお話できる時間がなかったのがやや心残りでもあり、失礼の段はお許しください。また、感想なども、のメーリングリストにいただければと思います。
それで、ニュースを大幅に積み残ししていますが、明日に何とか配信したいと思います。Tech Info Library-Jに、7月27日付けで大量に文書が掲載されています。また、いくつかのニュースもあります。でも、そろそろ配信しないと日付けが変わってしまうので、今日のところはここまでで打ち止めとします。
(新居雅行 msyk@mdonline.jp


WebObjects 5.0では稼動環境としてLinuxをサポート予定

Appleが開発・販売しているアプリケーションサーバのWebObjectsの現行バージョンは4.5だが、2000年末にはWebObjects 5.0として、完全にJavaで作られたものがリリースされる予定だ。2000年7月28日に開催されたWebObjectsセミナーにおいて、WebObjects 5.0をLinux上で稼動テストが行われていることが公開された。Linux上では、作成されたアプリケーションの稼動をサポートする。従来のSolaris版などと同様、開発まではサポートしないものの、利用環境は大きく広がる点は確実だと言えるだろう。具体的にはredhat Linux 6.2 Professional Editionで動作チェックを行っていると表明された。また、WebObjects 5.0では従来のバージョンではObjective-Cで作られていたフレームワークの中身も、Javaで描き直され、プラットフォームに依存する部分をなすくように目指している。

カテゴリ:UNIX, WebObjects


WebObjects紹介セミナーがさらに8月に2回開催

アップルコンピュータ主催によるWebObjectsのセミナーが8月にさらに2回行われる。2000年8月11日には、8月4日に行われるセミナーと同じ内容で行われる。製品紹介やデモに加えて、フレームワークスソフトウェアの製品に絞った導入事例が説明される。8月4日のセミナーの受講者がかなり多かったので、追加でセミナーを開催することになった。
さらに、8月24日には、「WebObjecsts実践ガイドブック」でおなじみの倉橋浩一氏とローラン株式会社の久保均氏によるWebObjectsの活用事例が紹介される。14:30〜17:00の予定で無料で参加できるが、事前の登録が必要となっている。
なお、11日24日のセミナーとも、7月28日より募集を開始したものの、すでに定員の半分以上の応募があるため、すぐに定員が埋まってしまうものと思われる。参加したい人はすぐに申し込もう。

関連リンク:WebObjects紹介セミナー
カテゴリ:WebObjects, イベント


MDOnline/MJR読者限定WebObjectsセミナー:WebObjectsはインターネットエンジン

2000年7月28日に、MDOnlineおよびMJRの読者向けに「WebOjectsセミナー」がアップルコンピュータ本社で開催された。その模様をお伝えしよう。

まずはアップルでマーケティングを担当する鷲滝薫氏より、WebObjectsのパッケージ構成が変更されて、低価格化され約100分の1の\72,800になったことが紹介された。製品の位置付けとしては「インターネットのエンジン」として、アップルの中核製品となっている。実際に使われる場面としてはインターネットを利用した情報発信を行うツール、あるいはさまざまなシステムをインターネットベースで稼働させるツールが考えられる。AppleStoreはすべてWebObejctsを利用している(G4サーバが5台並列利用している)。また、iToolsやiCardなどのインターネットサービスもWebObjectsを使っている。さらに、Tech Info Library-JについてもWebObjectsを使っている(G3を1台で稼働させ?半年以上ノンストップ)。eコマース、無償サービス、カスタマサービスで使われている。アプリケーションサーバは、動的なHTML生成を行ってリアルタイムにデータを反映させる顔を作る部分、バックエンドにあるデータをビジネスロジックとして必要なデータを取り出す作業を行うのが仕事である。それぞれをWebObjectsで行える。
WebObjectsの最初のバージョンは5年前にリリースされており、最新版は3月に発売されたWebOjbects 4.5である。3000ユーザが利用し6000サイトで稼動されている。開発環境も統合されている。データベースの接続性も高く、Oracleなどからフリーのデータベースまで利用できる。用途に合わせて運用できる、つまり、PC1台から始めて、複数台のサイトへ発展するまで、ソフトウエアの再開発なしに利用できるという特徴がある。WebObjects 4.5では、開発ツールや運用ツールを拡張して使いやすくした。また、XMLのサポート、各種Java環境、ディレクトリサービス接続などオープンスタンダードを採用している。また、世界的にはさまざまな賞を受けている。
さらに、WebObjects 5.0 for Javaの話にも及んだ。Java2サポートを行い、100% Pure Javaとなり、稼動環境としてはLinuxもサポートする。さらに、JDBC、EJB、XMLをサポートする。Mac OS Xに最適化されており、Aquaユーザインタフェースや、使いやすいProject Builderが利用できる。さらには、Cocoaアプリケーションの開発ツールとしての位置付けもある。AppleScript、NetInfoもサポートされる。
WebObjectsのトレーニングコースとしては3つあり、プログラミング入門、デベロッパ#1と#2となっている。いずれもハンズオン形式で、2日ないしは3日間たっぷり用意されている。近々は8月から9月にかけて行われる。セミナーは、8/11, 24にも開催され、今後も続けてセミナーは行う。

関連リンク:WebObjects
カテゴリ:WebObjects, イベント


MDOnline/MJR読者限定WebObjectsセミナー:実際のデモを交えた開発の方法を説明

2000年7月28日に行われた、MDOnline/MJR読者限定のWebObjectsセミナーでは、引き続いてアップルコンピュータのビジネス営業部の石山正太郎氏によるテクニカル面の説明とデモが行われた。

まず、WebObjects自体は長く利用されており、現場からの要望を折り込んできた実践的な開発プラットフォームとして成長してきたソフトウエアである。そして、無制限な同時アクセスが可能なライセンスやマルチプロセッサ対応などハイエンド向けの運用環境をサポートしている。また、オブジェクト指向技術を全面的に採用している。データベースをオブジェクトして見ることができ、テーブル構造やリレーショナル情報を含めてJavaのクラスにオブジェクト化できる。さらに、ユーザーインタフェースとロジックを完全に分離している。HTML部分はデザイナーに依頼するといった方法を取っても、システム全体をスムーズに開発ができる。
そして、フレームワークとして、アプリケーション開発に必要な部品を提供している。WebObjects Framework、Enterprise Objects Frameworks、Foundation Frameworkなど、8000以上の機能を提供している。たとえば、クエリー文字列の処理、メールの発信、全文検索など、さまざまな機能を提供している。WebObjects Framework(WOF)は、ブラウザとのデータのやり取り、セッション管理、HTMLのテンプレートなど、ビジネスロジック外の部分を担当する。AppleStoreのページを例に出し、WOComponentでページ要素のひな形を作り、WODynamicElementによって商品情報を埋め込み、ページが作られている様子が説明された。Eneterprise Objects Framework(EOF)は、データベースやLDAPからデータをオブジェクト化する。データソースアダプタで抽象化されている。テーブルをオブジェクトにマッピングでき、複数のテーブルを集約して1つのオブジェクトとして扱うこともできる。異なるマシンで異なるデータベースをまとめることもできる。さらに、UndoやRedoもサポートしていて、背後ではコミットなどの処理を行っている。開発ツールの上で、データソースとユーザインタフェースの間をドラッグ&ドロップするだけで設定ができるなど、必ずしもソース作成は必要とはしない使い勝手となっている。Foudation Frameworkは、OSに近いレイヤーでフレームワークの中ではいちばん下位の構造となっていて、OSに依存する処理を吸収する。基本データ、コンテナ、時刻などのOSサービス、書式設定のユーティリティもある。クロスプラットフォームを実現するものである。Javaにも同様なクラスもあるが、このフレームワークを使うことで、速度をかせぐことができる。

続いてWebObjectsの開発環境のデモが行われた。よく使われるツールは、統合開発ツールProject Builder、動的HTMLフォームを作るWebObjects Builder、データベースをモデル化するEOModelerの3つである。Project Builderでは1からアプリケーションを作るほか、ウィザードで対話的に作成することもできる。ProjectBuilderはオブジェクトのブラウザやソースコードのエディタがなどが1つのウインドウにまとまっており、開発で利用するさまざまなものをまとめて管理する。WebObjectsBuilderは、グラフィカルにユーザインタフェースを作成できる。コンポーネントをウインドウにドラッグ&ドロップで配置することができる。画面の下半分はオブジェクトブラウザになっていて、データベースとの連動などを指定することができる。EOModelerはデータベースのテーブルをオブジェクト化する。SQLデータベースだけでなく、プレーンテキストを利用することもできる。
映画のデータベースからタイトルを表示すると言うシンプルなアプリケーション作成のデモが行われた。まず、プロジェクトを作成する。プロジェクトの種類としてWebApplicationを選択し、スクラッチから作成するためにNone、言語はJavaを選択した。すると、ProjectBuilderが起動される。スクラッチから作る場合でもスケルトンとなるクラスは作られる。そして、EOModelerを立ち上げて作業をする。データベースとしては、付属のOpenBaseLiteにサンプルとして入っているものを使う。これをEOModelerでオブジェクト化する。モデルオブジェクトを作成する機能を呼び出し、OpenBaseLiteを選び、データベースへのログインが行われる。まず、利用可能なテーブルが一覧表示され、使用するテーブルを選択する。さらに主キーを選択し、リレーションに関する選択を行う。すると、選択したデータベースの中身のスキーマ情報や、テーブルのデータなどが表示される。リレーション情報も得られる。SQLはまったく作成しなくても自動的に一連のデータベース処理が行われている。また、テーブルのリレーション情報をビジュアルに表示することもできる。作成結果をモデルファイルとして保存し、プロジェクトに追加する。テーブルをJavaのクラスにしなければならないが、EOModelerでJavaクラス化するボタンをクリックする。すると、Javaのソースとして保存し、ProjectBuilderに追加される。つづいて、ユーザインタフェースを作成する。タイトルはキーボードから手入力してスタイル付けを行う。さらにフォーム部品からリストを配置する。オブジェクトブラウザからクラスを作成する。データベースから取り出した結果を配列として格納するためにもクラスを作成する。オブジェクトブラウザからフォーム要素にドラッグ&ドロップで結び付け、データベースの内容をリストに表示できるようになる。そして、ソースを追加するなどして、ビルドを行う。
次のデモは、データベースエンジンとしてPostgreSQLを使ったものだ。郵便番号を検索するといったもので、ウィザードを利用しJavaを使ったWebApplicationを作成する。ODBCを経由して別のところで稼働しているredhat Linuxで稼働しているPosgreSQLにアクセスする。ウィザードを使うと、ユーザーインタフェースもその中で指定する場面が出てくる。表示形式などいくつかから選択することができる。ここでは検索結果を表示しながら検索フォームも表示するものを選択した。日本語を表示するために、ソースを少し追加する。そしてビルドした。検索ができることを確かめ、さらに、WebObjects Builderを起動して、メッセージを日本語化する作業に入った。プログラムに手を加えなくても、インタフェースだけを書き換えられて、実際にアプリケーションが日本語で利用できるようになった。

WebObjectsと他のソリューションとの違いは、オブジェクト指向を取り入れて開発効率を高める点にある。また、オープンソースのデータベースPostgreSQLでの稼動も確認されており、スキルがあれば低コストでのシステム開発も可能だ。その他のツールとしては、Webアプリケーションをコーディングなしに作成できるDirect to Webがある。さらにDirect to Javaは、クライアント/サーバタイプのアプリケーションを作成できる。InfoCenterはドキュメントを参照するもので、WebObjectsで作られたアプリケーションとなっている。現在は英語だが、日本語化を考えている。
WebObjectsの運用環境は柔軟に対応できる。アダプタがWebObjectsアプリケーションを呼び出す形式になっている。セキュアにしたい場合、ファイアウォールで作られた緩衝地帯でアダプタのあるWebサーバを稼働し、内部のアプリケーションサーバでアプリケーションを動かすという手法も取ることができる。ソースの変更なしに、自動負荷分散、自動障害復旧処理に対応できる。運用ツールとしては、Monitorを利用できる。統計情報を集めるようなツールも含まれている。

まとめとして、開発モデルとの適合性が説明された。きちんと要件定義を行い、ドキュメントを整備してから実装するのが理想とされてきたが、変化の激しいIT業界では不完全な要件定義や途中の変更は日常茶飯事となっている。こうした状況においても、WebObjectsの生産性の高さは発揮でき、仕様の変更などに追随するということも可能となっている。もちろん、きちんと手順を踏んだ開発プロセスにも十分に対処できることは言うまでもない。

関連リンク:WebObjects
カテゴリ:


MDOnline/MJR読者限定WebObjectsセミナー:会場から出たQ&A

2000年7月28日に行われた、MDOnline/MJR読者限定のWebObjectsセミナーでは、引き続いてQ&Aのコーナーとなった。まずは、InfoCenterの日本語化は、できれば年末までにしてもらいたいという要望が出された。

Q:Cocoaの開発環境という話が出たが、NTなどでアプリケーションが動くということか?
A:Yellow Box for Windowsの提供方法についてはまだ分からない。Cocoa自体がMac OS Xだけになるかは分からない。だけども、WebObjects 4/4.5にはYellow Box for Windowsは入っているので、作成したアプリケーションは現状ではWindowsで使える。

Q:SQLを直にたたく必要はないのはいいとしても、チューンナップしたいので、SQLを書きたい時もある。できるか?
A:もちろん、できるし、ストアドプロシージャも呼び出すことができる。

Q:主キーは必須か?
A:必ずしも必要はない。

Q:日本語のコードについて、データベース入力時のコードはどうなっているのか?
A:日本語コードは入力出力とも、別々に設定することができる。

Q:HTMLのコンポーネントはDreamweaverでの編集との連動は可能か?
A:WebObjectsではHTML仕様に含まれてないタグで動的生成をするので、そういうものを削除しないものなら大丈夫。

Q:メールアドレスの検証サービスはフレームワークでは可能か?
A:そこまで細かいことまでは申し訳ないが把握しておらず、今すぐには答えられない。

Q:NTでJavaが動いているが、そのVMは?
A:Javaコンパイラが動いている。JDK 1.1.8をサポートしている。1.3はサポート外となっている。

Q:オブジェクト型データベースのサポートは?
A:アダプタがあれば使える。あるいはODBC、JDBCに対応しているものなら使えるだろう。アダプタがないとすると利用できない。

Q:Apache以外のサーバソフトに対しては?
A:他のアプリケーションサーバとの動的なやりとりとしては、RMIなどでは技術的には可能となっている

Q:パッケージにはすべてのプラットフォームが入っている?
A:Yes。1ライセンスを取得し、Mac OS X Serverで開発して、それを消すとして完成品をWindows NTで運用するということをしてもかまわない。

Q:Webサーバのアダプタは、Apache用とWebSTAR用がある。その他のサーバは?
A:WebObjectsでアダプタを使う部分は、Webサーバアダプタ、データソースアダプタの2種類ある。メジャーなWebサーバには対応している。さらにアダプタについてはソースが公開されているので、場合によってはそれも利用可能。

Q:WebObjectsで稼働していると説明されたAppleStoreのヒット数は?
A:データがない。実はUSAですべてまとめて行われている。Tech Info Libraryはピーク時に1日に15万ヒット、平均は1日に6万くらい。

Q:新製品のG4はMac OS X Serverが動かないとか?
A:今販売している1.2でのサポートはなされていない。新マシンに対する対応は、後日あらためてアナウンスする。

Q:Mac OS X DP4でのサポートは?
A:今発売されている4.5は使えない。

Q:NTでのデュアルプロセッサはJDKの不具合があるが?
A:コンパイラ依存部分は影響は受ける。実行時も同様である。

Q:するとマルチプロセッサ版のマックは影響ないのか?
A:現時点では何とも言えない。分かっている問題は吸収できる。

関連リンク:WebObjects
カテゴリ:


NetBoot時に内蔵HDDを利用できなくする機能拡張

NetBootで起動するクライアントにあるハードディスクをマウントしなくなる機能拡張「NetBoot Drive Unmounter」がリリースされた。北米向け英語版だけが現在公開されている。この機能拡張をインストールしておくと、NetBootで起動すれば、サーバから供給されるシステムとアプリケーションのドライブだけがデスクトップにマウントされ、クライアント機に内蔵されているハードディスクは利用できない。また、Nキーを押しながら起動するということをしなくても、自動的にNetBootで起動するようになる。NetBootでの利用しかできないようにすることができることから、教室での利用などには有効かもしれない。ReadMe文書が以下のアドレスで、Tech Info Libraryの文書として公開されている。

◇NetBoot Drive Unmounter: Read Me
 http://til.info.apple.com/techinfo.nsf/artnum/n88029

関連リンク:NetBoot Drive Unmounter 1.1
カテゴリ:Knowledge Base(旧TIL), ネットワーク


Apple Pro Mouseも基本的な設定はコントロールパネルで行う

新しくリリースされたオプティカルマウスのApple Pro Mouseについての設定を説明した文書がTech Info Libraryで公開された。マウスの移動速度やダブルクリックの間隔といったパラメータを、従来と同じように、コントロールパネルの「マウス」で設定できる。英語版ではあるが、新しいコントロールパネルの画面ショットが掲載されており、マウスの図柄がきちんとApple Pro Mouseになっている。

関連リンク:Apple Pro Mouse: Optimal Setting in Mouse Control Panel
カテゴリ:周辺機器


新発売のハードウエアに関する日本語の技術情報が公開

日本語で技術情報を提供するTech Info Library-Jで、2000年7月にリリースされた新機種に関する文書が公開された。いずれの文書についても、Tech Info Libraryで公開されたものの翻訳である。MDOnlineではすでにこれらの内容を記事として配信しているので、以下は文書名とそのアドレスだけを紹介するにとどめる。

◎iMac 2000 Summer
◇58658JC:iMac (Summer 2000): 新しい情報とこれまでとの違い
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58658
◇58657JC:iMac (Summer 2000): 以前の iMac と区別する方法
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58657
◇58663JC:iMac (Summer 2000): メモリの仕様
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58663
◇58660JC:iMac (Summer 2000): Apple USB Keyboard のパワーボタンではコンピュータを起動できません
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58660

◎Gigabit Ether Power Mac G4, Power Mac G4 Cube
◇95036JN:Power Mac G4 (Gigabit Ethernet): 電源投入時のセルフテスト
 http://til.info.apple.co.jp/cgi-bin/artnum?id=95036
◇58677JC:Power Mac G4 Cube: Apple Pro Keyboard を使用しないでコンピュータを起動する
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58677
◇58676JN:Power Mac G4 Cube: USB スピーカをコンピュータまたはモニタに接続する
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58676
◇58678JC:Power Mac G4 Cube: CD または DVD ディスクの取り出し方法
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58678
◇58679JC:Power Mac G4 Cube: リリースラッチにはハンドルとしての機能はありません
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58679

◎マウス、キーボード
◇58649JC:Apple Pro Keyboard: ハブに接続した装置が動作しない
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58649
◇58652JC:Apple Pro Keyboard: システム条件
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58652
◇58653JN:Apple Pro keyboard: Num Lock の LED は点灯しません
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58653
◇58656JN:Apple Pro Mouse: 光学式マウスのテクノロジーの概要
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58656
◇58655JC:Apple Pro Mouse: クリック強度を調整する
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58655
◇58650JC:Apple Pro Mouse: ポインタが動きが非常に遅い、または全く動かない
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58650

◎ディスプレイ関連
◇58671JC:Apple Studio Display LCD (ADC): タッチスイッチについての情報
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58671
◇58670JN:Apple Studio Display 17 (ADC): シアターモードの説明と使用方法
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58670
◇58669JC:ADC Displays: 互換性について
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58669
◇58667JC:Apple Display Connector: 説明
 http://til.info.apple.co.jp/cgi-bin/artnum?id=58667

関連リンク:Tech Info Library - Japan
カテゴリ:Tech Info Library-J, Macintosh本体