Macintosh Developer Online (MDOnline)


2001年8月3日発行号 - WebObjectsのセミナー



今日は長い記事が多いですが、昨日のWebObjectsのセミナーは、apeX編集長の森恒三さんに原稿をお願いしました。長丁場だった様ですけど、LinuxでWebObjectsを動かすところを見せるなど、新しい話もあったようですね。
さて、最近のWebObjects系のセミナーで来場者に配付されている「WebObjects 5 for Mac OS XトライアルCD」をMDOnline購読者のみなさんにプレゼントします。期限が9月いっぱいのWebObjectsが入っていますが、たぶん、2001年5月版のDeveloper Toolsと中身は同じみたいです。トランザクション制限と使用期限がありますけど、通常とおり開発作業などはできます。他に、サンプルコード、データシート、FAQといった文書類も入っています。実は、CDの存在自体を記事にしてもよかったのですが、前回のデモ版CDでアップルさんをはじめいろいろ御迷惑をおかけしたので、今回はこっそりお分けします。以下の要領でお申し込みください。50枚あるので、数が多いですし、先着順とします。みなさん、良い子さんですから、Dateフィールドをごまかすみたいな手は使わないでくださいね(笑)。欲しい方はまずはメールということで。とりあえず1人1枚ですが、あまれば2枚目に突入します。発送は順次行います。

===============================プレゼント
WebObjects 5 for Mac OS XトライアルCD(アップルコンピュータ提供)
――――――――――――――――――――――――――――――――――――
申し込み方法:<msyk@mdonline.jp>宛にメールをする
 メールのタイトルは、【WebObjects 5のCD】
 メールの本文には、送付先の名前(団体部署名)、住所、郵便番号、を記載
 メールは、MDOnlineに登録のメールアドレスから送付してください
   有償での購読者、MOSA会員としての購読者、ヘリオグラフ顧客様
   としての購読者の方々に応募の権利があります。
   (無償購読の方ももし御入用ならとりあえずメールをください)
 とりあえずお一人様、1枚とします。先着順とします。

それから、あいかわらず、東京めたりっく回線は復帰しません。MDOnlineのサイトにアクセスできませんが、ご了承ください。記事の画像は別のサーバなので参照できますが、記事のデータベース自体のサーバが、めたっくの内側にあり、あいかわらず80番ポートを閉じたままなのです。
(新居雅行 msyk@mdonline.jp


セミナーレポート》JOLFとMOSAが、WebObjectsをフィーチャーしたセミナーを開催(1)

ここ最近、Web開発関係のセミナーが盛んに開催されている。2001年8月2日には、ニッポン放送とMOSAの主催による「ウエッブアプリケーション ソリューションセミナー」が、東京・お台場のフジテレビ本社ビルで催された。アップルが発売した開発環境であるWebObjectsに焦点をあてたもので、会場となったマルチシアターには、開発者など数十人が訪れた。
セッションの内容は、基調講演とアップルによるデモを交えた製品紹介となる午前の部と、実際にWebObjectsで開発を行なっている事例や、システム構築における問題点などを解説する実践的な内容となる午後の部に分かれており、最後には参加者から寄せられた質問に、講師陣が回答するQ&Aも設けられた。

〈基調講演―「小さく始めて大きく育てる」〉
最初に壇上に立った、日経BP社パソコン局主席編集委員の林伸夫氏は、「Webアプリ導入の神髄! 小さく始めて大きく育てる」と題して、Webで展開するシステム開発の現状と、そのなかにおけるWebObjectsのメリットを事例とともに紹介する講演を行なった。
現在、Web上で展開しているサービスにはさまざまなものがあり、用いる製品も多様になっているなかで、林氏は、個人・小規模に適したファイルメーカーから、企業・大規模向けのWebSphereやWebLogicなどの製品をカテゴリー分けして紹介。現在主流となっているものとしてJavaを挙げ、小規模から大規模まで各種のシステム構築に広く用いられていると述べた。そのうえで、Javaに完全対応し、また安価かつ開発効率が高いWebObjectsは、ほぼあらゆる規模に適合できる非常に優れたWebアプリケーション開発環境であると語った。2000年度と2001年度のWebアプリケーションサーバー出荷実績(日経システムプロバイダの調査に因る。2001年度分は予測値)を示し、この市場がさらに大きくなることは確実であり、そのなかでWebObjectsは今後大きく普及してほしいという期待も示した。
自身の経験として、日経BP社が立ち上げたブックレビュー社が行なっているオンライン書評サイト「Book1」のシステム構築にあたってWebObjebctsを選択したことにより、非常に短期間(4月スタートのプロジェクトを7月公開までに仕上げるという突貫作業だったという)でシステムを運用段階に持っていくことができたと語った。実際に一般公開されているシステムの開発に関する話だっただけに、「最初は小規模なシステムを用意し、徐々にコンポーネントを追加することでシステム規模だけでなくビジネスとしても大きく育てていける」という氏のコメントにも大きな説得力が感じられた。

〈セッション1―WebObjects最新情報〉
基調講演に続いたセッション1では、アップルコンピュータ株式会社プロダクトマーケティング課長の鷲滝薫氏、同社WebObjectsサポートエンジニアの野村さやか氏によるWebObjectsおよびMac OS X Serverの特徴や最新情報、開発作業デモンストレーションが行なわれた。
鷲滝氏は、WebObjectsが、NeXT社の時代から受け継がれてきたパワフルなインターネットアプリケーション開発環境であり、リリースからすでに6年が経過したなかで着実に実績を積み重ねてきたことを強調。最新バージョンのWebObjects5がPure Java環境にフル対応したことで、今後より運用事例が増えていくことになるだろうと語った。すでに知られているように、WebObjectsは不特定多数を相手にしたWebアプリケーションや、特定業務向けに適したJavaクライアントアプリケーションの開発に威力を発揮するが、同時に導入コストが安価であることや製品構成が極めてシンプルであることを提示。同種の機能・環境を実現する他社製品と比較して、極めて有利であるとコメントした。
アップルが運営しているAppleStoreやTech Info Library(TIL)など、WebObjectsを用いた自社システムの紹介では、クロック周波数400MHzのPower Mac G3(B&W)1台で、一日10数万ページビューというアクセスがあるTILのシステムを運用していると語り、高い負荷に耐えるシステム構築にも何ら不足はないことをアピールした。
今後は必要な情報をより積極的に提供していきたいと語り、現在リファレンス類の日本語化作業を進めているとした。今後Webなどを通じて配付していきたいとしている。また近々、書籍なども出てくることになると語り、情報不足とされる現状を打開すべく活動していることを示した。サポートについては、開発運用サポートを行なうEnterprise Help Lineに、1カ月単位/3カ月単位の契約形態を追加すると語り、現場のニーズに応じた体制を整えていく旨を明示した。
野村氏が行なった開発プロセスのデモンストレーションは、今回は車のデータベースを用いて価格や車種による検索が可能なアプリケーションを作るというもの。実際にProject BuilderやWebObjects Builderを用いてその場で表示するページの内容を変更し、機能を拡張することも容易であることを実例と共に示した。また、Pure Java環境であればWebObjects5の運用が可能であることを紹介するために、別途Linuxが動いている機材を用意して、その上でWebObjects5のアプリケーションをコンパイルし、実際に動かしてみせた。Mac OS XのTerminalを使った遠隔操作であったことや、時間が短かったことが影響して実感は湧きにくかったものの、Linux上でWeObjectsアプリケーションが動いていることをMonitorで確認することができたのは、これから導入を考えている人にとって大きな収穫だったと言えるだろう。

〈セッション2―「高い生産性の秘密」〉
講師陣との懇談も兼ねた長めの昼食会を終えてから、午後の部に。セッション2では、有限会社テクニカル・ピット代表取締役の倉橋浩一氏による「WebObjectsで作る! 開発者が見せる高い生産性の秘密」と題した講演が行なわれた。
WebObjectsの特徴や利点などを簡潔にまとめた後、実際の開発作業をどのように行なうのかを、自社のWebサイトで運営しているeコマースサイトを例に紹介。「オンラインショップ倉橋屋」のページデザインをWebObjects Builderで行なう様子や、実際にページ上に設けた各種エレメントに対して必要なデータベース情報を割り付ける手順、各種の設定作業を実演。WebObjectsを用いたサイトの構築が容易であることを示した。
氏は、「WebObjectsは、最初覚えるのに時間はかかるものの、一度覚えてしまえば、そのあとはいかようにも応用することができる。スティーブ・ジョブズはこれを使うことで開発効率が2倍になると語っているが、実際に使っている自分としては5〜10倍効率が高まると思う」と語り、技術として非常に優れていることを強くアピール。Webアプリケーション開発におけるWebObjects導入のメリットを強く主張した。
(続く)

カテゴリ:WebObjects, イベント


セミナーレポート》JOLFとMOSAが、WebObjectsをフィーチャーしたセミナーを開催(2)

〈セッション3―「こんなはずではなかった……」〉
単独講師によるものとしては最後になるセッション3では、丸善株式会社でデータベースシステムなどの設計・構築・運用に携わってきた井上利幸氏による「こんなはずでは! 必ず失敗する開発・運用のいろいろ」と題した講演が行なわれた。いわゆる技術的な開発ノウハウではなく、システムの導入や運用に際して起こりがちな事象について取り上げ、現場に携わる開発者への注意を喚起するものとなった。
氏は、会計処理などを行なうシステムを「勘定系」、現在Webなどで多く用いられているシステムを「情報系」と定義し、利用者が不特定多数に渡り、かつ情報の入力や提供の方法が複雑になる情報系システムの構築における問題を、実体験を交えながら解説。データベースに情報を登録する際、その形式や後に検索することを踏まえた場合の重み付けをどこまで考慮するのか、全角文字と半角文字というような表記そのものの揺らぎはどこまで許容するのか・システム側で対応させるのか、ユーザーに注意を促すのか、といった事例を紹介。データベースを用いるから大丈夫だという過信は禁物であると語った。
開発にかかるコストについて、その費用の算出基準と、システム導入によって得られる実際の効果を正しく把握することは必須であると語り、現在のコスト換算の矛盾や不合理さを示した。設計時に仕様書を作ることや、完全自動化システム構築の是非、あまりに「柔軟」で個々の例外状況にも対応できる「かゆいところに手が届く」システムの構築に孕む問題点、書籍が多い開発ツールこそが優れているのか、といった、何となく現実のなかで「常識」とされてしまっていることへの反証を行ない、開発者もシステム設計を依頼するユーザーも、ともに学ぶべきことがまだまだ多いことを、ユーモラスに、しかし切実なものとして述べた。最近はExcelのデータ分析機能やファイルメーカーProのデータ参照機能が充実していることをデモを交えて示し、無駄なシステム設計を行なう前に、こうしたツールをもっと活用すべきだという言葉には説得力が感じられた。
また、システム設計においては、その目標を明確にすることや参加する面子の構成、進行管理の責任問題などが極めて重要であると説き、またユーザーが使うものを作るのだから、誰のためにどんな機能を設けるのかという観点から、見た目だけではなく、設計におけるデザインへの配慮も重要であると述べた。

〈Q&Aセッション〉
最後には、株式会社カシス取締役エンバンジェリストの高木利弘氏をモデレータに、講師陣全員が壇上にそろってのQ&Aセッションが設けられた。あらかじめ参加者から寄せられた質問に対して、各講師が回答するというスタイルで進められ、オラクルやMicrosoft Accessとの連係といった話題から、WebObjectsによる帳表出力アプリケーションの開発は可能なのか、といった非常に具体的な事例を元にした質疑応答が行なわれた。
このなかで、アップルの鷲滝氏から、WebObjects5のWindows版とMac OS X版では、同梱される開発環境において、バージョン管理など一部の機能がMac OS X版のほうが優れいてるというコメントが出たり、同じくアップルの野村氏から、WebObjectsにはEOFという優れた機能があり、決してJava2EEに対応していないからといってWebアプリケーションサーバーとして機能的に不足があるわけではないといったコメントが出たりした。また、井上氏は、ファイルメーカーProのインスタントWeb公開機能は便利だがセキュリティ面では問題が多いと指摘し、不特定多数を相手に公開するWebアプリケーションシステムの設計には、データベースの選択をはじめ十分な配慮が必要であると語るなど、より実際的なコメントもなされた。

午前11時ほどから始まって、午後7時に終わるという非常に長丁場のセミナーだったが、その内容は概ね充実していたと言えるだろう。アップルによるLinux環境での動作実証や井上氏の講演など、単に技術や機能の解説ではない、システムの運用や日頃の業務に関わる部分へのコミットが多く見られたことは、いわゆる製品主体のセミナーでは得られない貴重なものだったと言えるのではないだろうか。
アップル自身が、明確な目的意識を持ってWebObjectsやMac OS X Server環境の普及や理解の促進に望んでいることもより鮮明になり、今後の展開に期待を抱かせる内容だったとも言える。これからまだまだ伸びていくとされるWebアプリケーション市場において、どのような変化が起こっていくのか。その動向に注目していく必要があるだろう。
[森 恒三]

カテゴリ:


WebObjects 5とOpenBaseを使ってみる/3.OpenBaseでデータベースを定義する(1)

インストールをしたら、次はデータベースを定義する。OpenBase SQLでは、「データベース」という大きなオブジェクトがあり、その中に複数のテーブルなどのエンティティを定義するという形式である。もちろん、Oracleなどをはじめ一般的なデータベースはそうした形態を取っているのだが、Macの世界でいちばんお馴染みのファイルメーカーProは1ファイルが1データベースなので、そちらになれていると少し勘が狂うかも知れない。いずれにしても、OpenBaseは1つのデータベースに複数のテーブルを定義するという形態になっているのが基本である。
一般にデータベース関連のアプリケーションを作成する場合、データベースの構造(「スキーマ」と呼ばれる)をあらかじめきちんと検討しておく。つまり、どんなテーブルがあり、どんなカラム(「フィールド」と呼ばれることもあるが、一連の記事ではOpenBaseの用語に従ってカラムと呼ぶ)が必要で、どんなリレーションを取るかということをあらかじめきちんと定義しておくである。実はこの部分での設計の難しさはもちろんあるわけで、それだけで大きなトピックとなってしまうが、一連の原稿ではそこまでは触れないことにする。しかしながら、この種のデータベースアプリケーションの構築をこれからやろうとしている方は、データベース設計に関する書籍は必ず熟読されることをお勧めする。特にファイルメーカーProになれている人は、ある意味では「試行錯誤すること」が当たり前になっているかもしれない。もちろん、OpenBaseやWebObjectsでの開発で試行錯誤することは不可能ではないし、Webページの生成部分では試行錯誤はいくらでもできる。しかしながら、データベース設計においては可能な限りきちんとしたものを最初から構築し、設計内容をあまり試行錯誤していじるようなことはしない方がいい。そうした使い方にはあまり向いていない面もある。

OpenBaseで使うデータベースの定義は、OpenBaseManagerというアプリケーションを使って行うのが便利だろう。/Applications/OpenBaseフォルダに、OpenBaseManagerというアプリケーションがあるのでダブルクリックして起動する。

◇OpenBaseManagerを起動する
 

OpenBaseManagerの中心になるウインドウは次のような小さなものだ。設定を行えば、別のマシンで稼動しているOpenBaseに接続して、そちらのマシンで定義されたデータベースの管理もできるが、ここでは開発で使っているローカルのマシンにあるデータベースをまずは利用するので、ここでは「localhost」という項目があるのに注目してもらいたい。このウインドウは階層リストだが、最上位の階層は「マシン」である。つまり、localhostという使っているこのマシンでOpenBaseが稼動しているということがとりあえずこれで分かるということだ。

◇OpenBaseManagerのウインドウに見えるlocalhost
 

では、localhostの項目の左にある三角形をクリックして、下位の項目を表示してみよう。ここで、CompanyやWOMovieなどの新たに出てきた項目は、このマシンで定義されているデータベースである。データベースの名前が一覧されているのである。データベース名の左側にある丸い部分は、そのデータベースが動いているかどうかを示している。白丸は動いていないデータベースで、緑丸は動いていないデータベースである。なお、手動でデータベースを動かしたりとめたりするのは、項目を選択して右上にあるSTARTないしはSTOPのボタンをクリックすれば良い。いずれにしても、「データベースは1つ1つが動く、動かないという状態を取る」ということがポイントになる。

◇localhostにあるデータベースの一覧を表示した
 

まず、こうしたデータベースがどこにあるかを確認しておこう。Finderを使って/Library/OpenBase/Databasesフォルダを見てもらいたい。このフォルダにはフォルダがさらにあるのだが、各フォルダの名前は、OpenBaseManagerで見えているデータベースの名前と一致している。つまり、このフォルダにあるのがデータベースの実体である。さらに1つのデータベースフォルダの中身を見ておくと、いくつかのファイルがあるが、テーブルごとにファイルが別々といった雰囲気はないようだ。一方、blobsというフォルダがあり、BLOB(Binary Large Object Binary)つまり画像などの大きなバイナリデータはフォルダにいろいろ分割して保存するのだなと思うわけだ。いずれにしても、データベースの実体はここにある。移動やバックアップのポイントとして押さえておきたい。

次に、実行プロセスを見てみよう。ProcessViewerだと見えない情報があるので、ここではTerminalを起動して、ウインドウの横幅を広げて、「ps aux|grep OpenBase」とコマンドを入力する。プロセス一覧を表示し、そこからOpenBaseという文字列を含むデータだけを取り出すのである。その結果、OpenBase関連でもいくつものプロセスが起動されているのが分かる。特に、以下のリストでの5、6行目に注目してもらいたい。引数として、WOBug、WOMoviesを指定してOpenBaseというプロセスが稼動している。これは、前のOpenBaseManagerのリストにもあったように、稼動しているデータベースの名前に一致する。すなわち、データベース1つ1つについてプロセスを起動し、そのプロセスごとにデータベース処理をしているというのがOpenBaseの動作であることが分かるということだ。

◇OpenBase関連のプロセスを見てみると、データベースがそれぞれ個別のプロセスとなる
 

ではここで新しいデータベースを定義してみよう。OpenBaseManagerのウインドウで、右下にある「+」マークのアイコンがある。これがデータベースを新たに定義する機能を呼び出すボタンであるので、それをクリックする。

◇データベースを新たに作成するボタン
 

すると、次のようなダイアログボックスが表示される。まず、Database Nameはもちろん、識別可能なデータベース名をつける。ここでは空白などを入れないでアルファベットだけの名前にしておくのが無難だ。ここでは「Address」とキータイプした。Run on Hostは開発マシンにデータベースを作成するのでlocalhostのままでいい。Port Numberも特別な意図がないのなら-AUTOMATIC-のままでいいだろう。さらに4つのチェックボックスがあるが、最初のものは稀同時にこのデータベースを自動的に起動するかどうかを指定するものである。毎回起動するのも面倒なら、このチェックを入れておけばよい。暗号化や変更通知、レプリケーションキーの設定もあるが、これらはOpenBaseに精通してから考えればよいだろう。
そして、重要なのがInternal Encodingの設定だ。日本語の選択肢が3つ見えているが、ここではEUC JAPANESEを選択することにしよう。

◇作成するデータベースの名前やエンコードを選択する
 

ところで、EUCが使われる理由であるが、データベース処理では最終的にテキストのSQLステートメントになるということがある。SQLステートメントでは文字列をダブクォーテーションあるいはシングルクォーテーションで括る。ところがJISコードの日本語文字列だと、2バイトコードの後半の文字で、ASCIIコードのダブルクォーテーションなどとダブル文字が出てきてしまう。SHIFT-JISだと、2バイトコードの後半で、バックスラッシュや大カッコのキャラクタと同じコードのものがある。従って、たとえばJISコードを使ったとすると、あたかも文字列の中に文字列を囲うためのダブルクォートがあるようにデータベースエンジンは思ってしまって間違えたSQLステートメントだと思うのである。つまり、日本人として2バイトコードで解釈してほしいと思っても、データベースエンジン側が1バイトずつ解釈してしまうということで、SHIFT-JISもJISも文字によってはトラブルが出るのが明白だということだ。もっとも、SQLプロセッサが完全に2バイトコード対応であればそうした心配も無用なのであるが、オープンソースの世界も含めてそうした傾向にはないのは周知の事実だ(OpenBaseManagerが英語であるところからも容易に想像できる〜チップヒントは日本語だけど…)。一方、EUCコードであれば、2バイトコードの前半も後半も80H以上のコードなので、ASCIIキャラクタとはバッティングしないのである。だから、そうしたコードがSQLステートメントに割り込む限りは、1バイト的に解釈しても問題は出ないということだ。理論的にはUTF-8も同じように日本語が英語の文字列のキャラクタにかぶることはない。もっとも、このとき、80H以上のコードはそのままデータベースから取り出したり書き込んだりができないといけない。たとえば、8ビット目などをマスクしてしまうような動作とかがデータベースエンジンで行われていればお手上げなのである。ちなみに、OpenBaseでは「日本語対応」をうたっているだけにこうした不手際はないだろうが、SHIFT-JISやJISでの稼動実績がないので、とりあえず今回はもっとも確実なEUCを選んでデータベースを作ることにしよう。
(続く)

関連リンク:OpenBase International
カテゴリ:データベース, WebObjects


WebObjects 5とOpenBaseを使ってみる/3.OpenBaseでデータベースを定義する(2)

こうしてデータベースを作成すると、OpenBaseManagerのウインドウに項目として加わる。作成した直後は稼動していないので、ここでは作成したデータベースのAddressをクリックして選択し、右側のSTARTボタンをクリックしてデータベースを稼動させておこう。

◇作成したデータベースを稼動させる
 

続いて、作成したデータベースに対して、テーブルを定義することにする。こうしたスキーマの定義は稼動しているデータベースに対してしかできない。ここでは、稼動させたAddressデータベースを選択し、右側の上から5つ目の「スキーマ定義」のアイコンをクリックする。

◇スキーマ定義のアイコンをクリックする
 

すると、次のようなウインドウが表示される。作成したばかりのデータベースには、ユーザから見えるものは何一つ存在しない状態になっている。

◇スキーマ定義のウインドウ
 

ここで、ウインドウのツールバーにあるTablesと書かれた部分の「+」マークのアイコンをクリックする。これが、テーブルを追加するアイコンだ。すると、次のようなダイアログボックスが出てくるので、ここではとりあえず新しいテーブル名として「PersonalAddress」という名前を設定しておいた。

◇テーブルを新たに作成する
 

とりあえずテーブルを作成すると、次のように、キーフィールドとなる_rowidフィールドなどが作成される。とりあえず削除する必要もないが、_rowidフィールドは自動的に連番が入力されることは知っておく必要があるだろう。

◇新しいテーブルを作成した直後
 

テーブルに関する作業はまだ続けるが、先に「必ず保存作業が必要」ということを説明しておこう。保存をしないでウインドウを閉じると、変更結果はどこにも反映されないままになってしまう。変更すると、左上のSaveボタンをクリックして、必ず変更結果を保存しなければいけないのである。

◇Saveをクリックして必ず変更結果を保存しておく
 

続いてカラムを追加しよう。すでに分かるように、ウインドウ上部のツールバーにあるColumnsの上の「+」ボタンをクリックすることで、リストにカラムが追加される。最初はnew_Fieldという名前になっているが、もちろん、違う名前にすればよい。

◇カラムを新たに追加した
 

そして必要なカラムを確保するわけだが、ここでの細かい操作は割愛する。「+」ボタンでカラムが増えるが、名前や長さなどはその部分をダブルクリックすることで編集することができるので、後からでも設定などは変更できる。もちろん「−」ボタンで選択しているカラムを削除することができる。とりあえず、これだけのカラムを用意した。いずれも文字列(char)型であるが、長さは適当に確保した。

◇カラムを追加した
 

なお、カラムのタイプは次のように、タイプ名の部分をクリックすることで表示されるポップアップメニューで選択ができる。文字列は通常はcharだが、4096バイトまでの制約がある。ただし、WebObjectsとの利用では、255バイト以上のときに文字列がそのまま格納されないという問題があるので注意が必要だ。数値や日付けなどのデータをカラムに記録するのなら、それぞれ適切なタイプを選択しておく必要がある。

◇タイプはポップアップメニューから選択する
 

さらにはインデックスを作成するかどうかや、レコードを新規に作成したときのデフォルトの値、Nullを許可するかどうかといったテーブルのカラムに対する基本的な設定もできるようになっている。

◇インデックスの作成もポップアップメニューから選択できる
 

そして、もちろん、Saveボタンをクリックして保存をしておく。これを忘れてはいけない。

続いて、ユーザの登録などを本来は行う。OpenBaseは既定の状態ではユーザ名やパスワードを入れなくてもアクセスができるようになっているのであるが、たとえ開発だからということであっても、データベースのユーザ設定はアクティブな状態で作業をすることをお勧めする。もちろん、自信のある方はかまわないのだが、ユーザ名などを指定しないでアクセスできる状態で開発を行い、いざ稼動となって認証を必要にしてしまったときにデータベースにアクセスが思うようにできないということでは大いに困ってしまう。最初からユーザというものを意識しながら開発を行うのがとにかく後から困ることがないと思うので、ユーザの設定を行おう。
とは言いながらも、今回は非常に簡単な設定で済まさせてもらう。OpenBaseには最初からAdminというユーザが設定され、そのユーザにはパスワードが設定されていない。とりあえず、ここではAdminにパスワードを設定して、とりあえずはこのユーザ名でアクセスを行うことにある。
OpenBaseManagerの上から3つ目の「ユーザマネージャー」のアイコンをクリックすると、次のようなウインドウが表示される。ここで、グループやユーザを新たに追加したりなどができるが、ここではすでにあるadminグループのadminユーザを選択する。そして、set passwordボタンをクリックする。

◇adminユーザをユーザマネージャーで呼び出す
 

次のような古いパスワードを問い合わせるダイアログボックスが出てくるので、最初はパスワードは設定されていないから、ここでは空欄のままOKボタンをクリックする。続いて新しいパスワードを問い合わせる同じようなダイアログボックスが2回出てくるので、それぞれ新しいパスワードをキータイプする。もちろん、ここでキータイプしたパスワードは忘れないように、メモするなどしておこう。パスワードが変更されたこともダイアログボックスで知らせる。

◇パスワードを問い合わせるダイアログボックス
 

パスワードが設定されると、パスワード欄に・・・・が入る。Doneボタンをクリックすると、このウインドウは閉じられる。

◇パスワードを設定した状態
 

こうしてadminにパスワードをかけると、たとえばスキーマの定義を変更するような場合でも、最初の1回はパスワード入力が必要になる。不便と言えば不便なのだが、ユーザ管理を避けないでデータベースを開発していく方が、後々のことを考えると望ましいと思われる。

以上、OpenBase SQL側を操作して、1つのテーブルを含むデータベースを定義し、adminユーザにパスワードをかけた。もちろん、複雑なアプリケーションだともっとたくさんのテーブルを定義、さらにはリレーションの定義なども行うことになるだろうが、操作の上ではこれまでに説明してきたことの延長である。次回はいよいよ、WebObjectsの作業に入ろう。

カテゴリ:


TIL-J》アップデートしたAppleWorksの起動方法

AppleWorks 6.2のアップデータを使うことで、Mac OS X向けにはAppleWorks 6.2、Mac OS向けにはAppleWorks 6.1.2が起動されることが、Tech Info Library-Jで掲載されている。Mac OSで起動する時には、「AppleWorks 6.app」のアイコンをダブルクリックすればよい。Mac OS Xの場合は「AppleWorks 6」というアイコンをダブルクリックする。いずれも同じパッケージであるが、Mac OS Xでは.appという拡張子は表示されない。

関連リンク:AppleWorks 6 Update: Mac OS 9.1 と Mac OS X 10.0 でのアプリケーションの起動
カテゴリ:Tech Info Library-J, 文書作成アプリケーション


REALbasicでXMLを利用するためのプラグインがアップデートしてマルチタスク対応

REALbasicでXMLのパースや生成を行うプラグイン「XML Toolkit 2.0」がリリースされた。REALbasicが稼動するすべてのプラットフォームをサポートする。Amar Sagoo氏によって配付されているが、一部のコンポーネントはコントリビュートされたものだ。フリーで利用できるが、使用したソフトウエアのAboutボックスでのクレジット記載を要求している。Ver.2.0では、リエントラントとなり、複数のスレッドから同時利用が可能となった。また、HTMLのパースついても限定的ながら可能となっている。

関連リンク:Amar Sagoo
カテゴリ:XML, REALbasic


iDVDをVer.1.0.1にアップデートするアップデータが公開

DVDのオーサリングソフトのiDVDがVer.1.0.1にアップデートされた。iDVDはDVD-Rドライブが搭載されたPower Mac G4にのみバンドルされたアプリケーションであり、ソフトウエアだけの販売はされていない。該当する本体を所有している人だけがアップデート対象となる。変更点についての詳しい記載はない。なお、iDVDは、次期バージョン「iDVD2」が近々リリースされることになっているが、これはMac OS X 10.1以降で稼動する。Ver.1.0.1はMac OS 9向けのメンテナンスリリースと考えられる。

関連リンク:iDVD 1.0.1 Update
カテゴリ:メディア制作, 各種製品


TIL》アップルメニューにある「最近使った…」の項目を表示しないようにする方法

Tech Info Libraryに、Mac OS 8/9でのアップルメニューにある「最近使った…」の階層メニューを表示しないようにする方法が掲載された。「アップルメニューオプション」コントロールパネルにある「最近使った項目の記憶数」のチェックボックスをはずせば、アップルメニューの階層メニューは表示されなくなる。

関連リンク:Mac OS 9: How to Turn Off Individual "Recently Used Items" Submenus
カテゴリ:Knowledge Base(旧TIL), Mac OS 9