[ 得盛 | ソフトウェア開発 | ソフトウェアダウンロード | 事例 ]  [ トップ | 一覧 | 単語検索 | 最終更新 ]

メニュー

 トップ
 得盛
 得盛EDI
 ソフトウェア開発
 事例
 ソフトウェアダウンロード
 健康茶.com
 会社概要

最新の20件
2006-09-072006-09-012006-08-242006-08-23

グループ会社

株式会社ビーンズパートナーズ http://www.mamenoki.com/ 人材派遣業,他様々な総合人材プロデュースを進めています


Eclipseパーフェクトマニュアル Vol.2 補足情報

始めに

このページは、2003年9月に刊行された「Eclipseパーフェクトマニュアル Vol.2」の「巻頭企画 使って分かったEclipseのマルとバツ教えます」のサンプルプログラムのダウンロード及び補足情報についての記述したページです。

サンプルプログラムのダウンロード

記事で使ったプログラムのダウンロード(swtclient.zip/zip圧縮)
サンプルプログラムで使うデータのダウンロード(data.zip/zip圧縮)

インストール環境(サーバー側)

Linuxを利用しました。ディストリビューションは、Vine Linux 2.6r1 です。

ダウンロードしたもの

JVM環境/J2SE 1.4.2 SDK
Servletコンテナ/Jetty-4.2.12
SOAPエンジン/Axis 1.1
データベース/PostgreSQL7.3.4

必要なクラスライブラリは
jakarta-commonsのconnection poolingのDBCP
JAVABEANS ACTIVATION FRAMEWORK(JAF)

ビルドに必要なので以下もインストールします。
apache-ant-1.5.3-1

PostgreSQL用JDBCドライバも必要です。
ここを参考に作成してください。

PostgreSQLのインストール&設定

PostgreSQLのインストールはいろんなサイトで紹介されていますので割愛させて頂きました。
インストール参考サイト

データベースにデータインポート

ダウンロードしたdata.out.zip(郵便番号のデータです)をPostgreSQLに流し込みます。

 # su - postgres
 % createdb swtclient
 % unzip data.out.zip
 % psql swtclient < data.out

データベース名は"swtclient"ですが、変更する場合は、コネクションプーリングのDBCPのXML設定ファイルがsrcディレクトリに"swtclient.jocl"としてありますので、この中の

 <string value="jdbc:postgresql://localhost:5432/swtclient"/>

の"swtclient"を修正する必要があります。

JDKのインストール&設定

JDKのインストールは、これもまた、いろんなサイトで紹介されていますので割愛させて頂きました。
参考サイト

antのインストール&設定

以下の作業は全てrootで行います。

 cd /usr/local
 tar -zxvf apache-ant-1.5.3-1-bin.tar.gz
 ln -s apache-ant-1.5.3-1 ant

弊社では /etc/java.env というファイルを用意して CLASSPATH や java関連のコマンドパスを設定しています。 その /etc/java.env に 以下の行を追加します。

  1. export ANT_HOME=/usr/local/ant
  2. export PATH=$PATH:$ANT_HOME/bin

設定が終わったら

 source /etc/java.env

もしくは

 . /etc/java.env

とやって設定を読み込みます。

Axisのインストール&設定

以下の作業は全てrootで行います。

 cd /usr/local
 tar xfz axis-1_1-src.tar.gz
 ln -s axis-1_1 axis

SSLなどを組み込みたい場合などは、再度ビルドしなければ使えませんのでその場合は再度ビルドしてください。

Jettyのインストール

 cd /usr/local
 tar xfz Jetty-4.2.12.tar.gz
 ln -s Jetty-4.2.12 Jetty
 cd Jetty

ビルドしてもいいですが、特にデフォルトでも問題ありません。
Log4Jを組み込みたいなどがあれば、extra/libのビルド済みクラスライブラリをカレントのlibディレクトリにコピーして、再起動すれば使えるようになります。

コンテキストの追加

axisという名前のコンテキストを追加します。
<Jettyインストールディレクトリ>/etc/jetty.xml
に追加したいコンテキストを書き込みます。

  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  <!-- Axisの設定                                                      -->
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  <Call name="addWebApplication">
    <Arg>/axis/*</Arg>
    <Arg><SystemProperty name="jetty.home" default="."/>/webapps/axis</Arg>
    <Set name="extractWAR">true</Set>
  </Call>

コンテキストのセット

/usr/local/Jetty/webapps の下に先ほどのAxisディレクトリのwebapps下のaxisを
コピーします。(シンボリックリンクでも可)

jetty.shに実行属性を付与

ビルド時、Jetty起動・停止 スクリプトであるjetty.shは実行属性がついていないので

 chmod 755 jetty.sh

とやっておきます。

Jettyの起動

 jetty.sh start

Axisの起動確認

インストールしたサーバーのURLがfoo.hoge.jpだと仮定すると、Axisサーバーの起動確認は、

 http://foo.hoge.jp:8080/axis/

です。こんな画面がでるはずです。
起動画面が表示されない場合は、Jettyの設定もしくは何かクラスライブラリが足りない可能性が大ですので、チェックして見てください。
続いて、この起動画面のページにあるValidateと言うリンクをクリックします。
Axisに必要なクラスライブラリがちゃんとAxisで見つけられたか確認できます
ちなみに"xmlsec.jar"と言うファイルが無いと表示されますが、XML Securityを使わなければ無視しても問題ありません。

サンプルプログラムのインストール(サーバー側)

サンプルプログラムを展開します。

 % unzip swtclient.zip

※サンプルプログラムは、サーバーとクライアントが一つのパッケージに同梱しています。できればLinuxにsambaを立ててWindows及びLinuxで共有できるディレクトリにこのサンプルプログラムを展開した方が開発しやすいです。

サンプルプログラムには、ビルドしたクラスファイルをbinディレクトリとしてパッケージングしてありますので、 そのディレクトリにクラスパスを通します。上記のjava.envに追加するのが簡単です。

srcディレクトリにある以下のファイルをbinディレクトリにコピーしてください。

 swtclient.jocl
 examples_layout.properties

クラスパスが通っているところにあれば問題ないです。

次に、AxisにこのWebサービスをデプロイします。
WSDDファイルはサンプルプログラムを展開するとWSDDディレクトリの下にdeployと言うファイルがあります。

 #java org.apache.axis.client.AdminClient WSDD/deploy
 Processing file deploy
 <Admin>Done processing</Admin>

Jettyを再起動(rootで/usr/local/Jetty/bin/jetty.sh restart)します。
先ほどの起動確認画面に、Viewと言うリンクがあります。これをクリックするとこのWebサービスが正常にデプロイされたかどうか確認できます。

これでサーバー側の準備は完了です。

インストール(クライアント側)

クライアントプログラムは、WindowsのEclipseから起動することを前提で記述します。単体として起動させる場合は、InstallAnywhere?などのソフトが必要です。

サンプルプログラムの展開

Windowsのローカルディスクに展開しても問題ないですが、開発効率をアップさせるために、サーバーでsambaを立てて共有したディレクトリに展開することをお勧めします。
ですので、サーバー側で展開していればここの展開作業は必要ありません。Windowsでsambaの共有ディスクをマウントするだけです。

Eclipseにサンプルプログラムをインポート

sambaの共有ディレクトリに展開されている"SWTClient"と言うディレクトリを利用します。
Eclipseの「ファイル」メニュー->「新規」->「プロジェクト」で表示されたパネルで、Javaプロジェクトを選択し、「次へ」
次の画面で、プロジェクト名を"SWTClient"とし、プロジェクト内容をsambaの共有ディスクに展開された"SWTClient"を設定し、「終了」ボタンをクリックします。
最後に、そのプロジェクトのプロパティーパネルから必要なクラスライブラリを追加します。
追加するクラスライブラリは、サーバー側で展開したAxisのlibディレクトリにあるクラスライブラリすべてと、SWTのクラスライブラリを追加します。

追加が終了し、再コンパイルも終了した段階でエラーが無ければOKです。

サンプルプログラムの実行

サンプルプログラムを実行する前に、SOAP通信するサーバーのURLを変更します。
foo.swt.client.soap.SWTProviderConfigLocator?クラスに、URLが埋め込まれていますので、それを変更してください。
準備完了です。Eclipseの「実行」メニュー->「実行」で表示されたパネルのメインタブにSWTClientの設定を行い、「実行」ボタンで実行されます。
こんな画面が表示されるはずです。

最後に

ざーとサーバー側中心に説明しました。省略した部分もあるので分からないところもあると思いますが、是非チャレンジして起動させてください。では。
プログラムを拡張したとか、記述が間違っているとか、何かあればmitsui@lisonal.comまでご連絡ください。


Last-modified: Wed, 23 Aug 2006 18:37:40 JST (3927d)
Copyright 2003 LISONAL,LTD. All rights reserved.
"PukiWiki" 1.3.4 Copyright © 2001,2002,2003 PukiWiki Developers Team. License is GNU/GPL.
Based on "PukiWiki" 1.3 by sng