アットマーク・アイティ @IT@IT情報マネジメント@IT自分戦略研究所QA@ITイベントカレンダー  
 
 @IT > EclipseでAmazon Webサービスを使うショッピングサイトを構築するには?
 
@IT Special

 

PR

EclipseでAmazon Webサービスを使う
ショッピングサイトを構築するには?


 〜 連載 「開発マネージャーのMyEclipse指南塾」 第1回 〜

この連載では、EclipseベースのJava IDE「MyEclipse」を使ってECサイトアプリケーションを作成していきます。インターネット食材通販の「オイシックス」のECサイト開発マネージャーの山下寛人氏が、開発のノウハウとMyEclipseの魅力を語ります。
  連載「開発マネージャーのMyEclipse指南塾」
について

 EclipseプラグインやEclipseベースのIDE(統合開発環境)は数多くありますが、その中でもMyEclipseは、多岐にわたる機能を備え、それぞれの機能の完成度が高く、かつシームレスに連携できるようになっています。MyEclipseは、Java EE開発の敷居を下げてくれます。いわば、Java EE開発環境をワンストップで提供しているツールといってよいでしょう。

 この連載では、優れた開発環境であるMyEclipseを使い、Java EEアプリケーションを作成します。MyEclipseは、Webサービス、JSP、Ajax、JSF、Hibernateといった技術を容易に利用できる機能を提供しています。これらの機能を使いながらアプリケーションを作る中で、MyEclipseのメリットを理解いただけると思います。

 本連載で作成するアプリケーションは、簡単なECサイトです。インターネットで食材宅配サービスを提供している「オイシックス(oisix)」の商品を販売するサイトを作っていきます。

「開発マネージャーのMyEclipse指南塾」 連載予定
第 1回:「EclipseでAmazon Webサービスを使うショッピングサイトを構築するには?」

第 2回「Amazonから商品情報を取得するプログラムを作ろう」(

第 3回
「MyEclipse ビジュアルJSPデザイナーで商品ページを作ろう」

第 4回
「ショッピングカートを作ろう」(

第 5回
「Ajaxでリアルタイム検索結果表示のインクリメンタルサーチを作ろう」

第 6回「MyEclipse JavaScriptエディタでJavaScriptを開発しよう」(

第 7回「バグを見つけろ! MyEclipse Ajax WebブラウザでAjaxをデバッグ」

第 8回「バグを見つけろ!(2)−MyEclipseでJavaScriptのデバッグ」(

第 9回JSFで購入フォームを作ろう―画面遷移をビジュアルに開発

第10回JSFで購入フォームを作ろう―JSFをビジュアルに開発(

第11回JSFで購入フォームを作ろう―完成

第12回MyEclipse Reportで売上グラフを作ろう(

の回は日本語MyEclipseポータルサイトにて公開

  なぜMyEclipseを使うのか?
今回の主な内容
なぜMyEclipseを使うのか
MyEclipseの特徴的な機能
Amazon Webサービスを利用した
 ECサイトの作成

MyEclipseの環境を構築
プロジェクト・デプロイメントの設定
コラム「MyEclipse Tomcat以外の
 サーバを使用する場合」

 アプリケーションの作成に入る前に、まずMyEclipseについてもう少し詳しく紹介しましょう。MyEclipseのベースとなるEclipseは、いわずと知れたオープンソースのIDEです。IDEとしての完成度はEclipse単体でも非常に高く、機能拡張として多くのプラグインが公開され、好きな機能を組み合わせて拡張していくことができます。

 しかし、無料で公開されているプラグインはなかなか納得できるほどの完成度のものがないのが実情です。また、プラグインを多数使えば使うほどインストールに手間が掛かり、組み合わせにあたってもプラグイン同士の相性や細かなバージョンの違いで困ることもよくあります。

 筆者の会社でもEclipseを利用していますが、開発環境の構築にかなり手間が掛かっています。JSFやEJBのプラグインの機能もあまり充実していませんが、無償なので妥協して使っています。プラグインが同梱されたり、Java EE開発を簡単にするWTP(Web Tools Platform)が出たりしていますが、まだまだ物足りないのが実際のところです。

拡張機能がワンセットのEclipse=「MyEclipse」

 Eclipseには上述のようなデメリットがありますが、MyEclipseは、あらゆるEclipseの拡張機能がワンセットになっていて、カバーしている機能の範囲が広い特徴を持ちます。また、インストールの手間が少なくて済むうえに、プラグインの相性に悩まされることもありません。

MyEclipseの特徴的な機能
・UMLサポート(ユースケースやクラス図からのJavaコード生成)
・HTML/JSP、Swingのビジュアルな画面設計
・XML/CSSエディタ
・Struts/JSF/Springを使った開発のサポート
・Webサービス作成のサポート
・EJB 3.0のサポート(ウィザードによるBean生成など)
・Ajax開発のサポート
・データベース連携
  Hibernateを使った開発のサポート
  JPAのサポート
  EJB 3.0リバースエンジニアリングに対応
  各種データベースのコネクタ(Oracle、MySQL、MS-SQL Server、Sybaseなど)

 MyEclipseは有償製品です。しかし、非常に安価(スタンダード版:年間税込3990円、プロフェッショナル版:年間税込6825円)に提供されていますので、導入しやすいでしょう。個々の拡張機能も無償のプラグインとは比較にならないほど完成度が高く、使ってみれば、そのコストパフォーマンスの良さが理解いただけると思います。

 MyEclipseはもともと米国Genuitec社で開発されていますが、国内では日立製作所がローカライズして提供しています。メニューの日本語化やヘルプの日本語化、ポータルサイト「日本語MyEclipseポータルサイト」で、日本語による情報提供が行われており、英語に自信のない方でも使えます。また、日立製作所のアプリケーションサーバ「Cosminexus(コズミネクサス)」との連携もシームレスにできるようになっています。

  Amazon Webサービスを利用したECサイトの作成

 それでは、いよいよ今回開発するECサイトのシステムの概要を紹介します。冒頭で説明したように、オイシックスの商品を販売するECサイトを作ります。

 ただ単にECサイトを作るだけでは面白くありませんので、Amazon Webサービスを利用して商品ページを作ることにします。オイシックスは、ほとんどの商品をAmazonに出品していますので、Amazon Webサービスからオイシックスの商品情報を取得できます。Webサービスを利用するには、WSDL(Web Services Description Language)からWebサービスクライアントを生成する必要がありますが、MyEclipseだとウィザードで生成できるのでとても簡単です。

 さらにMyEclipseでは、Ajaxの開発支援機能も充実しています。これを利用して商品検索のライブサーチを作ります。キーボードの入力に合わせて、リアルタイムに検索結果を表示していくものです。ここでも検索機能や商品情報はAmazon Webサービスを利用します。

 最後に、ECサイトには欠かせない購入フォームです。ここではJSFで購入フォームを開発します。MyEclipseでは、JSFのビジュアル開発も可能です。購入データのデータベースへの格納は、Hibernateを利用します。MyEclipseのHibernate開発支援機能も紹介します。加えて、ショッピングカートもごく簡単なものを作ります。

 本連載では、以下の環境を前提として説明していきます。

表 本連載で使う環境
  製品名・バージョン 備考
MyEclipse
MyEclipse バージョン6 30日間試用版
アプリケーションサーバ MyEclipse Tomcat MyEclipseに同梱
データベース Derby MyEclipseに同梱
OS Windows XP SP2  
Eclipseの日本語化プラグイン Pleiades Eclipse 3.3に対応したもの(バージョン1.2.0以上)

 さて、最初の目標、商品ページの出来上がりのスクリーンショットを以下に示します。

画面1 作成する商品ページ
画面1 作成する商品ページ(画像をクリックすると拡大します)

 第1回では、ECサイト作成に入る前に、MyEclipseをインストールして開発環境を用意し、動作を確認するところまでを行います。

  MyEclipseの環境を構築

 MyEclipseのインストールは非常に簡単です。最も簡単な方法としては、ネットワークインストールという方法があります。手順は以下のとおりです。

  1. JDKをインストールします
  2. 日本語MyEclipseポータルサイト」ページ内の、「無料体験版ダウンロード」のボタンをクリックします
  3. 後は画面の指示に従って進んでいき、ネットワークインストーラのプログラムをダウンロードします。このプログラム自体は非常に小さいプログラムで、すぐにダウンロードが終了します
  4. ダウンロードしたプログラムを実行すると、EclipseやMyEclipseなど必要なファイルを次々にダウンロードしていきます
  5. 指定したインストール先フォルダにインストールされます。最後にインストールが完了した旨と、初回は「-clean」オプションを付けて起動するようメッセージが表示されます

 続いて、Pleiades(プレアデス)をインストールします。

  1. Pleiadesのサイトから「ダウンロード」「Pleiades」「安定版」と書いてあるところからPleiadesをダウンロードします。URLは以下になります
    http://mergedoc.sourceforge.jp/
  2. ダウンロードしたファイルを解凍します
  3. 解凍された「features」「plugins」フォルダを、MyEclipseインストールディレクトリ以下の「eclipse」ディレクトリの中にコピー&ペーストします。上書きコピーになります
  4. MyEclipseインストールディレクトリの以下の「eclipse」ディレクトリの中にある「eclipse.ini」をエディタで開きます
  5. 末尾に以下の行を追加します
    -javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar

 なお、Pleiadesのバージョンは執筆時点(2008年1月現在)で1.2.0で、将来変更になる可能性があります。インストール方法についても上記から変更になる可能性があるので、解凍したファイル中のreadme.txtをご確認ください。

 以上の作業でインストールが完了します。コマンドラインで「eclipse.exe -clean」と入力してMyEclipseを起動します。

MyEclipseの起動とプロジェクトの作成

 2回目以降にMyEclipseを起動する場合は、eclipse.exeをダブルクリックするなどして実行します。ワークスペースの選択ウィンドウが出るので、[OK]をクリックします。最初は「ようこそ」画面になります。

画面2 「ようこそ」画面
画面2 「ようこそ」画面

 一番右の矢印、[ワークベンチ]をクリックします。[ワークベンチ]の画面に切り替わります。

 [MyEclipse Java エンタープライズ]の画面になります。この画面が今後最も多く使うことになる基本の画面です。

画面3 [MyEclipse Java エンタープライズ開発]パースペクティブ
画面3 [MyEclipse Java エンタープライズ]パースペクティブ(画像をクリックすると拡大します)

 あるいは、メニューから[ウィンドウ]→[パースペクティブを開く]→[その他]を選択し、[パースペクティブを開く]ダイアログから「MyEclipse Java エンタープライズ(デフォルト)」を選択し[OK]ボタンをクリックして、[MyEclipse Java エンタープライズ]パースペクティブを開くこともできます。

画面4 パースペクティブの選択画面
画面4 パースペクティブの選択画面

 さて、それでは今回開発するアプリケーションのプロジェクトを作成しましょう。

続きは日本語MyEclipseポータルサイトでもご覧いただけます
第1回の残りの主な内容

  新規プロジェクト作成
・プロジェクト・デプロイメントの設定
  Tomcatの起動
  Tomcat稼働の確認 ― JSPの表示
・コラム「MyEclipse Tomcat以外のサーバを使用する場合」

第2回「Amazonから商品情報を取得するプログラムを作ろう」
の主な内容

・Amazon Webサービスとは
・Amazon Webサービスを利用するための準備
・Webサービスクライアントのテスト実行
・JSPでのテスト表示


 メニューから、[ファイル]→[新規]→[プロジェクト]を選択します。[新規プロジェクト]ダイアログが開きます。

画面5 [新規プロジェクト]ダイアログ(1)
画面5 [新規プロジェクト]ダイアログ(1)

 以下の画面6のように「MyEclipse」のツリーを開き、「Java エンタープライズ・プロジェクト」から[Webプロジェクト]を選択します。

画面6 [新規プロジェクト]ダイアログ(2)
画面6 [新規プロジェクト]ダイアログ(2)

 [次へ]をクリックすると、[新規Webプロジェクト]ウィザードが起動します。プロジェクト名はお好みで命名して構いません。ここでは「myeclipse-sample」としておきます。[J2EE仕様レベル]には「Java EE 5.0」を選択し、[終了]をクリックします。

画面7 [新規Webプロジェクト]ウィザード
画面7 [新規Webプロジェクト]ウィザード

 これでプロジェクトができました。左上の「パッケージ・エクスプローラー」に、「myeclipse-sample」という名前のプロジェクトができたのが分かると思います。プロジェクト名の左のプラス記号(+)をクリックして開いてみましょう。

 「src」はJavaソースを格納するフォルダです。その下にライブラリーが2つあります。こちらは普段操作することはありません。その下に「WebRoot」フォルダがあります。これを開いてみると、「META-INF」「WEB-INF」「index.jsp」があります。ここのフォルダ構成はJava EEのwarのフォルダ構成と同じになっています。JSPやJavaScriptのファイルを配置します。

画面8 [パッケージ・エクスプローラ]
画面8 [パッケージ・エクスプローラ]

  プロジェクト・デプロイメントの設定

 次に、このプロジェクトが自動的にアプリケーションサーバにデプロイされるように設定しましょう。ここでは、MyEclipseに付属のTomcatにデプロイします。なお、MyEclipseでは複数のアプリケーションサーバを管理できます。別途インストールしたアプリケーションサーバも登録しておけば同様の手順で自動的にデプロイする設定ができます。

 メニューの下のアイコンデプロイのアイコン(ポイントすると「MyEclipse J2EEプロジェクトをサーバーにデプロイ」と表示されるアイコン)をクリックします。[プロジェクト・デプロイメント]ダイアログが開きます。

画面9 [プロジェクト・デプロイメント]ダイアログ
画面9 [プロジェクト・デプロイメント]ダイアログ

 [追加]をクリックします。[サーバー]のプルダウンメニューから「MyEclipse Tomcat」を選択します。デプロイ形式は、「展開ディレクトリー形式」と「アーカイブ形式」が選択できます。開発中は「展開ディレクトリー形式」の方が便利なので、そのまま[展開ディレクトリー形式]を選択します。[終了]をクリックします。[プロジェクト・デプロイメント]ダイアログに戻るので、[OK]をクリックします。

 ソースコードの変更はリアルタイムにデプロイ先に反映されます。JSPやJavaソースを変更しても、いちいちデプロイ操作をする必要はありません。

Tomcatの起動

 次に、Tomcatを起動しましょう。メニュー下のアイコンサーバーのアイコンの右の、下向き矢印をクリックします。プルダウンメニューが出るので、「MyEclipse Tomcat」をクリックします。右の[開始]をクリックします。

画面10 Tomcat起動メニュー
画面10 Tomcat起動メニュー

 画面下のコンソールに、Tomcat起動のメッセージが出てきます。「Server startup in xxx ms」と表示されれば起動完了です。

Tomcat稼働の確認 ― JSPの表示

 デフォルトで配置されている、index.jspを表示してみましょう。メニュー下のアイコンMyEclipse Webブラウザのアイコンをクリックします。URLの欄に、以下のように入力します。

http://localhost:8080/myeclipse-sample/

 デフォルトで用意されているindex.jspが表示されれば、成功です。

画面11 index.jspの表示
画面11 index.jspの表示

 なお、上の画面11のようにindex.jspにアクセスする場合は、プロジェクト「myeclipse-sample」を右クリックし、[実行]→[MyEclipse サーバー・アプリケーション]をクリックすると、自動的にTomcatを起動し、Webブラウザを開いてページを開いてくれます。細かいですが、こういったちょっとした手間まで省いてくれるのがMyEclipseのよくできているところです。

画面12 [MyEclipse サーバー・アプリケーション]の実行
画面12 [MyEclipse サーバー・アプリケーション]の実行

 次回は、AmazonのWebサービスのクライアントを作ります。

コラム「MyEclipse Tomcat以外のサーバを使用する場合」
MyEclipseには、あらかじめTomcatが組み込まれていてインストール/設定が不要となっていますが、ほかのアプリケーションサーバを使いたい場合もよくあることでしょう。MyEclipseなら多様なアプリケーションサーバをサポートしていて、簡単な設定で連携させることができます。対応しているアプリケーションサーバは下記のとおりです。それぞれのサーババージョンの違いにも対応しています。
  • Cosminexus 7
  • Geronimo
  • GlassFish
  • JBoss
  • Jetty
  • JOnAS
  • JRun
  • Oracle
  • Orion
  • Resin
  • Sun Java System Application Server
  • Tomcat
  • WebLogic
  • WebSphere
まず、使いたいアプリケーションサーバをインストールしてください。次に、MyEclipseでサーバのアイコンサーバーのアイコンの右の三角をクリックし、プルダウンメニューの「サーバーの構成」をクリックします。

画面13 サーバの構成
画面13 サーバの構成

左のツリー状のメニューからアプリケーションサーバを選択します。右側にインストールした場所や、そのほかのオプションを設定します。[使用する][使用しない]のラジオボタンで[使用する]を選択します。

こうすると、デプロイメントの設定の選択肢で選べるようになり、中央下の[サーバー]ビューの中に出てきて起動・停止などができるようになります。

続き(第2回)は日本語MyEclipseポータルサイトで
第2回「Amazonから商品情報を取得するプログラムを作ろう」
の主な内容

・Amazon Webサービスとは
・Amazon Webサービスを利用するための準備
・Webサービスクライアントのテスト実行
・JSPでのテスト表示



※本記事は、日立製作所の『日本語MyEclipseポータルサイト』に掲載された記事を許諾を得て、再構成したものです。
提供:株式会社 日立製作所
企画:アイティメディア 営業局
制作:@IT編集部
掲載内容有効期限:2008年3月31日
 
関連リンク
日本語MyEclipseポータルサイト
日本語MyEclipse 無料体験版ダウンロード(会員登録不要)
Cosminexus(コズミネクサス)
日立製作所

@IT関連記事
連載「MyEclipseでAjax+Javaをやさしく開発」(@IT Java Solution)
便利なプラグインの集大成MyEclipse(@IT Java Solution)
Javaの最新動向を見極める デブサミ2007「MyEclipseならAjaxもええじゃないか♪」(@IT Java Solution)
日立、SOA基盤「Cosminexus」の新版発表〜システム開発期間を短縮〜(@IT NewsInsight)
SOA対応した日立「Cosminexus」、開発効率3倍の根拠は(@IT NewsInsight)
【プロダクトレビュー】ミッションクリティカル機能を強化Cosminexus AS Version6(@IT Java Solution)


 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ