タイトル倉橋浩一のWebObjects Practice》WebObjects 4.5で作った掲示板をVer.5に対応する(2)カテゴリーWebObjects, 倉橋浩一のWebObjects Practice
作成日2001/12/28 16:24:15作成者新居雅行
――――コンポーネントを移植
WO 4.5で作成したコンポーネントは、WO 5.0のWOBuilderで開くことができます。ので、4.5と5.0のコンポーネントを開いておいて、4.5版をselect all->copyし、5.0版にpasteします。なお、OneMessageBoxだけはcustom WebObjectとして使用しますので、先にPartial Documentに変換しておきます。

WOBuilder上でコンポーネントを見てみると、WODisplayGroupのインスタンスにチェックマークでなくハイフンが付いています。これは、「インプリメンテーション・クラス上では定義されているものの、初期化に必要な条件が定義されていない」という状態を現しています。このままBuild&Runしても、WODisplayGroupが初期化されないので、java.lang.NullPointerExceptionが生じてしまいます。ので、各コンポーネントを開いて、各WODisplayGroupにEntity名などを設定してやります。なお、OneMessageBox.woのWODisplayGroupだけは、初期化する必要はありません。これはAPI渡しで設定されるからです。また、MessageListPage.woのdgMessageは、detail display groupですので、お間違えなきよう(Entity:Message, has detail data source, Master Entity:Board, Detail Key:arrayMessage, Entity per page:10, updatedで昇順にソート)。

OneMessageBox.woのAPI Editorを開いて、aMessageとdgMessageを追加することもお忘れなく。なお、追加するよりも、"Add Keys from Class"ボタンで全部追加してしまって、aMessageとdgMessageを残して削除した方が手間はかかりますが、タイプミスなどを回避できていいかもしれません。

他に、空白のセルをのっぺらぼうにしないために小さなビットマップを使っていますが、これも4.5のプロジェクトから移してくる必要があります。これは、Finderから"4by4.gif"をProjectBuilderのWebServer Resourcesに直接ドラッグ&ドロップします。ファイル追加ダイアログで、「ディストネーショングループのフォルダに項目をコピーする(必要な場合)」をチェックし、参照スタイルは「プロジェクトを基準」、そしてタイトルで「Web Server」を選択します。.Javaや.WOなどはApplication Serverに属しますが、ここで使うビットマップはWeb Serverのドキュメントディレクトリ下に配置しますので、「Web Server」を選びます。

なお、このような操作をしていると、Build時に"Duplication Class"というようなエラーが出ることがあります。こういう場合には、一度Clean Buildしてからもう一度、Buildしてみます。

また、WOBuilder上でEntityを選択できない、というような現象に遭遇することがありますが、この場合はWOBuilderを一度終了してみてください。起動しなおすと直ります。

これで一応作業は終わりです。あとはBuildしてテスト&デバッグとなります。プロジェクトは以下のアドレスからダウンロードしてください。

◇SimpleBoard2.tar
 http://mdonline.jp/figs/01/0058/simpleboard2.tar

――――その他
ここで公開するサンプルはMacOS X 10上のProjectBuilder 1.1に対応したもので、そのままではWindows版のProjectBuilderで開くことはできません。ProjectBuilderに互換性がないからです。4.5までは、ほとんどそのままでMac<->Win間でファイルを共用できたので、非常に残念です。

ただ、Mac上で作られたプロジェクトをWin上に移行するのは、それほど難しくありません。以下の手順で試してみてください。

1.Mac版のプロジェクト一式をWin上にコピーし、解凍しておく。以下の作業はすべてWin上。
2.ProjectBuilderを起動し、同名のプロジェクト(SimpleBoard2)を新規作成する
3.Classes、WebComponents、Resourcesに登録されているファイルを削除する。その際、"プロジェクトへの登録だけでなくファイルそのものも削除する"、を選択する。
4.Classesを選択する。すると、ProjectBuilderウインドウの右上にスーツケースのようなアイコンがあらわれる。このアイコンに、Mac版プロジェクトの各Javaソースをドラッグ&ドロップする。
5.同様にして、WebComponentsに各woディレクトリ、Resourcesに各.apiとeomodeldファイルを登録する。
6.これらの他に、WebServer Resourcesなどがあったら、それらもドラッグ&ドロップで登録しておく。

通常は、これで移植できます。
――――宣伝:-)
いえね、あちこちで宣伝しまくっているつもりだったんですが、こないだ自分ところの会員の方に、「そんなのやるんですか?」と言われてしまいましてね。MDOnlineでも何度か取り上げていただいたのですが、もーしかすると、まだ御存じでない方もいらっしゃるかもしれない、ということで宣伝させてください。

2002年1月と2月、アップルコンピュータ株式会社の御協力のもと、WebObjectsセミナー&トレーニングを実施します。今回は、中級上級者向けの「WebObjects実戦セミナー」(東京・中央区勝どき)と、初心者を対象とした「WebObjectsトレーニング in 京都」(京都駅前)を開催します。詳細につきましてはこちらのURLをご参照ください。

◇テクニカル・ピット:セミナー&トレーニングのページ
 http://www.techpit.co.jp/cgi-bin/WebObjects/SemiApp.woa/

書籍や一般のセミナーが「WebObjectsを学ぶ」という構成になっていますが、このセミナー&トレーニングは「WebObjectsで問題解決する方法を修得する」ことを目的としており、より実戦的な内容となっています。

「実戦セミナー」は、東京/勝どきにて開催します。3日間のセミナーでは、開発効率向上をテーマとした講義と演習の他に、参加者の皆さんから寄せられたテーマに基づいたコンサルテーションを行います。講師は、アップルコンピュータ株式会社のセミナーでもお馴染みの株式会社プラネットコンピュータの田畑英和氏と、テクニカル・ピット倉橋が担当します。参加費用はお一人12万円+消費税(MDOnline会員の方は5%引き)です。

京都にて開催される「トレーニング in 京都」では、WebObjectsの基本的な操作方法から、リレーショナルを含むデータベース処理までを修得し、最終的に簡単なeコマースサイトを作ります。平日3日間のコースと、週末2日間のコースがあります(週末は朝早くから夜までですので、結構ハードだと思います)。参加費用はお一人15万円+消費税(MDOnline会員の方は5%引き)です。一応、初心者向けとなっていますが、ゴールは"eコマースサイト"ですから、「WODisplayGroupで入力検索はおしまい」、というような安易な内容ではありません。講習のベーステキストには、定評あるWebObjects自習用教材Homework ver 1.5とSimpleOrderを使用します。この二つの価格が合計8万円ですから、実質的なセミナー参加費用は約6万円ということになります。また、前述の通り、私どものセミナー&トレーニングは、コンサルテーションを重視しています。アップルコンピュータのテクニカルサポートは1件につき$200ですが、セミナーで3回質問すれ?ば?、十分元が取れてしまいます。そう考えると、高くないでしょう?^^;。

なお、技術研修などで複数名での参加を希望される方には、グループ割引もありますので、お問い合わせください。

各セミナーとも募集人数は15人、満席となり次第締め切りとなります。参加ご希望の方は、上記Webにて詳細をご確認の上、お申し込みください。参加費用は、銀行振込、セブンイレブン支払、佐川急便代引によるクレジットカード決済(一括/分割)にて決済することができます(手数料無料)。

ご不明の点などについては、テクニカル・ピット(sales@techpit.co.jp)までお問い合わせください。
(この項、以上)
[倉橋浩一/テクニカル・ピット]
関連リンクWebObjectsのページ